星期六, 四月 27, 2019

VIM学习笔记 在Mac下安装Vim

查询当前安装版本

使用以下命令,可以查看当前系统预装的Vim版本:

vim --version

如下图所示,Mac预装的是不包括图形界面的Vim:

vim-mac

不建议删除或更新系统预装的Vim,而是推荐新安装Vim的Mac实现--MacVim

安装MacVim

MacVim是在Vim基础上实现的完整的Cocoa用户界面。MacVim 采用了分离进程的方式,一个MacVim程序可以启动多个vim 进程,每个显示在一个MacVim窗口中,这是官方的vim和其他平台下的gvim所不支持的。MacVim 还支持很多 Mac OS X 原生的界面特性,比如工具栏、滚动条、全屏显示、Mac 菜单快捷键的绑定等。

首先下载镜像文件,然后将程序拖拽到应用程序中即可完成安装。

双击MacVim图标,即可启动程序:

MacVim GUI

在MacVim中使用以下命令,可以查看详细的版本信息:

:version

如下图所示,已经安装了包括图形界面的MacVim:

MacVim

基本配置

首先在HOME目录之下,创建.gvimrc文件;或者将安装目录下的示例文件/usr/share/vim/vim80/gvimrc_example.vim复制到用户目录之下并更名为~/.gvimrc

然后依据安装目录/usr/share/vim/vim80的目录结构,在用户目录下的.vim目录中创建一致的目录结构;

vimfiles_directory

从命令行启动MacVim

在Terminal中输入/Applications/MacVim.app/Contents/bin/mvim filename或者open -a MacVim filename命令,可以从命令行打开MacVim。

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>

星期五, 四月 26, 2019

VIM学习笔记 前缀键(leader)

Vim预置有很多快捷键,再加上各类插件的快捷键,大量快捷键出现在单层空间中难免引起冲突。为缓解该问题,而引入了前缀键<leader>。藉由前缀键, 则可以衍生出更多的快捷键命名空间(namespace)。例如将r键配置为<leader>r<leader><leader>r等多个快捷键。

使用:help <leader>命令,可以查看关于前缀键的更多信息。

定义前缀键

前缀键默认为“\”。使用以下命令,可以将前缀键定义为逗号:

let mapleader=","

使用以下命令,利用转义符“\”将前缀键设置为空格键也是不错的主意:

let mapleader = "\<space>"

配置实例

定义以下快捷键,用于删除当前文件中所有的行尾多余空格:

nnoremap <leader>W :%s/\s\+$//<cr>:let @/=''<CR>

定义以下快捷键,用于快速编辑和重载vimrc配置文件

nnoremap <leader>ev :vsp $MYVIMRC<CR>

nnoremap <leader>sv :source $MYVIMRC<CR>

定义以下快捷键,使用前缀键和数字键快速切换缓冲区

nnoremap <leader>1 :1b<CR>

nnoremap <leader>2 :2b<CR>

nnoremap <leader>3 :3b<CR>

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>

星期六, 四月 06, 2019

VIM学习笔记 文件浏览器(Netrw)

在vim 7.0之前,文件浏览功能由explorer.vim插件提供;从vim 7.0之后,这个插件被netrw.vim插件所代替。Netrw插件伴随vim发行,不需要单独安装。

启动

使用:Explore命令或缩写:E命令(注意E大写),将在当前窗口中打开文件浏览器:

Explore

使用:Sexplore命令或缩写:Sex命令,将在水平拆分窗口中打开文件浏览器:

使用:Vexplore命令或缩写:Vex命令,将在垂直拆分窗口中打开文件浏览器:

当然,也可以在启动Netwr时,指定浏览特定的文件夹:

:Sex C:\Temp

打开文件

在Netrw中,可以切换目录并打开文件。使用键盘移动光标至文件或文件夹名称上,然后点击Enter回车键,可以在当前窗口中打开该文件或文件夹;如果希望在新建窗口中打开文件或文件夹,那么可以点击o键。

直接使用鼠标点击文件或文件夹名称,也可以在当前窗口中打开该文件或文件夹。

点击/键,可以在文件列表中进行查找。

Explore_Search

改变盘符和目录

通过编辑目录,可以使用Netrw来浏览该文件夹:

:edit E:\_ToDo

排序

通过设置g:netrw_sort_by和g:netrw_sort_direction,可以按照最近修改时间来进行排序:

let g:netrw_sort_by = 'time'

let g:netrw_sort_direction = 'reverse'

重命名

点击大写R键,然后修改窗口底部信息中的第二个文件名,可以重命名当前光标下的文件。

Explore_R

删除

点击大写D键,然后在窗口底部信息中进行确认,则可以删除当前光标下的文件。

Explore_D

配置文件打开方式

默认情况下,Netrw将在当前窗口中打开文件。 使用以下命令,可以配置Netrw打开文件的方式:

let g:netrw_browse_split = n

其中,参数的值可以为以下四种:

  1. 用水平拆分窗口打开文件
  2. 用垂直拆分窗口打开文件
  3. 用新建标签页打开文件
  4. 用前一个窗口打开文件

定制外观

点击i键,可以在thin/long/wide/tree这4种显示模式之间切换。也可以在vimrc配置文件中,使用以下命令来设置显示模式:

let g:netrw_liststyle = 3

点击I键,可以显示或隐藏Netrw顶端的横幅(Banner)。例如以下命令,将隐藏横幅:

let g:netrw_banner = 0

使用以下命令,可以设置文件浏览器的宽度,为窗口的25%:

let g:netrw_winsize = 25

通过以上配置,我们可以得到通常IDE环境的文件显示效果:

Netrw

退出

使用:q命令,可以退出当前的Netrw;如果Netrw是唯一打开的窗口,那么将同时退出Vim。

我们可以将Netrw理解为,使用编辑命令对于目录进行操作的特殊缓冲区。也就是说,我们可以使用:bdelete命令,来关闭Netwr打开的缓冲区,但不会退出Vim。

帮助信息

Netrw不仅可以浏览本地文件,还支持远程文件的读写。你可以通过ftp,ssh,http等多种协议来浏览远程机器的目录并编辑远程文件。

如果你使用图形界面的GVim,那么也可以通过菜单来使用Netrw的功能:

Netrw menu

在Netrw中点击F1键,或者使用:help netrw命令,可以查看更多帮助信息。

命令小结
:Explore在当前窗口中打开文件浏览器
:Sexplore在水平拆分窗口中打开文件浏览器
:Vexplore在垂直拆分窗口中打开文件浏览器

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>