zoukankan      html  css  js  c++  java
  • vundle的安装

    git的使用跟yum 有点类似? git makes software development more collaborative(合作的).

    这是unix/linux中的一种软件/项目/文件的管理思想, 这种"仓库"的思想很好! 就避免你到处去寻找/安装软件, 而且还附带提供依赖性管理, 安装/卸载/更新软件, 安装更快捷,卸载更完全等优点, 这一切通过 仓库中的index索引文件...

    git更是给开发者/用户自己来创建/管理 "文件/项目仓库"的一个工具, 通过仓库(可以看作是服务器), 可以管理客户端的操作: 从仓库clone, 从仓库查询项目/文件

    信息/版本变化, 合并, 从客户端登录删除仓库文件等.

    usage:  git [options] command [args], the most commonly used git commands are:

    clone /init , branch, tag, log, fetch, commit,diff,  push, pull, merge, mv, show, status, add, bisect

    step1: git clone https://github.com/gmarik/vundle.git(项目?)   ~/.vim/bundle/vundle

    step2: configure /etc/vimrc, make it include rtp(runtime path, 插件下载的位置?) and 需要的插件

    step3: 在vim中执行:BundleInstall命令等...

    --------------- 随着vundle项目的发展, github上的配置有新的, 原来的配置, 只要用起来就行,推荐用github说的最新的...

    vim-scripts: 是属于github.com的,专门用于托管vim插件的(vundle用的), 跟www.vim.org不同的!  (response: 反应,回应; sponsor: 发起者,倡议者)

      vundle的vim-scripts仓库就是指 放在 https://github.com/vim-scripts/下的vim插件

      (html重要的确实是内容, 格式的话不会过分, 只是一个基本点: 分block 分section, 格式的话按内容依次摆放就ok了,不追求高底长短大小相同的)

      (要从github上"下载"某个项目的文件: 在页面的右中部,可以用git clone... 地址会给出来的,如: https://github.com/(仓库)文件或项目地址/文件或项目名称.git

        如: https://github.com/vim-scripts/taglist.vim.git, https://github.com/VundleVim/Vundle.vim.git, 或者直接点击download Zip)

    -----------------------------------------------------------------------------

     配置文档举例:

    set nocompatible
    filetype off

    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()
    Plugin 'VundleVim/Vundle.vim'

    Plugin 'taglist.vim'
    Plugin 'OmniCppComplete'
    Plugin 'AutoComplPop'
    Plugin 'c.vim'
    Plugin 'supertab'
    Plugin 'scrooloose/nerdtree'
    Plugin 'winmanager'
    Plugin 'minibufexplorerpp'
    Plugin 'snipMate'

    call vundle#end()
    filetype plugin indent on

    --------------------------------------------------------

    snipMate的用法

    只有有个补齐键: tab

    在snipMate/snippets/下去定义你自己的*.snippets文件, ${1}表示光标跳转的位置, 中间可以混合其他默认提供的值:${1:some_default_value},

    而且在snippet中可以提供前后回溯: ${3:some_text $2} : 查看文件中有哪些snippets: <C-R>tab: 是大写的R, 用ctrl+shift+r

    (英语中有a这个短音, ^音读呃: knowledge: nalidg, to my knowledge, there is no such 'idiom=dialect方言/土话/成员in English

    considerable:~rably:  very great/very many much /very big/相当的,可观的/地...)

    (vim 直接支持*.txt.gz, 要注意, 要想在help帮助中实现跳转, 必须在同目录下有一个tags标签文件, 记录这些跳转位置, 格式: tagname   certain.txt.gz  /*certain_tag*, 事实上, 只要你在 tag标签文件中, 加上你自己的customize 自定义标签, 然后在帮组文件中写上 my_customize_tag  *certain_tag*就可以在help certain_tag中实现标签的跳转)

    (changes not allowed, modifiable is off:  set ma)

    minibufexplorer的用法

    从逻辑上它始终只占一行, 即使你看起来"折行"了,

    要将光标移到minibuferexplorer窗口后,才能使用tab, shift+tab, enter, d键, 所以它更多的是一种对buffer的直观显示(explorer的意思本来就是"浏览查看"的意思)

    实际操作buffer,反而通过命令更快:bn, bp, badd, bd=bdel=bdelete, 增加buffer直接:e foo.cc就好了. minibufexplorer的显示是自动的.

    NERDTree的用法

    命令一定是:NERDTree, 才能打开目录树窗口视图, 前面的几个字母一定是大写的

    可以用?来显示帮助, 其中要区分file mapping, directory mapping, 和filesystem mapping, 虽然都是o, 但是文件的o和目录的o是不同...

    注意文件系统的mapping: C, cd, CD , u U, r R, m(对文件和目录的菜单操作) 和目录的mapping要结合起来使用...

    winmanager的用法

    要使winmanager自动启动加上: let g:AutoOpenWinManager = 1

    nmap wm  :WMToggle<CR>表示在normal下键入wm命令(注意不用再加冒号:)

    (vim插件的 "命令/函数", 在ex命令:后, 可以/支持tab补齐和自动提示, 区分大小写)

    (使用tab在gnome文件浏览器中跳转时, 在前面几个:工具栏, 地址栏, 左边的place栏都有矩形点线框, 然后当焦点在左边的place框的时候, 再次单击tab发现焦点

    虚线框不见了, 其实,这个时候焦点框不是不见了,而是在右边的文件列表框中来了, 因为列表框中不知道定位哪个文件比较合适,所以就没有默认的选中项,这时只要使用方向键或直接搜索输入...)

    vim的插件的配置文件: 在插件的plugin目录下, 有*.vim文件, 这些.vim文件既是功能函数, 又是配置文件,所以插件一般不再在 .vimrc中添加额外的配置)

    ######################################

    ## 使winmanager自动启动的配置:

    第一步:  在_vimrc( /etv文件中配置 (在最后添加)

       let g:AutoOpenWinManager=1                    //就在这里赋值,在winmanager.vim中就不再写这句话了

    1. let g:NERDTree_title="[NERDTree]"      //这个是必须的, 否则下一句就会因找不到插件而报很多的错
    2. let g:winManagerWindowLayout="NERDTree|TagList"     // 这里还是不要加BufExplorer的好
    3.     
    4. function! NERDTree_Start()    
    5.     exec 'NERDTree'    
    6. endfunction    
    7.     
    8. function! NERDTree_IsValid()    
    9.     return 1    
    10. endfunction    
    11.     
    12. nmap wm :WMToggle<CR>   

    ( "使用<c-y>和<c-v>来进行复制粘贴:
    nmap <C-c> "+y
    nmap <C-v> "+gp )

    那么这里winManager会有一个小bug,就是开启的时候会出现一个空白页。如果需要去清除掉。
    第二步: 在winManager.vim中,

    如果是自动启动那么需要一个在vimManager.vim中最后加一段代码如下:

    1. "set auto open Winmanager   
    2. if g:AutoOpenWinManager   
    3. "    "NERDTree放置在左边配置方式  
    4.   autocmd VimEnter * nested call s:StartWindowsManager()|1wincmd q  
    5. "    "NERDTree放置在右边配置方式  
    6. "    "autocmd VimEnter * nested call s:StartWindowsManager()|1wincmd w|q  
    7.   endif   

    如果不是自动启动:

     在winManager.vin中将ToggleWindowsManager修改为如下即可:

      1. function! <SID>ToggleWindowsManager()  
      2.     if IsWinManagerVisible()  
      3.         call s:CloseWindowsManager()  
      4.     else  
      5.         call s:StartWindowsManager()  
      6.         "exe 'q'    //就加这一句话就可以了
      7.     end  
      8. endfunction 

    ----------------------------------------- 如果实在是不行, 就按两次wm,  或之间将中间的空白窗口用q命令关闭也可以!

    c.vim的使用:

    在c-support的Templates/templates下配置用户信息, 配置插件的使用style为default=c, 还是cpp

    使用方法是: 以开头, (在normal, insert模式下有效), 然后接着输入命令类型: s=statement ,如if语句, do语句, for语句等,

    i=idioms 表示成语,俗语,方言,主要是im, if等等, c++的命令以+开头...

    :: 输入后, 要及时地输入后续的命令字符, 不能间隔得过久, 否则这种 operator模式就不生效

  • 相关阅读:
    sql server 函数
    Idea+Maven+Jetty,代码修改后,重新部署,无法获取新内容~
    css优先级
    jquery选择器
    XML学习笔记一
    JVM参数调优实例解析
    JVM中的Stack和Heap--------堆与栈
    svn报错:“Previous operation has not finished; run 'cleanup' if it was interrupted“
    Spark中的CombineKey()详解
    Spark性能优化指南——高级篇
  • 原文地址:https://www.cnblogs.com/bkylee/p/4922590.html
Copyright © 2011-2022 走看看