vim命令与使用技巧

vim 查看帮助

:help <C-f> #查看快捷键帮助
:help :call 
:help mkdir()

vim相关知识

  • vim 运行支持文件目录/usr/share/vim/vim8?/(系统文件不建议修改)或$HOME/.vim
  • 导入 vim 配置示例文件(会打开有用的选项:比如语法加亮、搜索加亮、命令历史) source $VIMRUNTIME/vimrc_example.vim
  • 不产生备份文件,将撤销文件放到特定目录,并创建目录
set nobackup
set undodir=~/.vim/undodir
if !isdirectory(&undodir)
	call mkdir(&undodir,'p',0700)
endif
  • 其他设置
set scrolloff=0 #屏幕滚动能到边

命令

命令操作
单个g没有含义
:q!退出
:wq保存退出
: s替换
:e编辑文件
:!执行外部命令
:w写文件
:r读文件
b/w B/WWords Backward/Words forward
R替换模式,直到<Esc>
nG跳转到第 n
gj屏幕的行移动
na/i对多个(层)文本对象操作;比如:c2i{
H/M/L屏幕的顶、中、底
可视模式选中 u/U改变大小写
"+y复制到系统剪切板
<C+R>重做

快捷键

按键操作
Ctrl+w+vvim垂直分割
Ctrl+w+svim水平分割
Ctrl+G显示状态栏
Ctrl+O上一个位置
Crrl+E/Ctrl+Y屏幕滚动
zt、zz、zb屏幕滚动
; , n/N .重复命令

使用Ctrl-D和Tab 进行命令的补全

多行注释

<C-v> 选择多行,按Shift+i,输入//,再按<Esc>

命令模式需要按下 Enter 才算完成

vim 选择模式(Ctrl+g与可视模式切换)

与Windows编辑器行为类似,选择内容后再输入任何内容,将会替换选择的内容。
在选择模式或者可视模式选择一段文本后,通过 Ctrl-g 来切换到另一模式。

set fr?   "显示当前文件类型
set nobackup   "不产生备份文件
set undodir=~/.vim/undodir    "把撤销文件放到特定目录
if !isdirectory(&undodir)  "创建目录,&dodir代表undodir
	call mkdir(&undodir,'p',0700)
endif

语法高亮

  • setfiletype java设置文件类型,进行语法加亮

vim模式来查看帮助文档

:help manpager:查看帮助
.zshsrc添加:export MANPAGER="vim -M +MANPAGER -"

vim 内置终端

命令行为
:term打开内置 vim 终端
C+w+j/k切换窗口
C+w+q关闭窗口
C+ww切换窗口
<C+\><C+n>内置终端切换到正常模式

多文件

命令行为
:args显示参数
args filename替换参数
:next打开下一个文件
:Next/:N/:prev打开上一个文件
:first/:rewind打开第一个文件
:last打开最后一个文件
:autowrite自动存盘
:n|normal ggP切换到下一个文件,并正常模式执行ggP
:ls显示缓冲区列表
:b <filename>切换缓冲区
bd <filename>删除缓冲区,无参数删除当前缓冲区
:bn下一个缓冲区
:bN/:bp上一个缓冲区
:bfirst/:brewind跳到缓冲区第一个
:blast跳到最后一个缓冲区
<C-^>切换缓冲区,1<C-^>切换到第一个缓冲区
:args **/*.cpp **/*.h打开多文件,包括子目录文件

文本操作

  • 精准匹配

:s/\<animal\>/creature/ge//只匹配animal,不匹配animals
e:没有匹配项时不显示错误

YouCompleteMe 的安装

  • apt 安装
sudo apt install vim-youcompleteme
vim-addon-manager install youcompleteme
  • 手动安装
    安装之前,你需要确保你的系统上有 CMake、Python 3 和平台主流的 C++ 编译器,即 Linux 上的 GCC,macOS 上的 Clang,及 Windows 上的 MSVC。因为 YCM 是一个需要编译组件的插件,所以不建议你用 Vim 的包管理器来安装,那样会出什么错都搞不清楚。大致安装过程是:
  1. 选择安装目录签出 YCM根据你需要使用的语言使用合适的选项,来进行编译安装下面
  2. 首先,我们需要给 YCM 一个独立的安装目录。这个目录应该在 pack 下面,但不要放在包管理器使用的目录下,以免发生冲突。
  3. 可以选择是“我的”,my。因为希望 YCM 直接启动,所以最后需要放到这个目录的 start 子目录下。换句话说,Unix 上的 ~/.vim/pack/my/start,Windows 上的 ~\vimfiles\pack\my\start。然后执行
git clone --recurse-submodules \
         --shallow-submodules \
   https://github.com/ycm-core/YouCompleteMe.git
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值