zoukankan      html  css  js  c++  java
  • 自己的vim配置

    nmap <F11> :source ~/.vimrc<CR> 
            "n 普通模式   F11映射为 :source ~/.vimrc
    winpos 5 5 "windows post set
    set nocompatible   "不与VI兼容(采用vim 自己的操作命令)
    au GUIEnter * simalt ~x "启动时最大化
    nmap <F8> GoDate:<ESC>:read !date<CR>KJ 
    function! RemovePairs() "设置一个删除括号的函数,首字母要大写
        let l:line = getline(".")  
            "getline()获取当前行内容,例如getline(line(".")获取当前所在行
        let l:previous_char = l:line[col(".")-1]
       "获取当前光标前一个字符
        if index(["{","[","("],l:previous_char)!=-1 
        "判断是否为所列字符
        let l:original_pos=getpos(".")
        execute "normal %"
        let l:new_pos = getpos(".")
    
        if l:original_pos == l:new_pos
        execute "normal! a<BS>"
        return
        end
    
        let l:line2 = getline(".")
        if len(l:line2)==col(".")
        execute "normal! v%xa"
        else
         execute "normal! v%xi"
        end
    
        else
        execute "normal! a<BS>"
        end
        endfunction
    inoremap <BS> <ESC>:call RemovePairs()<CR>a
    "color github
    set encoding=utf-8          "使用utf-8编码 简写(enc)
    set fileencodings=utf-8,gbk,big5,cp936,gb18030,gb23215,utf-16 "如果上一步解码失败才尝试这些  (简写 fencs)
    set fileencoding=utf-8            "把文件编码转换为utf-8  (fenc)            
    set number         "显示行号
    "set relativenumber  "显示光标所在行的行号,其它行都为相对于该行的相对行号
    set cursorline     "光标所在行高亮
    set textwidth=140   "设置行宽,即一行显示多少个字符
    set wrap           "自动折行,即太长的行分成几行显示 ,set nowap 关闭折行
    set linebreak      "只有遇到制定的符号(比如空格.连词号.其它标点符号),才发生折行
    set wrapmargin=2   "当前折行处与编辑窗口的右边缘之间空出的字符数
    filetype on        "文件检查
    set t_Go=256      "启用256色
    "hi comment ctermfg=1  "ctermfg 前景色 ctermbg 背景色 
    colorscheme desert" 配色方案 elflord ron  peachpuff  desert morning evening default murphy pablo shine blue darkblue delek koehler slate torte zellner
    hi Normal guibg=BLACK
    hi Search term=standout ctermfg=15 ctermbg=242  "hi 颜色设置 Search 搜索  ctermfg 背景色 ctermbg 前景色 
    syntax on
    set showcmd        "在底部显示当前处于命令模式还是插入模式
    set mouse=a        "支持使用鼠标
    set cindent        " /*set atuoindent 设置自动缩进 可选 autoindent cindent indentexpr*/
    set smartindent     "/*智能对其方式*/
    set ai             "设置自动缩进
    set expandtab      " #set tab character auto turn space 设置tab自动转换为空格
    set tabstop =2     "按下tab键时,Vim显示的空格数
    set shiftwidth=4
    "set cindent shiftwidth=4   " #设置自动缩进长度为4个空格
    "set autoindent shiftwidth=2 "设置缩进字符个数
    set mouse=a        "设置那些模式使用鼠标
    set backspace=2    "设置Backspace 和Delete的灵活程度 2为没有限制
    "set noweap 不自动换行
    
    inoremap { {}<ESC>i<CR><ESC>V<>>O
        "i:insert pattern  nore:非递归模式  map 映射  这句的功能是当输入{时 VIM自动输入后面的命令
    inoremap ( ()<ESC>i  
    inoremap [ []<ESC>i 
    inoremap " ""<ESC>i
    inoremap ' ''<ESC>i
    "auto remove a pair character
    ""function! Removepairs()
    "let l:line=getline(".")
    ""let
    set softtabstop=2  "tap 转换为多少个空格
    set showmatch      "光标遇到圆括号,方括号,大括号,自动高亮对应的另一个圆括号,方括号,大括号
    set hlsearch       "搜索时高亮配备集国
    set incsearch      " 输入搜索模式时,每输入一个字符,就自动跳到第一个配备的结果
    set ignorecase     "搜索时忽略大小写
    set smartcase      "如果同时打开了ignorecase,那么对于只有一个大写字母的搜索词,将大小写敏感,其它情况不敏感,例如:搜索Test时,将不配备test,
                    "搜索test时,将配备Test
    "set spell spelllang=en_us "打开英语单词的拼写检查
    set backup      "创建备份文件,默认情况,文件保存时,会额外创建备份文件,它的文件名是在原文件的末尾,再添加一个波浪号(~);nobackup则反过来
    set swapfile      "创建交换文件,交换文件主要用于系统崩溃时恢复文件,文件名的开头是.  结尾是.swp  ; noswapfile则反过来
    set undofile                                                                               "保留撤销历史,将撤销历史保存到一个文件里,继续存在,关闭文件后下次编辑,可以撤销赏次操作,文件名以un~开头,和原文件在一起的隐藏文件
    set backupdir=/home/share
    set directory=~/.vim/.share/.swp//
    set undodir=~/.home/.share/.undo//
    "上面3行设置备份文件,交换文件,操作历史文件的保存位置,结尾的//表示生成的文件的绝对路径,路ingzhong用%替换目录分格符,这样可以防止文件重名
    set laststatus=2  "是否显示状态栏,0 不显示,1 只在多窗口显示,2显示
    set autochdir    "自动切换工作目录,在在个VIM会话中打开多个为年间的情况,默认工作目录是打开的第一个文件的目录
    set noerrorbells "出错时不要发出响声
    set visualbell   "出错时发出错误提示
    set history=1000 "VIM需要记住多少次历史操作
    set autoread     "打开文件监视,如果编辑过程中文件发生外部改变,就会发出提示
    set wildmenu     "
    set wildmode=longest:list,full
    "上面两行,在命令模式下,底部操作指令TAB键会自动补全,第一次按TAB,会显示配备的指令清单,第二次按TAB,会依次选择各个指令
    set guioptions-=T " #GUI set; T:去掉Gvim中的工具栏;t:去掉GVIM中可撕下的菜单 guioptions=egmrLtT
    set vb t_vb=
    set ruler         "在状态栏显示光标的当前位置
    set incsearch
    if has("vms")
        set nobackup
    else
    set backup
    endif
  • 相关阅读:
    【linux磁盘与文件系统管理】8-RAID工作原理和实现
    【linux磁盘与文件系统管理】5,6,7-文件系统使用-管理
    【linux磁盘与文件系统管理】3,4-MBR和GPT分区-分区管理
    【linux磁盘与文件系统管理】2-分区表MBR
    【linux磁盘与文件系统管理】1-磁盘结构和概念
    01学习Vue.js过程总结
    oracle表管理(建表,改表,删表,表数据增删改查)
    oracle数据类型
    Orcal登录密码过期
    基于Container部署的k8s集群
  • 原文地址:https://www.cnblogs.com/jiangfeilong/p/10023774.html
Copyright © 2011-2022 走看看