Linux系统的vim编辑器的配置文件的初步说明

vim 编辑器的基本说明

vi编辑器的功能类似于Windows下的记事本,只能编辑普通文本,而vim编辑器则相当于Windows下的notepad++等高级编辑器,提升了代码开发效率。

将vi命令默认定向到vim,需要做以下调整。

 

vim 编辑器的的配置文件.vimrc的重要参数说明

每个用户的家目录下面都可以创建一个.vimrc的vim配置文件,优化用户编程的环境并提高开发效率。如果想在整个环境中对vim开发环境进行优化,可将配置参数写入/etc/vimrc中。这样以后,所有用户可以使用优化后的开发环境。

以下是一些常见的重要参数:

'' ~/.vimrc
'' vim config file
'' date 2019-06-05
'' Created by ant
'' Blog:https://www.cnblogs.com/ant-colonies/

''''''''''''''''''''''''''''''''''
'' => 全局变量
''''''''''''''''''''''''''''''''''

'' 关闭兼容模式
set nocompatible

'' 历史记录数
set history=100

'' 开启相关插件
filetype on
filetype plugin on
filetype indent on

'' 当文件在外部被修改时,自动更新该文件
set autoread

'' 激活鼠标
set mouse=a


''''''''''''''''''''''''''''''''''
'' => 字体和颜色
''''''''''''''''''''''''''''''''''

'' 语法检查
syntax enable

'' 字体
''set guifont=dejaVu\ Sans\ MONO\ 10
''
'' 设置配色
''colorscheme desert

'' 高亮显示光标所在行
set cursorline
hi cursorline guibg=#00ff00
hi CursorColumn guibg=#00ff00


''''''''''''''''''''''''''''''''''
'' => 代码折叠功能
''''''''''''''''''''''''''''''''''
'' 激活代码折叠
set foldenable

'' 折叠方式 (可简写 set fdm=XX)
''manual   自定义折叠
''indent   更多的缩进表示更高级别的折叠
''expr     用表达式来定义折叠
''syntax   用语法来表示折叠
''diff     对没有更改的文本进行折叠
''marker   对文中的标志进行折叠
set foldmethod=manual

'' 折叠区域的宽度
'' 如果不为0,则在屏幕左侧先是一个折叠的标识
'' 这两个标识是"-"和"+",分别表示"打开"和"关闭"折叠的内容
set foldcolumn=0

'' 折叠层数
setlocal foldlevel=3

'' 自动关闭折叠
set foldclose=all

'' 用空格键来代替zo和zc快捷键实现开关折叠
''zo O-pen a fold 
''zc C-lose a fold
''zf F-old creation  创建折叠
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>

set nofen
set fdl=0


''''''''''''''''''''''''''''''''''
'' => 文字处理
''''''''''''''''''''''''''''''''''

'' 使用空格代替Tab
set expandtab

'' 所有的Tab和缩进为4个空格
set tabstop=4

'' 设定 << 和 >>命令移动时的宽度为4
set shiftwidth=4

'' 退格键一次删除4个空格
set softtabstop=4

set smarttab

'' 缩进,自动缩进(继承前一行的缩进)
'' set autoindent命令自动缩进, autoindent 缩写为 ai
'' set ai 自动缩进; set noai 无自动缩进,可在vim打开的文件临时(:set ai)
'' 可使用":set ai sw=4" 打开缩进并设置缩进级别
set ai

'' samrt indent,智能缩进
set si

'' 自动换行
set wrap
'' soft width,软宽度
set sw=4


''''''''''''''''''''''''''''''''''
'' => Vim界面
''''''''''''''''''''''''''''''''''

'' Turn on wild menu
set wildmenu

'' 显示标尺
set ruler

'' 命令行高度
set cmdheight=1

'' Do not redraw, when running macro.. lazyredraw
set lz

'' 退格
set backspace=eol,start,indent

'' backspace and cursor keys wrap to
set whichwrap+=<,>,h,l

'' Set magic on 魔数打开
set magic

'' 关闭错误响铃
set noerrorbells

'' 关闭可视响铃
set novisualbell

'' 显示匹配的括号 ([{ 和 }])
set showmatch

'' How many tenths of a second to blink, 光标一秒钟闪烁的多说个10次
set mat=2

'' 高亮显示搜索到的内容
set hlsearch

'' 搜索时不区分大小写,命令行缩写 :set ic  :set noic
set ignorecase


''''''''''''''''''''''''''''''''''
'' => 编码设置
''''''''''''''''''''''''''''''''''

set encoding=utf-8

'' 文件编码
set fileencodings=utf-8

'' 终端编码
set termencoding=utf-8


''''''''''''''''''''''''''''''''''
'' => 其他设置
''''''''''''''''''''''''''''''''''

'' 智能缩进
set smartindent
set cin
set showmatch

'' 隐藏工具栏
set guioptions-=T

'' 隐藏菜单栏
set guioptions-=m

'' 置空错误铃声的终端代码
set vb t_vb=

'' 显示状态栏 (默认为1,表示无法显示状态栏)
set laststatus=2

'' 粘贴不换行问题的解决办法功能键 F9
set pastetoggle=<F9>

'' 背景颜色
set background=dark

'' 高亮相关
highlight Search ctermbg=black ctermfg=white guifg=white guibg=black 


'' Shell script 的开头自动增加解释器及其他信息
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"
func SetTitle()
    if expand("%:e") == 'sh'
	    call setline(1, "##!/bin/bash")
		call setline(2, "#Author:ant")
		call setline(3, "#Blog:https://www.cnblogs.com/ant-colonies/")
		call setline(4, "#Time:".strftime("%F %T"))
		call setline(5, "#Name:".expand("%"))
		call setline(6, "#Version:V1.0")
		call setline(7, "#Discription:This is a test script.")
    endif
endfunc

 

set nocompatible
set history=100
filetype on
filetype plugin on
filetype indent on
set autoread
set mouse=a
syntax enable
set cursorline
hi cursorline guibg=#00ff00
hi CursorColumn guibg=#00ff00
set nofen
set fdl=0
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4
set smarttab
set ai
set si
set wrap
set sw=4
set wildmenu
set ruler
set cmdheight=1
set lz
set backspace=eol,start,indent
set whichwrap+=<,>,h,l
set magic
set noerrorbells
set novisualbell
set showmatch
set mat=2
set hlsearch
set ignorecase
set encoding=utf-8
set fileencodings=utf-8
set termencoding=utf-8
set smartindent
set cin
set showmatch
set guioptions-=T
set guioptions-=m
set vb t_vb=
set laststatus=2
set pastetoggle=<F9>
set background=dark
highlight Search ctermbg=black ctermfg=white guifg=white guibg=black 
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"
func SetTitle()
    if expand("%:e") == 'sh'
	    call setline(1, "##!/bin/bash")
		call setline(2, "#Author:ant")
		call setline(3, "#Blog:https://www.cnblogs.com/ant-colonies/")
		call setline(4, "#Time:".strftime("%F %T"))
		call setline(5, "#Name:".expand("%"))
		call setline(6, "#Version:V1.0")
		call setline(7, "#Discription:This is a test script.")
    endif
endfunc

 

posted @ 2019-06-05 15:29  ant_colonies  阅读(1756)  评论(0编辑  收藏  举报