Vim秘籍

作者: chenclqqrj | 来源:发表于2017-09-24 19:18 被阅读0次

    删除命令 d D x

    dd / D 删除行

    dw 删除单词

    nd  /  nx 删除n个字符

    ndd 删除n行

    D 删除到行尾

    选取

    v 进入字符可视化模式

    V 进入行可视化模式

    Ctrl+v 进入块可视化模式

    vi{选中{}中间的内容,不包括{}

    va{ 选中{}中间内容,包括{}

    选中()中间内容

    vi< 选中<>中间内容

    vi[ 选中[]中间内容

    vit 选中中间的内容

    vi” 选中”"中间内容

    vi’ 选中”中间的内容、

    vis 选中一个句子

    vib 选中一个block

    viw 选中一个单词

    vip 选中一个段落

    r字符 所有字符替换为新字符

    u U ~ 分别是所有字母变小写、变大写、反转大小写

    “>”和“<" 将选中字符右移或左移 shiftwidth位置

    J 命令可以将高亮显示的文本内容合并为一行,同时以空格来分隔各行。如果不希望在行间插入空格,那么可以使用 gJ 命令。

    在可视化模式下,按下 : 键就可以对选定范围进行操作。例如:我们先在可视化模式下选中文本,然后执行 :write block.txt 命令,就可以将文本块写入另一文件中。选择多行,然后执行 :sort 命令,则可以对选中的文本进行排序。

    目录与配置

      ~/.vim/plugin

      ~/.vim/doc

      ~/.vim/syntax

    ~/.vimrc

    vim有许多可选的插件管理器如Vundle, Pathogen, Vim-plug, VAM,

    安装Vim-plug

    下载Vim-plug并把它放在autoload目录里

    Unix

    curl -fLo ~/.vim/autoload/plug.vim --create-dirs \

        https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

    Neovim

    curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \

        https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

    Windows

    md ~\vimfiles\autoload

    $uri = 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'

    (New-Object Net.WebClient).DownloadFile($uri, $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath("~\vimfiles\autoload\plug.vim"))

    管理插件

    编辑.vimrc(Neovim是~/.config/nvim/init.vim)

    添加vim-plug配置,以call plug#begin()开头,call plug#end()结尾,中间是插件列表,begin可以接受参数指定存放插件的位置:

    " Specify a directory for plugins (for Neovim: ~/.local/share/nvim/plugged)

    call plug#begin('~/.vim/plugged')

    " Make sure you use single quotes

    " Shorthand notation; fetches https://github.com/junegunn/vim-easy-align

    Plug 'junegunn/vim-easy-align'

    " Any valid git URL is allowed

    Plug 'https://github.com/junegunn/vim-github-dashboard.git'

    " Multiple Plug commands can be written in a single line using | separators

    Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'

    " On-demand loading

    Plug 'scrooloose/nerdtree', { 'on':  'NERDTreeToggle' }

    Plug 'tpope/vim-fireplace', { 'for': 'clojure' }

    " Using a non-master branch

    Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' }

    " Using a tagged release; wildcard allowed (requires git 1.9.2 or above)

    Plug 'fatih/vim-go', { 'tag': '*' }

    " Plugin options

    Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' }

    " Plugin outside ~/.vim/plugged with post-update hook

    Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }

    " Unmanaged plugin (manually installed and updated)

    Plug '~/my-prototype-plugin'

    " Initialize plugin system

    call plug#end()

    安装插件

    :PlugInstall

    其他命令

    PlugUpdate:升级插件;

    PlugClean:删除未被使用的插件目录;

    PlugUpgrade:升级Vim-plug自身;

    PlugStatus:查看插件状态;

    更多配置和命令请参考Vim-plug官方文档

    相关文章

      网友评论

          本文标题:Vim秘籍

          本文链接:https://www.haomeiwen.com/subject/drclextx.html