Vim ripgrep quickfix netrw nmap autocmd wincmd 。。。大杂烩 ?!

啊,这篇文章就随意一点吧,就意识流地写吧(虽然一直都是这样子),记录一下最近搞 Neovim 的心得 1. 如何使用 nvim + coc 如何滚动悬浮窗口内的内容呢? 使用 nvim + coc 编写代码的时候,弹出来的悬浮窗口内有滚动条,我怎样才能滚动悬浮窗口内的内容呢?试试 ctrl-w ctrl-w 切换到 floatwin 中,再翻页;更顺手一些的操作是:如果触发 floatwin 的按键是 nmap K, 连按两次 K 就会切换到 floatwin 中 👉 https://segmentfault.com/q/1010000040349668 或者直接映射相关的键位,参考官方 Github 的 Readme 👉 https://github.com/neoclide/coc.nvim/commit/ 2. Vim f和t的快捷方式 [ 移动到指定字符 ] 如果我们想在当前行内快速移动,可以使用f, t, F, T命令 “f"命令移动到光标右边的指定字符上,例如,“fx”,会把移动到光标右边的第一个’x’字符上,“F"命令则反方向查找,也就是移动到光标左边的指定字符上 “t"命令和"f"命令的区别在于,它移动到光标右边的指定字符之前,例如,“tx"会移动到光标右边第一个’x’字符的前面,“T"命令是"t"命令的反向版本,它移动到光标左边的指定字符之后 这四个命令只在当前行中移动光标,光标不会跨越回车换行符 可以在命令前面使用数字,表示倍数,例如,“3fx"表示移动到光标右边的第3个’x’字符上 “;“命令重复前一次输入的f, t, F, T命令,而”,“命令会反方向重复前一次输入的f, t, F, T命令,这两个命令前也可以使用数字来表示倍数 👉 https://www.jianshu.com/p/a46a89b460a9 3. 如何在 Vim 里面使用 ripgrep ? 关于这个问题有两种解决思路: 使用 Vim 里面自带的 quickfix...

五月 24, 2023 · 6 分钟 · 1113 字 · HCY

VIM 代码折叠 Folding

VIM设置代码折叠 zc 关闭当前打开的折叠 (也就是重新折叠起来) zo 打开当前的折叠 (也就是展开折叠) zm 关闭所有折叠 (也就是将所有展开的折叠都重新折叠起来) zM 关闭所有折叠及其嵌套的折叠 zr 打开所有折叠 zR 打开所有折叠及其嵌套的折叠 zd 删除当前折叠 zE 删除所有折叠 zj 移动至下一个折叠 zk 移动至上一个折叠 zn 禁用折叠 zN 启用折叠

四月 30, 2023 · 1 分钟 · 28 字 · HCY

VIM 全局搜索目录下所有文件关键词

vimgrep 和 lvimgrep 是 vim 内置的搜索命令,可以处理不太复杂的正则表达式 它们的搜索结果都会放入一个列表里面,grep 和 vimgrep 的搜索结果放在 quickfix list 里,quickfix list 可以使用 :cw 或者 :copen 在 vim 中打开,它的结果可以和所有的vim窗口共享;lgrep 和 lvimgrep 的结果存放在 location list 里,location list 是当前窗口的,可以使用 :lw 或者 :lopen 打开 最妙的是搜索结果在cw或lw展现的时候,可以回车跳转到指定文件的搜索文本的位置 g:代表所有匹配,而不是其中的一行匹配 j:代表vim不会自动跳转到第一个匹配的地方 比如要在当前文件夹下递归所有文件搜索tar或者是zip,就可以这样搜: 1 2 : lvim /\<\(tar\|zip\)\>/gj **/* : lw tip: 使用cword取当前文件光标所在出的文字,.vimrc配置如下: 1 map <F3> :execute "lvimgrep /" . expand("<cword>") . "/gj **/*" <Bar> lw<CR> 上述配置完成后,在vim中当前光标下,按下F3就会在vim的当前目录下搜索所有的文件及其子文件夹的文件,并显示出来,还可以使用 %:e 来做,意思是当前目录(%)下的同类型文件(e),如下: 1 map <F3> :execute "lvimgrep /" ....

三月 22, 2023 · 1 分钟 · 93 字 · HCY

VIM 自带的自动补全

VIM 的自带补全是根据上下文出现过的单词作为补全元的,将以下代码加入到你的 init.vim 里面就可以实现 Tab 触发补全以及连续使用 Tab 来进行切换选中补全 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 " Simple tab completion ----------------------------------------------------------------------------- " A simple tab completion, if you use the coc.nvim, you should remove this simple completion inoremap <expr> <Tab> getline('.')[col('.')-2] !~ '^\s\?$' \|\| pumvisible() \ ? '<C-N>' : '<Tab>' inoremap <expr> <S-Tab> pumvisible() \|\| getline('.')[col('.')-2] !~ '^\s\?$' \ ? '<C-P>' : '<Tab>' augroup SimpleComplete autocmd CmdwinEnter * inoremap <expr> <buffer> <Tab> \ getline('....

三月 19, 2023 · 1 分钟 · 114 字 · HCY

Vim => iamcco/markdown-preview.nvim without nodejs

首先是感谢作者的工作,这个是此项目的地址 我使用的是 vim-plug,首先是安装 1 Plug 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() }, 'for': ['markdown', 'vim-plug']} vim-plug 安装完之后,重启 vim ,打开 .vim 或者 .md 文件,手动安装离线版本 1 :call mkdp#util#install()

二月 21, 2023 · 1 分钟 · 26 字 · HCY