Modern-Vim-Notes

Introduction

:help key-notation 中可以查看键名.

默认的 key 是 \.

Neovim 可以用 :terminal 进入 TERMINAL 模式. 其会打开一个 terminal buffer.

set nocompatible 意思就是不兼容以前的版本.

检查 filetype detection 已经打开:

1
:filetype

CHAPTER 1 Get Modern Vim

$VISUAL 这个变量设为 nvim, 可以让所有默认用 vim 的程序改用 nvim.

查看 :help base-directories 可以查看一些默认目录的位置.

对于 neovim 有两个比较重要的变量:

  • VIMCONFIG, 一般设为 ~/.config/nvim
  • VIMDATA, 一般设为 ~/.local/share/nvim

在 Neovim 中, 可以同时提供 Python2 和 Python3.

如使用 Python3:

1
:py3 print('hello')

Neovim 用 providers 来 implement 一些 features.

可以用 +* 这两个寄存器来和系统的 clipboard 互动.

安装 neovim-remote, 这个工具可以让你远程操控 neovim 进程, 其需要 Python3 支持:

1
$ pip3 install --user --upgrade neovim-remote

这个工具在命令行下使用是 nvr:

1
$ nvr -h

CHAPTER 2 Installing Plugins

command! Hello call SayHello()

这里, command! 这个命令的作用是创建一个命令. 单纯的运行 :command 这个指令会列出所有的用户定义的命令. 可以和 :filter 这个命令配合, 如 :filter Coc command 就会显示所有带 Coc 的命令. 加一个 ! 的作用是可以 重定义 即覆盖掉之前的定义.

可以用 :source 来加载 script:

1
:source code/hello.vim

每下载一个 plugin, 就需要将其添加到 Vim’s runtimepath 中.
如:

1
:set runtimepath+=$VIMCONFIG/arbitrary/demo-plugin

:h 的文档中跳转, 按下 <C-]> 跳转到指定的 anchor, 按下 <C-o> 跳回.

使用 :helptags ALL 将创建所有插件的 documentation, 到你的 :help 界面.

CHAPTER 3 Opening Files

:edit 命令可以简写为 :e.

:vsplite 命令可以简写为 :vs.

关于 fzf 工具, 在找到匹配项后, 按 <C-v> 可以在另一测打开文件. <C-x> 是 horizontal, <C-t> 是新的 tab 中打开.

fzf 默认是用 find . -type f 来查找文件, 可以利用 FZF_DEFAULT_COMMAND 这个环境变量来更改.

使用 :buffer {bufname} 可以在 buffer 之间跳转.

CHAPTER 4 Working with the Quickfix List


Modern-Vim-Notes
http://example.com/2022/09/18/Modern-Vim-Notes/
作者
Jie
发布于
2022年9月18日
许可协议