Przy tej operacji użyjemy funkcji writefile oraz getreg, wysłanie bieżącej
linii do innego pliku w tym wypadku oznacza usunięcie linii z bieżącego bufora
i wklejenie jej do innego pliku.
W tym wypadku zostanie zmapowana kombinacja klawiszy <leader>sv, która wyśle
linię do pliku ~/todo/vim.md.
nnoremap <leader>sv :d<cr>:cd ~/todo/<cr>:call writefile(getreg('@', 1, 1), 'vim.md', 'a')<cr>:cd %:p:h<cr>
Możemy wysłać kilka linii do innego pliku używając trybu VISUAL (Shift+v),
także w tym przypadku jest zmapowana ta sama kombinacja klawiszy <leader>sv.
vmap <leader>sv :d<cr>:cd ~/todo/<cr>:call writefile(getreg('@', 1, 1), 'vim.md', 'a')<cr>:cd %:p:h<cr>
PS. Standardowo w edytorze Vim <leader> to klawisz \
| Date: 2020-10-21T19:05:40+02:00 |