编辑器之神vim简单使用与配置

作者: 1deb709ba126 | 来源:发表于2018-08-27 11:01 被阅读66次

    为何要写本文
    最近看了很多网络上面的评论都是"骂"vim,我就笑了(虽然我只是小学生),vim你不懂用就不要骂好不好,居然还看到了windows下的默认的文本编辑器比vim好的评论……这个骚操作实在是┐(´-`)┌
    vim很难用,是的是这样的,但是本文就是帮助小白入门的,最后还会讲一下neovim这个vim的改版
    ps.本文所有图片使用termux或者ssh链接kali做演示(懒,不想开电脑)
    这里引用csdn上面一位大佬的原话


    一些人勇敢地拾起了Vim或Emacs,却发现学习曲线陡峭而漫长,于是在没发现它们的强大之前就放弃了,说:太难用了,把键盘当鼠标用的烂玩意,有什么好的?
    还是有一些人留下来了,坚定地守护着这两大神器。一些说葡萄太酸的人想离开又不甘心,总是问:它们到底神在哪里啊?我不禁想起了李宗盛的几句歌词::
    有人问我你究竟是哪里好,
    这么多年我还忘不掉?
    春风再美也比不上你的笑,
    没见过你的人不会明了。
    也许你不会明了,我还是要努力讲一讲。


    安装vim
    使用apt的linux(kali,ubuntu……)下

    apt-get install vim
    

    termux下

    pkg install vim
    

    arch下

    pacman -S vim
    

    windows下
    没有别问我为什么,不用windows
    安装好vim之后我们可以开始搞vim的配置了
    没有各种插件的vim大概就是这样

    默认vim
    当然我这里打开的就是vim的配置文件vimrc
    我们当然不使用默认的,当然在这之前我们应该先简单了解vim
    上图那个就是命令模式有些不是这么叫随意
    知道就行了
    ps.vim的命令是如此之多,这里只是讲最简单的,其余的可以自行百度

    使用vim也是超简单的

    vim filename
    

    以下是常用的几个命令:

    • i 切换到输入模式,以输入字符。
    • x 删除当前光标所在处的字符。
    • : 切换到底线命令模式,以在最底一行输入命令。

    然后按下i试试

    编辑模式
    如图在这个模式下你可以随意修改文件
    然后怎么保存?
    在输入模式中,可以使用以下按键:
    • 字符按键以及Shift组合,输入字符
    • ENTER,回车键,换行
    • BACK SPACE,退格键,删除光标前一个字符
    • DEL,删除键,删除光标后一个字符
    • 方向键,在文本中移动光标
    • HOME/END,移动光标到行首/行尾
    • Page Up/Page Down,上/下翻页
    • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
    • ESC,退出输入模式,切换到命令模式

    当然在编辑模式你输入什么都没有用,它都会输入到文本里面(除了esc)
    因此我们输入esc又会回到普通的那个模式了
    然后按:就会是下图这样


    底线命令模式

    这里有几个命令需要记一下

    • u撤销本次操作
    • q退出
    • w保存
    • q!强制退出不保存
    • wq保存退出

    这些基础差不多了解了可以着手vim的配置了,配置一个能称得上编辑器之神的vim
    vim为何强大?

    1.无敌的可扩展性

    1. 特立独行的魅力
    1. 黑客的编辑器

    下面我们就开始配置vim
    配置vim从vimrc文件开始,一般做法不是修改vimrc而是在HOME目录下建一个.vimrc隐藏文件然后source一下就行了
    那还等什么let's go.开始我们的vim配置之旅

    cd
    vim .vimrc
    

    然后一片空白
    我这里给出部分语法,先有心理准备,其实不用把握全部的github上面已经有很多人把配置好的拿出来分享

    " 这是注释,vimscript中单个双引号后面的是注释
    set nocompatible " 关闭 vi 兼容模式
    syntax on " 自动语法高亮
    set number " 显示行号
    set mouse=a " 使用鼠标
    set cursorline " 突出显示当前行
    set ruler " 打开状态栏标尺
    set shiftwidth=4 "
    set softtabstop=4 "
    set tabstop=4 " 设定 tab 长度为 4
    set nobackup " 覆盖文件时不备份
    set autochdir " 自动切换当前目录为当前文件所在的目录
    set backupcopy=yes " 设置备份时的行为为覆盖
    set ignorecase smartcase " 搜索时忽略大小写,但在有一个或以上大写字母时仍保持对大小写敏感
    set nowrapscan " 禁止在搜索到文件两端时重新搜索
    set incsearch " 输入搜索内容时就显示搜索结果
    set hlsearch " 搜索时高亮显示被找到的文本
    set noerrorbells " 关闭错误信息响铃
    set novisualbell " 关闭使用可视响铃代替呼叫
    set t_vb= " 置空错误铃声的终端代码
    set showmatch " 插入括号时,短暂地跳转到匹配的对应括号
    " set matchtime=2 " 短暂跳转到匹配括号的时间
    set magic " 设置魔术
    set hidden " 允许在有未保存的修改时切换缓冲区,此时的修改由 vim 负责保存
    set guioptions-=T "
    set guioptions-=m " 隐藏菜单栏
    set smartindent " 开启新行时使用智能自动缩进
    set cmdheight=1 " 设定命令行的行数为 1
    set laststatus=2 " 显示状态栏 (默认值为 1, 无法显示状态栏)
    set statusline= %
    " 设置在状态行显示的信息
    set foldenable " 开始折叠
    set foldmethod=syntax " 设置语法折叠
    set foldcolumn=0 " 设置折叠区域的宽度
    setlocal foldlevel=1 " 设置折叠层数为
    

    这些其实不需要把握,只是放出来看看,关于vimrc文件配置可以在github上面找到哦
    vim插件
    要想使用vim的插件,我们还是使用vim的插件管理器vim-plug(vundle这些插件管理器其实也差不多)
    安装方法超级简单,如下

    curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
        https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
    

    这里我摆出vim-plug的作者在github上面的实例代码吧(写在.vimrc文件中)注意观察怎么写的

    set nocompatible 
    filetype off
    " Specify a directory for plugins
    " - For Neovim: ~/.local/share/nvim/plugged
    " - Avoid using standard Vim directory names like 'plugin'
    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()
    

    按照上面的格式写好之后可以开始安装插件了,如果还是看不懂,看看下图吧下图还是看不懂可以左上角了(直接写github地址也是可以的,反正我经常这样干)注意:我这里只是演示,为了更高的定制化.vimrc文件中应该有set那些内容


    vim-plug配置

    对了忘记讲了,改好了记得source一下

    source .vimrc
    

    然后打开vim运行

    :PlugInstall
    

    然后大概会是这样


    vim-plug安装插件中

    等出现done就行了,然后可以随意添加插件了
    这里就不推荐哪些插件了,这个看个人喜好
    neovim也差不多并且neovim也是可以使用vim的配置文件的哦这个就自己探索一下吧,个人认为会使用neovim的人不可能不会使用vim,不可能不会使用插件
    另外没有主题的vim(其他的都配置好,目录树,YCM补全,纠错……)大概是这样


    编辑器之神vim简单使用与配置

    相关文章

      网友评论

      • Ricsy:好的
      • 凌屿:这是手机??
        1deb709ba126:@紫枫星 左侧右滑,长按keybroad,termux的食用方法可以参考我另外一篇文章
        Ricsy:这个esc什么按键怎么出来的
        b98e6662e653:对啊,termux

      本文标题:编辑器之神vim简单使用与配置

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