千家信息网

Linux之.vimrc人性化配置参数(可照搬)

发表于:2024-09-27 作者:千家信息网编辑
千家信息网最后更新 2024年09月27日,以下内容均来自老男孩出版的《shell编程实战》set nocompatibleset history=100filetype onfiletype plugin onfiletype indent
千家信息网最后更新 2024年09月27日Linux之.vimrc人性化配置参数(可照搬)

以下内容均来自老男孩出版的《shell编程实战》


set nocompatibleset history=100filetype onfiletype plugin onfiletype indent onset autoreadset mouse=asyntax enableset cursorlinehi cursorline guibg=#00ff00hi CursorColumn guibg=#00ff00set nofenset fdl=0set expandtabset tabstop=4set shiftwidth=4set softtabstop=4set smarttabset aiset siset wrapset sw=4set wildmenuset rulerset cmdheight=1set lzset backspace=eol,start,indentset whichwrap+=<,>,h,lset magicset noerrorbellsset novisualbellset showmatchset mat=2set hlsearchset ignorecaseset encoding=utf-8set fileencodings=utf-8set termencoding=utf-8set smartindentset cinset showmatchset guioptions-=Tset guioptions-=mset vb t_vb=set laststatus=2set pastetoggle=set background=darkhighlight Search ctermbg=black  ctermfg=white guifg=white guibg=blackautocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"func SetTitle()    if expand("%:e") == 'sh'        call setline(1, "#!/bin/bash")        call setline(2, "#Author:Ray")        call setline(3, "#Blog:https://blog.51cto.com/14154700")        call setline(4, "#Time:".strftime("%F %T"))        call setline(5, "#Name:".expand("%"))        call setline(6, "#Version:V1.0")        call setline(7, "#Description:This is a test script.")    endifendfunc

将上述的vim的配置文件.vimrc上传到Linux系统的"~"目录下(只对该用户生效),或者增加到/etc/vimrc文件中(全局文件,对所有用户都生效),然后退出SSH客户端重新登录,即可应用.vimrc里对应的设置。

以上配置的vim功能如下:

  • 只要是以.sh为扩展名的文件,就会自动增加版权信息;
  • 当代码量较大时比较有用的高级功能--代码折叠,在命令模式下,可以将光标定位到需要折叠的开始行,然后执行zf3j(其中3是指定要折叠多少行),便可以折叠当前行及下面三行的代码,若把光标放在对应折叠后的行上,按空格键即可展开折叠的行。
  • 有时从外部复制部分shell代码到当前脚本后发现缩进是乱的,可以将vim编辑器调整为命令模式(按Esc键),然后将光标定位到要调整的行开头,接下来按"v"键,然后用键盘上下键选定要调整的多行代码,选中后按"="键即可将代码调整为规整的格式。

关于上述的配置解释如下:

"关闭兼容模式set nocompatible"设置历史记录步数set history=100"开启相关插件filetype onfiletype plugin onfiletype indent on"当文件在外部被修改时,自动更新该文件set autoread"激活鼠标的使用set mouse=a"""""""""""""""""""""" => 字体和颜色""""""""""""""""""""""开启语法syntax enable"设置字体"set guifont=dejaVu\ Sans\ MONO\ 10"""设置配色"colorscheme desert"高亮显示当前行set cursorlinehi cursorline guibg=#00ff00hi CursorColumn guibg=#00ff00"""""""""""""""""""""" => 代码折叠功能 by oldboy""""""""""""""""""""""激活折叠功能set foldenable"设置按照语法方式折叠(可简写set fdm=XX)"有6种折叠方法:"manual 手工定义折叠"indent 更多的缩进表示更高级别的折叠"expr   用表达式来定义折叠"syntax 用语法高亮来定义折叠"diff   对没有更改的文本进行折叠"marker 对文中的标志进行折叠set foldmethod=manual"设置折叠区域的宽度"如果不为0,则在屏幕左侧显示一个折叠标识列"分别用"-"和"+"来表示打开和关闭的折叠。set foldcolumn=0"设置折叠层数为3setlocal foldlevel=3"设置为自动关闭折叠set foldclose=all"用空格键来代替zo和zc快捷键实现开关折叠"zo  O-pen a fold   (打开折叠)"zc  C-lose a fold  (关闭折叠)"zf  F-old creation (创建折叠)nnoremap  @=((foldclosed(line('.')) < 0)  'zc' : 'zo')"""""""""""""""""""""" => 文字处理 by oldboy""""""""""""""""""""""使用空格来替换Tabset expandtab"设置所有的Tab和缩进为4个空格set tabstop=4"设定 << 和 >> 命令移动时的宽度为4set shiftwidth=4"使得按退格键时可以一次删掉4个空格set softtabstop=4set smarttab"缩进,自动缩进(继承前一行的缩进)"set autoindent命令关闭自动缩进,是下面配置的缩写。"可使用autoindent命令的简写,即 ":set ai" 和 ":set noai"。"还可以使用" :set ai sw=4"在一个命令中打开缩进并设置缩进级别。set ai"智能缩进set si"自动换行set wrap"设置软宽度set sw=4"""""""""""""""""""""" => Vim 界面 by oldboy""""""""""""""""""""""Turn on WiLd menuset wildmenu"显示标尺set ruler"设置命令行的高度set cmdheight=1"显示行数"set nu"Do not redraw, when running macros.. lazyredrawset lz"设置退格set backspace=eol,start,indent"Bbackspace and cursor keys wrap toset whichwrap+=<,>,h,l"Set magic on(设置魔术)set magic"关闭遇到错误时的声音提示"关闭错误信息响铃set noerrorbells"关闭使用可视响铃代替呼叫set novisualbell"显示匹配的括号([{和}])set showmatch"How many tenths of a second to blinkset mat=2"搜索时高亮显示搜索到的内容set hlsearch"搜索时不区分大小写"还可以使用简写(":set ic" 和 ":set noic")set ignorecase"""""""""""""""""""""" => 编码设置""""""""""""""""""""""设置编码set encoding=utf-8"设置文件编码set fileencodings=utf-8"设置终端编码set termencoding=utf-8"""""""""""""""""""""" => 其他设置 by oldboy 2010""""""""""""""""""""""开启新行时使用智能自动缩进set smartindentset cinset showmatch"隐藏工具栏set guioptions-=T"隐藏菜单栏set guioptions-=m"置空错误铃声的终端代码set vb t_vb="显示状态栏 (默认值为 1, 表示无法显示状态栏)set laststatus=2"粘贴不换行问题的解决方法set pastetoggle="设置背景色set background=dark"设置高亮相关highlight Search ctermbg=black  ctermfg=white guifg=white guibg=black

-------- 本文至此结束,感谢阅读 --------

0