IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    vim-notes

    Xiang Chao (cloudaice@163.com)发表于 2012-02-04 00:00:00
    love 0
    • 对vim的爱恨

    date:2012-02-04 10:09

    也算是接触vim一年多了吧,开始使用的时候,就是感觉它是一个很神奇,很有技术感的东西。让人一看到这嘿嘿的屏幕就觉得是个“高手”,于是也想向着这个方向走,可视刚刚使用的时候 真的不会觉得它给我的编辑带来了多少好处,反而不如使用正常的记事本。但是“高手”的幌子指引着我坚持使用了一段时间。然而唯一习惯了的就是j,k,h,l, 于是在用其它编辑器的时候,也总是想要用这些键来上下滚动。或许到那个时候用vim不算是阻碍我编辑东西了把。但是这就想是冰山一角,各种各样的插件海了。 往往人都是不满足于现在所有的,不像刚接触vim的时候一样,只要能够像使用记事本一样熟练使用它就已经心满意足了。于是就想配置各种插件。这些配置过程就不说了,网上的教程一搜就是一大堆,不过这中间的“磨难”每个人的体会都会是不一样。那些功能各异的插件能够用了,于是也就是这么用着了。可是里面是什么原理呢?一直都没弄明白。每次重装系统后, 都是无脑的照着教程配置。这样一遍下来每次都会话费我很多时间。尤其是对它们之间的关系不时那么了解,一旦有错误之后就傻了……,每次都很绝望,就像是被人告诉一点,然后就知道一点,接下来就不知道干什么了。有一次在一个邮件列表里面发帖询问各位大神都是怎么学习vim配置的?唯一的回答是你用的不够多。这对于初学者,真的是毫无回答之力啊, 很多时候,我们在学习一个新的知识的时候,总是会碰到这样的话“你就用好了,不用管那么多”。我不知道这样的话应该怎么理解。反正导线在为止,我都不赞同这种观点, 尽管很多时候因为这样吃亏,花费很多时间去寻找,但是收获却很小。算了,这个问题以后再说吧……

    • 配置vim

    今天重新去找到这篇教程一点一点的看着,把自己的vim又重新的配置了一遍。这我有个想法:就是把这些配置文件用git管起来,然后再托管到github上面。然后最好再自己写一个脚本。以后要重新配置,直接运行一个脚本就OK了。想到这里,可能很多时候我们在linux系统下面工作效率很低,可能是因为我们没有好好理解unix的文化。

    • 1 安装gvim,

    在终端里面,直接apt-get就行,缺少什么的话,系统自动都会提示你的。照着说的额安装就好了。gvim是gnome下的一个gui。看着比较舒服。安装完整以后在终端输入

    $ gvim
    

    这里可能会有一个问题,就是打开的界面菜单栏会是乱码,这是由于utf8和utf-8不同而引起的,可以通过一下两条命令解决

    $ cd /usr/share/vim/vim72/lang
    $ sudo ln -s menu_zh_cn.utf-8.vim menu_zh_cn.utf8.vim
    
    • 2 配置文件简单介绍

    其实我自己到现在也不知道里面细节到底是怎么回事,但是,至少这样子就是可以用了。 建立以下文件

    $ cd
    $ mkdir .vim
    $ cd .vim
    $ mkdir plugin
    $ mkdir doc
    $ mkdir syntax
    $ touch .vimrc
    

    第一条命令是为了切换到你的用户当前目录,以上几条命令只是为了创建几个文件和目录,以便在安装插件的时候可以用到,如果这些文件和目录都已经有了的话,就不用了。.vimrc是vim的配置文件。这个配置文件的作用范围就是只对当前用户有效。.vim这个目录可以理解为存放插件用的,其中doc文件用于存放插件的帮助文件。plugin是用来存放插件内容的。一般都是以.vim结尾。syntax是存放字体高亮方案的目录.OK,就这些,接下来就是往里面放东西了.

    • 3 设置.vimrc文件

    很多时候照着参数写.vimrc文件是一件很费时间的事情,不小心写错了还要检查,所以以后要是有一个顺手的话,就自己备份一下比较方便,下面我自己的.vimrc文件

    "设置TAB键为4个空格
    set tabstop =4 
    "显示行号
    set number 
    "set autoindent "回车自动缩进
    
    "关闭vi兼容模式
    set nocompatible 
    "自动语法高亮
    syntax enable
    syntax on 
    "自动检测文件类型
    filetype on 
    "检测文件类型插件
    filetype plugin on 
    "上下可视行数
    set scrolloff=6 
    "设置删除建可以一次删除4个空格
    set softtabstop=4 
    "搜索的时候忽略大小写
    set ignorecase
    "当有一个字母是大写的时候,大小写敏感 
    set smartcase 
    
    "设置配色方案
    colorscheme desert 
    "显示括号配对情况
    set showmatch
    " 选中状态下 Ctrl+c 复制
    vnoremap  "+y
    
    "if has("gui_running")
    "    set guioptions-=m " 隐藏菜单栏
    "    set guioptions-=T " 隐藏工具栏
    "    set guioptions-=L " 隐藏左侧滚动条
    "    set guioptions-=r " 隐藏右侧滚动条
    "    set guioptions-=b " 隐藏底部滚动条
    "    set showtabline=0 " 隐藏Tab栏
    "endif
    
    "设置启动窗口位置,前一个数字是X轴,后一个数字是Y轴
    winpos 480 64 
    "设置窗口大小,行和列
    set lines=28 columns=108  
    "自动与上一行跟从缩进
    set autoindent  
    
    "用空格键来开关折叠
    set foldenable
    set foldmethod=indent
    nnoremap  @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')
    
    "set guifont=Courier\ News:h10 "设置字体方案
    "set guifont=News:10 "设置字体方案
    "set guifont=Courier\ 10 "设置字体方案
    "set guifont=Monospace\ 12 "设置字体方案
    "set guifont=Yahei\ Consolas\ Hybrid:h10"设置字体方案
    "set guifont=Bitstream\ Vera\ Sans\ Mono\ 12"设置字体方案
    
    set modeline 
    
    "pydiction 1.2 python auto complete
    "filetype plugin on
    let g:pydiction_location = '~/.vim/plugin/complete-dict'
    "defalut g:pydiction_menu_height == 15
    "let g:pydiction_menu_height = 20
    
    set mouse=a
    filetype plugin indent on
    set completeopt=longest,menu
    autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
    autocmd FileType python set omnifunc=pythoncomplete#Complete
    
    "set the taglist
    let Tlist_Show_One_File=1
    let Tlist_Exit_OnlyWindow=1
    
    "set winmanage
    let g:winManagerWindowLayout='FileExplorer|TagList'
    nmap wm :WMToggle
    
    • 4 复制插件 将complete-dict minibufexpl.vim python_pydiction.vim taglist.vim winfileexplorer.vim winmanager.vim wintagexplorer.vim复制到plugin目录下面,其中complete-dict是一个针对python的插件,和python_pydiction.vim是连在一起用的,在.vimrc中有说明部分

    把python.vim复制到syntax,这是一个针对python的代码高亮插件

    把taglist.txt winmanager.txt复制到doc下面。

    还有一个需要安装一下,去这里下载一下ctags-5.x.tar.gz的压缩包,然后执行下面命令

    $  tar -xzvf ctags-5.6.tar.gz
    $ cd ctags-5.6
    $ ./configure
    $ make
    $ sudo make install   
    

    一切OK,基本上一个python的vim环境就可以用了,文中提到的除了ctags要自己下,其他都放在github上了。



沪ICP备19023445号-2号
友情链接