PDFs can be compiled using rmarkdown by invoking <leader>c, or C to open
the file (which pauses vim however). The best workflow is to open the
pdf manually in something like zathura, which will auto-update when the
document is newly compiled.
In vim:
Use <leader>c to insert a bibtex reference in your text. By default it
is a pandoc reference (@bibref), but it can be changed to latex style
(\cite(bibref)). <leader>CM inserts a pretty-printed reference to the
selected work, using markdown styling. If you want to insert a citation
while writing, use @@ from insertmode to insert the bibref instead.
The settings add two commands: :CiteRef and :CitePretty which call the
respective functions. You can pass any amount of .bibtex libraries to
the commands and they will be available to fuzzy search through.
:CiteEdit also added to fuzzy find a source and open it in vim for editing.
The function is not working yet, I have to find a way to go from the
fuzzy finder to papis, select the correct file and edit it in vim.
In Shell:
Can cd directories (d, D), open files (f, F), open most recently used
(ru), and edit bibtex references (ref). lowercase is a weighted view
over previously used directories/files, Uppercase is a search of the
whole file structure.
Still outstanding:
Needs the same comfort function additions as vim search, especially
reference search. (i.e., open corresponding document, yank path, open
editor,...)
<leader>O to enable spellchecking for current buffer,
<leader>o to show suggestiong for word under curser.
(Try it out here, just hover over misspelled cursor!)
Will recursively look for `*.bats` files and run them with bats-core test suite. Simple sample unit tests for existing scripts are included in `.config/shell/rc.d/test`.
vim-go already provides the linting necessary for golang. Using
golang-ci additionally only complicates matters and provides no benefit.
Additionally, it did not seem to be able to track files other than the
one in the current buffer, or those open in hidden buffers and would
show (false) errors of classes or functions not found even when they
existed.
Italicizes comments and anything which should be italicized in text
(e.g. markdown *star-surrounded* words). Might lead to errors in ssh
connections, will have to test.
Switch fuzzy opening of buffers to <leader>f, and set opening files in
work directory to <leader>F. Switching these two is intended to allow
easier access to buffer switching, which I use much more often than file
access, especially when working over a longer time-frame in vim.
HACK HACK HACK
The default keybinds for wiki.vim are now kept, only removing the ones
that I don't need. For now, since wiki.vim does not seem to allow empty
strings being passed as its keybinds (in order to remove them by
overwriting with empty), it just assigns bogus binds with
<leader>== and an arbitrary number of === following.
Use <leader>wf from anywhere to fuzzysearch a phrase over the notes. If
no initial input is given loads all files into the interactive
fuzzysearch. Use <leader>wF to load a more detailed, full-screen windows
(via CtrlSF) which allows direct editing of results and more.
Only keep some of the default vimwiki mappings, since the rest I don't
really need (currently) and they interfere with some other operations I
intend to map (e.g. <leader>wf should fuzzysearch wiki but will toggle a
link when overwritten by the defaults).
Can be set through environment variable WIKIROOT. By default points to
~/Nextcloud/Notes/ but is kept configurable for each computer. Will be
picked up by vim wiki plugin to enable wiki functionality for the
respective directory.
Adds full-text search with CtrlSF vim plugin. Activated via
<leader>wf, to spell wiki-find (mirrors <leader>ww for wiki-index).
Optimizations can certainly be done.
* set up beggining/end of line with H/L
* set surround current word/visually selected word with <leader>"
* set text expansion for @@ marty.oehme@gmail.com - email
* set text expansion for ccopy - copyright notice
* set common typos autocorrection