zoukankan      html  css  js  c++  java
  • vimrc

    map/imap/inoremap/nmap

    map:在命令模式下有效

    imap:在插入模式有效

    inoremap:在插入模式有效,nore表示不递归no recursion:例如:inoremap Y yinoremap y Y并不会出现无限循环

    nmap:命令模式下生效,normal map。

    命令映射
    map <c-z> u             用ctrl+z的快捷键表示u,都可以用于回退
    imap <c-z> <ESC>u<CR>i      在插入模式下使用ctrl-z也可以表示u的功能
    map <c-y> <c-r>
    imap <c-y> <ESC><c-r><CR>i    撤销撤回
    map <c-c> y
    imap <c-c> <ESC>y<CR>i     ctrl+c表示复制
    map <c-s> :w! <CR>        
    imap <c-s> <ESC>:w!<CR>i     ctrl+s保存
    nmap sc :source ~/.vimrc<CR>  不需要输入“:”就可以使命令生效,直接在视图状态下就输入sc就相当于source了vimrc
    nmap <C-a> <ESC>ggvG<END><CR>  全选
    inoremap <C-a> <ESC>ggvG<END><CR>i
    自动补全
    inoremap <s-p> <C-x><C-n>   英文单词自动补全
    inoremap ( ()<ESC>i         补全括号,不推荐使用
    inoremap ) <c-r>=ClosePair(')') 补全括号
    inoremap { {}<ESC>i         补全括号
    inoremap } <c-r>=ClosePair('}') 补全括号
    注释
    nmap <S-I> 0i//<ESC>:w!<CR>    shift+insert注释一行
    nmap <S-D> 0xx            shift+delet去除一行的注释
    vmap <S-I> I//<ESC>         在行选择模式下shift+insert注释多行
    vmap <S-D> xx<ESC>

    去空格
    nnoremap <F2> :g/^s*$/d<CR>

    列出当前目录
    map <F2> :tabnew . <CR>
    nmap <F2> :NERDTreeToggle<CR> 这个需要安装插件

    键表 |key-notation| 
    <k0> - <k9> 小键盘 0 到 9 *keypad-0* *keypad-9* 
    <S-...> Shift+键 *shift* *<S-* 
    <C-...> Control+键 *control* *ctrl* *<C-* 
    <M-...> Alt+键 或 meta+键 *meta* *alt* *<M-* 
    <A-...> 同 <m-...> *<A-* 
    <t_xx> termcap 里的 "xx" 入口键 

    set tabstop=4      //tab占4个空格大小
    set expandtab      //tab转换成空格
    set number           //文件显示行数
    set ruler                //Vim窗口的右下角显示光标的行列信息
    set showcmd       //Vim窗口的右下角显示一个完整的命令已经完成的部分
    set autoindent      //自动缩进
    set hlsearch          //高亮显示
    set syntax on      //显示语法
    set ignorecase       //在搜索时忽略大小写
    set backspace=indent,eol,start     //在Insert模式,支持backspace键

    :set pastetoggle=<F9> "解决在Vim中粘贴代码后,缩进就全乱了
    :set mouse=v "鼠标选择 运用系统粘贴版
    :set virtualedit=onemore "允许光标移动到刚刚超过行尾的位置
    :set tabstop=4 "设定制表符宽度
    :set shiftwidth=4 "设置缩进宽度
    set ai " 自动缩进
    syntax on " 自动语法高亮
    set cursorline " 突出显示当前行
    set ruler " 打开状态栏标尺
    set softtabstop=4 " 使得按退格键时可以一次删掉 4 个空格
    set nobackup " 覆盖文件时不备份
    set autochdir " 自动切换当前目录为当前文件所在的目录
    set backupcopy=yes " 设置备份时的行为为覆盖
    set showmatch " 插入括号时,短暂地跳转到匹配的对应括号
    set matchtime=2 " 短暂跳转到匹配括号的时间
    set magic " 设置魔术
    set hidden " 允许在有未保存的修改时切换缓冲区,此时的修改由 vim 负责保存

    set guioptions-=T " 隐藏工具栏
    set guioptions-=m " 隐藏菜单栏
    set smartindent " 开启新行时使用智能自动缩进
    set backspace=indent,eol,start
    " 不设定在插入状态无法用退格键和 Delete 键删除回车符
    set cmdheight=1 " 设定命令行的行数为 1
    set laststatus=2 " 显示状态栏 (默认值为 1, 无法显示状态栏)
    set statusline= %<%F[%1*%M%*%n%R%H]%= %y %0(%{&fileformat} %{&encoding} %c:%l/%L%)     " 设置在状态行显示的信息

    set ignorecase smartcase " 搜索时忽略大小写,但在有一个或以上大写字母时仍保持对大小写敏感
    set nu

    "打开文件后光标自动跳到上次关闭文件的位置
    autocmd BufReadPost *
                    if line("'"")>0&&line("'"")<=line("$") |
                      exe "normal g'"" |
                    endif
     
    十字光标
    set cursorline
    hi cursorline guibg=#0080E6
    hi cursorline guibd=#A080E6
    set cursorcolumn

    tab相关

    set expendtab         # 用空格替代tab,也可以用:set extab
    set tabstop = 4       # 设置tab包含几个字符,也可以使用:set ts = 4
    set shiftwidth = 4 # 设置智能缩进的缩进数 set autoindent # 自动缩进 :set ai set smartindent # 智能缩进 : set si,对齐整数个tab来缩进
    set et          # 与set expendtab,set extab一样用空格代替tab
    set et!         # 取消用空格代替tab,在写makefile文件的时候需要这个设置。

    设置语法高亮

    syntax on
    au BufNewFile,BufRead *.{c,h,cpp} setf c
    au BufNewFile,BufRead *.sv set filetype=systemverilog

    搜索高亮设置

    set hlsearch                                  # 开启搜索高亮,set nohlsearch可以关闭
    hi   Search term=standout ctermfg=0 ctermbg=3 # 设置高亮的颜色 命令模式输入hi 可以查看有哪些可以设置。

    设置leader键

    let maplead = ","
    let g:mapleader = ","
    这样<leader>就可以与其他字母组成命令,比如nmap <leader>ab xxxx

    快速插入一段代码

    iab al  <ESC>:read ~/v_demo/always.v<CR>i
    将~/v_demo/always.v文件中的内容插入

    设置界面颜色

    let g:solarized_bold=0
    let g:solarized_italic=0
    let g:solarized_termcolors=256
    let g:solarized_contrast="high"
    let g:solarized_visibility="high"
    let g:solarized_hitrail=1
    syntax enable
    set background=dark
    colorscheme solarized

    参考链接

    设置不区分大小写

    :set ignorease

    滑动条

    :set guioptions+=b  //显示下边的滑动条
    :set guioptions-=r //关闭右侧的滑动条

    跳来跳去的ctags

    1、安装
        sudo apt-get install ctags
    2、使用
        2.1将安装的ctags的路径添加到bashrc的path中,安装完应该默认就加入了
        2.2产生需要跳转文件的索引文件:ctag -f filename -R dir,filename是要产生索引文件的名字,dir是要去检索的文件夹,-R选项就会递归检索。
        2.3将产生的索引文件加入到vimrc的tags变量中:set tags+=索引文件路径
        2.4ctrl+]跳转到要查找变量的定义位置,ctrl+6跳回来。

     minibufexplorer

    下载地址 [http://www.vim.org/scripts/script.php?script_id=159]
    版本     6.3.2
    安装     将下载的 minibufexpl.vim文件丢到 ~/.vim/plugin 文件夹中即可
    手册     在minibufexpl.vim 文件的头部

    参考链接

    设置gvim打开窗口的大小和在屏幕中的位置

    set lines = 62         " 设置列数
    set columns = 192      " 设置行数
    winpos 160 0           " 设置在窗口中的位置。
     1 set number
     2 set ts=4
     3 map <c-s> :w!<CR>
     4 imap <c-s> <ESC> :w!<CR>i
     5 map <c-c> y
     6 imap <c-c> <ESC>y<CR>i
     7 map <c-z> u
     8 imap <c-z> <ESC>u<CR>i
     9 map <c-y> <c-r>
    10 imap <c-y> <ESC><c-r><CR>i
    11 nmap <C-a> <ESC>ggvG<END><CR>
    12 inoremap <C-a> <ESC>ggvG<END><CR>i
    13 
    14 set cursorline
    15 hi cursorline guibg=#0080E6
    16 set cursorcolumn
    17 let g:solarized_bold=0
    18 let g:solarized_italic=0
    19 let g:solarized_termcolors=256
    20 let g:solarized_contrast="high"
    21 let g:solarized_visibility="high"
    22 let g:solarized_hitrail=1
    23 syntax enable
    24 set background=dark
    25 colorscheme industry
    26 set guioptions-=T
    27 set guioptions-=m
    28 set smartindent 
    29 set cursorline
    30 :set shiftwidth=4
    31 set ai 
    32 set softtabstop=4
  • 相关阅读:
    Bete冲刺第二阶段
    Beta版本冲刺计划及安排
    Bete冲刺第一阶段
    软件工程实践总结
    用户试用体验报告
    Bata版本冲刺计划及安排
    scrum阶段总结
    关于 微软必应词典客户端 的案例分析
    第三次结对编程
    结对项目之需求分析与原型模型设计
  • 原文地址:https://www.cnblogs.com/yuandonghua/p/10483882.html
Copyright © 2011-2022 走看看