vim的 .vimrc文件配置

.vimrc文件配置

""""""""""""""""""""""""""""""""""""""
" vim 示例配置文件 ~/.vimrc
" by gc@sysin.org 2022.06.12
""""""""""""""""""""""""""""""""""""""

" 编码设置释义
" vim 内部使用的字符编码方式
"set encoding=编码
"set enc=编码
" vim 当前编辑的文件的字符编码方式,保存文件时也使用
"set fileencoding=编码
"set fenc=编码
" vim 打开的文件的字符编码方式,按顺序,最前面的优先
"fileencodings 是一个用逗号分隔的列表,简写 fencs
"set fileencodings=编码
" vim 所工作的终端的字符编码方式
"set termencoding=编码



" 编码设置
set encoding=utf-8
set fileencoding=utf-8
set fencs=utf-8,gb18030,gbk,cp936,gb2312,big5
set termencoding=utf-8

" 语言设置
set langmenu=zh_CN.UTF-8
set helplang=cn

" 去掉 vi 的一致性
set nocompatible

" 显示行号
set number

" 开启语法高亮
syntax on

" 设置字体
"set guifont=Monaco:h13
" solarized 主题设置在终端下的设置
"let g:solarized_termcolors=256

" 设置不自动换行
set nowrap

" 设置以 unix 的格式保存文件(UNIX 系统下默认)
set fileformat=unix

" 自动缩进
set autoindent
set cindent

" Tab 键的宽度 = 4 个空格
set tabstop=4
" 统一缩进为 4
set softtabstop=4
set shiftwidth=4
" expandtab:缩进用空格来表示,noexpandtab:用制表符表示一个缩进
set expandtab

" 高亮显示匹配的括号
set showmatch
" 匹配括号高亮的时间(单位是十分之一秒)
set matchtime=5

" 光标移动到 buffer 的顶部和底部时保持 3 行距离
set scrolloff=3

" 启动显示状态行 (1), 总是显示状态行 (2)
set laststatus=2

" 使退格键(backspace)正常处理 indent, eol, start 等
set backspace=2
" 允许 backspace 和光标键跨越行边界
"set whichwrap+=<,>,h,l

" 可以在 buffer 的任何地方使用鼠标(类似 office 中在工作区双击鼠标定位)
set mouse=a
set selection=exclusive
set selectmode=mouse,key

" 搜索忽略大小写
set ignorecase
" 高亮显示匹配字符(回车后)
set hlsearch
" 搜索实时高亮显示所有匹配的字符
set incsearch

" 设置当文件被改动时自动载入
"set autoread

" 突出显示当前行
set cursorline

" 打开标尺,在屏幕右下角显示当前光标所处位置(设置了 statusline 可以忽略)
set ruler
" 状态行显示的内容
"set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [ENC=%{&encoding}]\ [POS=%l,%v][%p%%]\ %{strftime(\"%Y.%m.%d\ -\ %H:%M\")}
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %l,%c%)\ %p%%

" 显示 Tab 键和行尾空格
set list
"set listchars=tab:→■,trail:■
"set listchars=tab:→▫,trail:□
set listchars=tab:→·,trail:□


" 自动添加脚本说明

set ignorecase
set cursorline
set autoindent
autocmd BufNewFile *.sh exec ":call SetTitle()"
func SetTitle()
    if expand("%:e") == 'sh'
    call setline(1,"#!/bin/bash")
    call setline(2,"#")
    call setline(3,"#********************************************************************")
    call setline(4,"#Author:                   dabiao")
    call setline(5,"#E-mail:                   2830103740@qq.com")
    call setline(6,"#Date:                     ".strftime("%Y-%m-%d"))
    call setline(7,"#FileName:                 ".expand("%"))
    call setline(8,"#URL:                      http://www.hao123.com;")
    call setline(9,"#Description:              The test script")
    call setline(10,"#Copyright (C):"          .strftime("%Y")." All rights reserved")
    call setline(11,"#********************************************************************")
    call setline(12,"")
    endif
endfunc
autocmd BufNewFile * normal G



posted @ 2026-09-06 17:37  大彪哥55  阅读(5)  评论(0)    收藏  举报