aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Shi2022-10-31 06:29:28 +0000
committerJoey Shi2022-10-31 06:29:28 +0000
commit307dcac31ed317b9f8439bcb766fa599e6c4efa7 (patch)
treeec723414b5fd4a1b80e4d33f06f018cf403ef5bd
parent6f19316d1f4213771cde72ca2fb17c4f8bd4b9f5 (diff)
very cool vimscript
-rw-r--r--entries/joeyshi12/vimscript/fib.vim28
-rw-r--r--people.json13
2 files changed, 40 insertions, 1 deletions
diff --git a/entries/joeyshi12/vimscript/fib.vim b/entries/joeyshi12/vimscript/fib.vim
new file mode 100644
index 0000000..b385049
--- /dev/null
+++ b/entries/joeyshi12/vimscript/fib.vim
@@ -0,0 +1,28 @@
+" Add me to your .vimrc :]
+
+function! Fib(n)
+ if a:n == 0
+ return "0"
+ elseif a:n == 1
+ return "0,1"
+ endif
+ let sequence = "0,1"
+ let prev = 0
+ let curr = 1
+ let iter = 2
+ while iter <= a:n
+ let curr = prev + curr
+ let prev = curr - prev
+ let sequence .= "," . curr
+ let iter += 1
+ endwhile
+ return sequence
+endfunction
+
+function! AppendFib(n)
+ execute "normal! i" . Fib(a:n) . "\<Esc>"
+endfunction
+
+" Map AppendFib to \fib
+:command! -nargs=1 AppendFib :call AppendFib(<q-args>)
+nnoremap <Leader>fib :AppendFib<Space>
diff --git a/people.json b/people.json
index 990e755..f94b452 100644
--- a/people.json
+++ b/people.json
@@ -608,5 +608,16 @@
"link": "./entries/timstr/fib.cpp"
}
]
- }
+ },
+ {
+ "github": "joeyshi12",
+ "name": "Joey Shi",
+ "title": "MSc, UBC",
+ "entries": [
+ {
+ "name": "vim",
+ "link": "./entries/joeyshi12/vimscript/fib.vim"
+ }
+ ]
+ }
]