vim配置文件.vimrc详解

vim配置⽂件.vimrc详解

"是否兼容VI,compatible为兼容,nocompatible为不完全兼容

"如果设置为compatible,则tab将不会变成空格

set nocompatible

"设置⿏标运⾏模式为WINDOWS模式

behave mswin

"设置菜单语⾔

set encoding=chinese

set langmenu=zh_CN.UTF-8

" =========

" 功能函数

" =========

" 获取当前⽬录

func GetPWD()

return substitute(getcwd(), "", "", "g")

endf

" =====================

" 多语⾔环境

" 默认为 UTF-8 编码

" =====================

if has("multi_byte")

set encoding=utf-8

" English messages only

"language messages zh_CN.utf-8

if has('win32')

language english

let &termencoding=&encoding

endif

set fencs=utf-8,gbk,chinese,latin1

set formatoptions+=mM

set nobomb " 不使⽤ Unicode 签名

if v:lang =~? '^\(zh\)\|\(ja\)\|\(ko\)'

set ambiwidth=double

endif

else

echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte"

endif

" =========

" 环境配置

" =========

" 保留历史记录

set history=400

" 命令⾏于状态⾏

set ch=1

set stl=\ [File]\ %F%m%r%h%y[%{&fileformat},%{&fileencoding}]\ %w\ \ [PWD]\ %r%{GetPWD()}%h\ %=\ [Line]\ %l,%c\ %=\ %P

set ls=2 " 始终显⽰状态⾏

" 制表符

set tabstop=4

"把tab转成空格

"set expandtab

set smarttab

set shiftwidth=4

set softtabstop=4

" 状态栏显⽰⽬前所执⾏的指令

set showcmd

" ⾏控制

set linebreak

set nocompatible

set textwidth=80

set wrap

" ⾏号和标尺

set number

set ruler

set rulerformat=%15(%c%V\ %p%%%)

" 控制台响铃

:set noerrorbells

:set novisualbell:set t_vb= "close visual bell

" 插⼊模式下使⽤ 、

set backspace=indent,eol,start

" 标签页

set tabpagemax=20

set showtabline=2

" 缩进 智能对齐⽅式

set autoindent

set smartindent

" ⾃动重新读⼊

set autoread

"代码折叠

"设置折叠模式

set foldcolumn=4

"光标遇到折叠,折叠就打开

"set foldopen=all

"移开折叠时⾃动关闭折叠

"set foldclose=all

"zf zo zc zd zr zm zR zM zn zi zN

"依缩进折叠

" manual ⼿⼯定义折叠

" indent 更多的缩进表⽰更⾼级别的折叠

" expr ⽤表达式来定义折叠

" syntax ⽤语法⾼亮来定义折叠

" diff 对没有更改的⽂本进⾏折叠

" marker 对⽂中的标志折叠

set foldmethod=syntax

"启动时不要⾃动折叠代码

set foldlevel=100

"依标记折叠

set foldmethod=marker

"语法⾼亮

syntax enable

syntax on

"设置配⾊

set guifont=Courier\ New:h12

colorscheme desert

"设定⽂件浏览器⽬录为当前⽬录

set bsdir=buffer

" ⾃动切换到⽂件当前⽬录

set autochdir

"在查找时忽略⼤⼩写

set ignorecase

set incsearch

set hlsearch

"设置命令⾏的⾼度

set cmdheight=2

"显⽰匹配的括号

set showmatch

"增强模式中的命令⾏⾃动完成操作

set wildmenu

"使PHP识别EOT字符串

hi link phpheredoc string

"php语法折叠

let php_folding = 1

"允许在有未保存的修改时切换缓冲区

set hidden

"实现全能补全功能,需要打开⽂件类型检测

"filetype plugin indent on

"打开vim的⽂件类型⾃动检测功能

"filetype on

"保存⽂件的格式顺序

set fileformats=dos,unix

"置粘贴模式,这样粘贴过来的程序代码就不会错位了。

set paste

"在所有模式下都允许使⽤⿏标,还可以是n,v,i,c等

set mouse=a" 恢复上次⽂件打开位置

set viminfo='10,\"100,:20,%,n~/.viminfo

au BufReadPost * if line("'\"") > 0|if line("'\"") <= line("$")|exe("norm '\"")|else|exe "norm $"|endif|endif

"取得光标处的匹配

function! GetPatternAtCursor(pat)

let col = col('.') - 1

let line = getline('.')

let ebeg = -1

let cont = match(line, a:pat, 0)

while (ebeg >= 0 || (0 <= cont) && (cont <= col))

let contn = matchend(line, a:pat, cont)

if (cont <= col) && (col < contn)

let ebeg = match(line, a:pat, cont)

let elen = contn - ebeg

break

else

let cont = match(line, a:pat, contn)

endif

endwh

if ebeg >= 0

return strpart(line, ebeg, elen)

else

return ""

endif

endfunction

" =========

" 图形界⾯

" =========

if has('gui_running')

" 只显⽰菜单

set guioptions=mcr

" ⾼亮光标所在的⾏

set cursorline

" 编辑器配⾊

colorscheme desert

"colorscheme zenburn

"colorscheme dusk

if has("win32")

" Windows 兼容配置

source $VIMRUNTIME/vimrc_example.vim

source $VIMRUNTIME/mswin.vim

"设置⿏标运⾏模式为WINDOWS模式

behave mswin

" f11 最⼤化

map :call libcallnr('fullscreen.dll', 'ToggleFullScreen', 0)

" 字体配置

exec 'set guifont='.iconv('Courier_New', &enc, 'gbk').':h12:cANSI'

"exec 'set guifontwide='.iconv('微软雅⿊', &enc, 'gbk').':h12'

endif

if has("unix") && !has('gui_macvim')

set guifont=Courier\ 10\ Pitch\ 11

set guifontwide=YaHei\ Consolas\ Hybrid\ 11

endif

if has("mac") || has("gui_macvim")

set guifont=Courier\ New:h16.00

"set guifontwide=YaHei\ Consolas\ Hybrid:h16.00

"set guifont=Monaco:h16

"set guifont=Droid\ Sans\ Mono:h14

set guifontwide=YouYuan:h14

if has("gui_macvim")

"set transparency=4

set lines=200 columns=142

let s:lines=&lines

let s:columns=&columns

func! FullScreenEnter()

set lines=999 columns=999

set fu

endf

func! FullScreenLeave()

let &lines=s:lines

let &columns=s:columns

合集下载

vim配置python高亮和缩进

vim配置python高亮和缩进

vim配置python⾼亮和缩进

vim的配置⽂件在/etc/vimrc,或者在~/⽬录下建⽴配置⽂件:

touch .vimrc

⾼亮设置

⼀般来说vim对识别的程序是会⾃动设置⾼亮的,如果没有可以在.vimrc中添加syntax on

并且可以调节⾼亮显⽰适配terminal的背景,如果背景是⿊⾊set background=dark

这个配置只有dark/light两个参量,并且它并不改变背景的颜⾊,如果要改变背景highlight Normal ctermfg=grey ctermbg=blue

就是在terminal中⽤蓝底⽩字,如果是在gui中则highlight Normal guibg=black guifg=white

/htmldoc/options.html#'background'

缩进设置

可以添加filetype indent plugin on

来打开⾃动缩进

对于tab的格式set modeline

同时在python⽂件中添加注释# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4

也可以⼿动设置格式set tabstop=8 expandtab shiftwidth=4 softtabstop=4

Or:

set ts=8 et sw=4 sts=4

如果上⾯的设置不成功可以单独设置set tabstop=9

set expandtab

set shiftwidth=4

set softtabstop=4

filetype indent on

以上配置可以单独对识别为python的⽂件设置,创建~/.vim/ftplugin/python.vim并添加条⽬

set num 添加⾏好

⾃动添加头部注释/etc/vim/vimrc

必须是vim,⽽不是vi

function HeaderPython()

Vim IDE环境配置讲解

Vim IDE环境配置讲解

VIM IDE环境配置

1 介绍

要使VIM变成和VS一样的集成环境,可通过安装以下插件来实现,分别是

1) Ctags

2) Taglist

3) GNU Global

4) OmniCppComplete

5) SuperTab

6) Winmanager

7) NERDTree

8) MiniBufExplorer

下面将分别介绍各个插件的安装与使用。

2 Ctags安装

安装步骤:

1) 从/下载源代码包后,解压缩生成源代码目录。

2) 进入源代码根目录执行./configure。

3) 执行make。

4) 编译成功后执行make install。

常用命令列表:

1)$ ctags –R * ($ 为Linux系统Shell提示符)

2)$ vim –t tag (请把tag替换为您欲查找的变量或函数名)

3) :ts (ts 助记字:tags list, “:”开头的命令为vim中命令行模式命令)

4) :tp (tp 助记字:tags preview)

5) :tn (tn 助记字:tags next)

6) Ctrl + ] (跳转到该标记的定义处)

7) Ctrl + t (返回到上次跳转前位置)

命令解释:

1) “$ ctags –R *”:“-R”表示递归创建,也就包括源代码根目录(当前目录)下的所有子目录。“*”表示所有文件。

2) 这条命令会在当前目录下产生一个“tags”文件,当用户在当前目录中运行vim时,会自动载入此tags文件。

Tags文件中包括这些对象的列表: 1)用#define定义的宏

2)枚举型变量的值

3)函数的定义、原型和声明

4)名字空间(namespace)

5)类型定义(typedefs)

6)变量(包括定义和声明)

7)类(class)、结构(struct)、枚举类型(enum)和联合(union)

vim操作

vim操作

vim的使用方法

1. 打开文件

vim是以vim命令后加文件名的方式来打开文件的,但vim功能强大,在打开文件时还可以加入参数实现更多的功能。用法:vim [OPTION]… FILE…

vim命令的选项及作用:

选项 含义

+ 打开文件后光标默认在尾行行首。

+# 打开文件后光标处于第#行的行首。

+/PATTERN 打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首

-b file 以二进制方式打开文件

-d file1 file2… 比较多个文件

-m file 以只读方式打开文件,打开后对文件的修改无法保存。

ex file或vim –e 直接进入扩展命令模式

补充:

 如果该文件存在,文件被打开并显示内容

 如果该文件不存在,当编辑后第一次存盘时创建它

 如果目录不存在,将无法保存编辑内容

2. vim的三种模式

vim是一款模式编辑器,对vim的操作进行在vim的三种模式之上。所谓三种模式分别是:1.命令(Normal)模式,默认模式,主要作用是移动光标,剪切/粘贴文本。2.插入(Insert)或编辑模式,主要作用是修改文本。3.扩展命令(extended command )模式,主要作用是保存,退出等。所以想要娴熟操作vim,在三种模式之间的切换是必不可少的。vim的模式切换是以命令模式为基础的,也就是打开文件时的第一个界面,vim打开文件默认是在命令模式界面。所以无论你是要进入扩展模式还是插入模式,都需要在命令模式进行切换,扩展模式和插入模式之间是不能直接切换的。

vim三种主要模式之间的切换: 按键

作用

Esc键 退出当前模式

2Esc键 总是返回到命令模式

ESC 插入模式转到命令模式

: 命令模式转到扩展命令模式

2ESC,enter 扩展命令模式转到命令模式

3.命令模式

1.命令模式进入插入模式

按键 作用

i insert, 在光标所在处输入

我的vimrclinux下的

我的vimrclinux下的

我的vimrclinux下的

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" windows gvim设定

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

source $VIMRUNTIME/vimrc_example.vim

source $VIMRUNTIME/mswin.vim

behave mswin

set diffexpr=MyDiff()

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 一般设定

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

" 配置多语言环境,解决中文乱码问题

if has("multi_byte")

" UTF-8 编码

set encoding=utf-8

set termencoding=utf-8

set formatoptions+=mM

set fencs=utf-8,gbk

endif

" set mapleader

"译注:映射快捷键开始命令为","号,g:表示全局设置.其使用方法见下

let mapleader = ","

let g:mapleader = ","

"那么这里可以用,w命令来代替:w!命令,亲自试一下,是不是方便多了,手不

"用再挪大半个键盘打几个键了.mapleader可以自由设定

nmap w :w!

nmap q :q

nmap wq :wq

if has("win32")

"本句的意思是快速重读配置文件,这样,就不需要关闭文件重开一下来读入

map s :source $vim/_vimrc

ViVim基本用法

ViVim基本用法

ViVim基本⽤法

Vi/Vim是Linux中⼀款功能强⼤的编辑器,vi是Visual Interface的缩写,即可视化接⼝,vim是vi iMprove的缩写,即 vi的增强版(具有语法

着⾊功能)。它在Linux上的地位就仿佛Edit程序在DOS上⼀样。它可以执⾏输出、删除、查找、替换、块操作等众多⽂本操作,⽽且⽤户

可以根据⾃⼰的需要对其进⾏定制。Vi不是⼀个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进⾏编排,它只是

⼀个⽂本编辑程序。 vi没有菜单,只有命令,且命令繁多。

1.Vim配置⽂件

全局vim配置⽂件:/etc/vimrc个⼈vim配置⽂件:~/.vimrc当我们需要设置Vim的部分功能时,我们可以通过修改配置⽂件来实现! 例如:永久添加⾏号--------->在配置⽂件中加上set nu2.Vim三级模式及相互切换

 三种模式

命令模式(默认):刚进⼊vim的时候,默认就是 命令模式,可以复制⾏,删除⾏等。 输⼊模式:可以输⼊内容。 末⾏模式:在最下边,除编辑模式,可以输⼊诸多管理员命令

命令⾏模式

任何时候,不管⽤户处于何种模式,只要按⼀下ESC键,即可使Vi进⼊命令模式;我们在shell环境(提⽰符为$)下输⼊启动Vi命令,进

⼊编辑器时,也是处于该模式下。在该模式下,⽤户可以输⼊各种合法的Vi命令,⽤于管理⾃⼰的⽂档。此时从键盘上输⼊的任何字符都被

当做编辑命令来解释,若输⼊的字符是合法的Vi命令,则Vi在接受⽤户命令之后完成相应的动作。但需注意的是,所输⼊的命令并不在屏幕

上显⽰出来。若输⼊的字符不是Vi的合法命令,Vi会响铃报警。

⽂本输⼊模式

在命令模式下输⼊插⼊命令i、附加命令a 、打开命令o、修改命令c、取代命令r或替换命令s都可以进⼊⽂本输⼊模式。在该模式下,⽤

户输⼊的任何字符都被Vi当做⽂件内容保存起来,并将其显⽰在屏幕上。在⽂本输⼊过程中,若想回到命令模式下,按键ESC即可。

vimrc语法

vimrc语法

vimrc语法

什么是vimrc?

vimrc是Vim编辑器的配置文件,用于个性化设置Vim的各种功能和选项。Vim是一款功能强大而又高度可定制的文本编辑器,通过修改vimrc文件,用户可以根据自己的喜好和需求来自定义Vim的行为。

vimrc文件的位置及命名规则

vimrc文件通常位于用户的home目录下,以隐藏文件的形式存在,文件名为”.vimrc”。在Windows系统中,文件可能会被命名为”_vimrc”。如果想要使用全局的配置文件,也可以将vimrc文件放置在Vim的安装目录中。

vimrc文件的基本语法

vimrc文件是一个文本文件,可以使用任何文本编辑器进行编辑。该文件使用Vim脚本语言编写,脚本中的每一行代表一个设置或命令。下面列举了一些常用的vimrc语法:

1. 设置选项:可以使用set命令来设置Vim的选项。例如:set number可以显示行号,set tabstop=4可以设置Tab键的宽度为4个空格。

2. 定义快捷键:可以使用map命令来定义快捷键映射。例如:map :w将F2键映射为保存文件的快捷键。

3. 启用插件:Vim支持插件扩展,可以使用plugin命令来启用插件。例如:plugin indentline可以启用缩进线插件。

4. 设置自动命令:可以使用autocmd命令来设置自动命令。例如:autocmd

FileType python set tabstop=4可以在打开Python文件时自动设置Tab键宽度为4个空格。

vimrc文件的常用配置项

vimrc文件支持众多的配置项,可以根据个人需求进行自定义设置。下面列举了一些常用的配置项及其用法: 编辑相关配置

• set tabstop=4:设置Tab键的宽度为4个空格。

• set shiftwidth=4:设置缩进时的宽度为4个空格。

• set expandtab:将Tab键转换为空格。

• set autoindent:启用自动缩进。

vim配置显示行号和语法高亮即.vimrc文件的配置

vim配置显⽰⾏号和语法⾼亮即.vimrc⽂件的配置

在终端下使⽤vim进⾏编辑时,默认情况下,编辑的界⾯上是没有显⽰⾏号、语法⾼亮度显⽰、智能缩进等功能的。

为了更好的在vim下进⾏⼯作,需要⼿动设置⼀个配置⽂件:.vimrc。

在启动vim时,当前⽤户根⽬录下的.vimrc⽂件会被⾃动读取,该⽂件可以包含⼀些设置甚⾄脚本,所以,⼀般情况下把.vimrc⽂件创建在当前⽤户的根⽬录下⽐较⽅便,即创建的命令为:$vi ~/.vimrc

设置完后$:x 或者 $wq

进⾏保存退出即可。

下⾯给出⼀个例⼦,其中列出了经常⽤到的设置,详细的设置信息请参照参考资料:“双引号开始的⾏为注释⾏,下同

“去掉讨厌的有关vi⼀致性模式,避免以前版本的⼀些bug和局限

set nocompatible

“显⽰⾏号

set nummber

“检测⽂件的类型

filetype on

“记录历史的⾏数

set history=1000

“背景使⽤⿊⾊

set background=dark

“语法⾼亮度显⽰

syntax on

“下⾯两⾏在进⾏编写代码时,在格式对起上很有⽤;

“第⼀⾏,vim使⽤⾃动对起,也就是把当前⾏的对起格式应⽤到下⼀⾏;

“第⼆⾏,依据上⾯的对起格式,智能的选择对起⽅式,对于类似C语⾔编

“写上很有⽤

set autoindent

set smartindent

“第⼀⾏设置tab键为4个空格,第⼆⾏设置当⾏之间交错时使⽤4个空格

set tabstop=4

set shiftwidth=4

“设置匹配模式,类似当输⼊⼀个左括号时会匹配相应的那个右括号

set showmatch

“去除vim的GUI版本中的toolbarset guioptions-=T

“当vim进⾏编辑时,如果命令错误,会发出⼀个响声,该设置去掉响声

set vb t_vb=

“在编辑过程中,在右下⾓显⽰光标位置的状态⾏

set ruler

“默认情况下,寻找匹配是⾼亮度显⽰的,该设置关闭⾼亮显⽰

linux修改配置文件常用的命令

- 1 - linux修改配置文件常用的命令

在Linux系统中,我们经常需要修改配置文件来改变系统行为,以下是一些常用的命令:

1. vim:vim是Linux常用的文本编辑器,可以用来打开配置文件,进行修改和保存。

2. cat:cat命令可以查看文件内容,并且可以将多个文件合并输出。

3. echo:echo命令可以将文本输出到终端或文件中,可以用来添加新行或修改配置项。

4. grep:grep命令可以搜索文本,并输出匹配的行,可以用来查找特定的配置项。

5. sed:sed命令可以编辑文本,可以用来修改配置项或删除行。

6. awk:awk命令可以对文本进行处理和分析,可以用来提取和修改配置项。

7. mv:mv命令可以用来移动和重命名文件,可以用来备份和恢复配置文件。

以上是Linux修改配置文件常用的命令,掌握它们可以方便地修改和管理系统配置。

ubuntu_vim配置文档

1. Vim (很强的编辑器)

安装: 可以直接在 应用程序/ubuntu软件中心/vim 然后点击GVim 安装;安装完成后,Vim 主要配置文件(vimrc)可以在usr/share/vim 中查看到,并且所有用户共享的配置文件,当然属于自己用户的配置可以在 /home/{your_user} 下建立一个.vim 的隐藏文件夹,然后把自己需要配置文件与插件放进去。

提供一份现在使用的配置 vimrc:

" All system-wide defaults are set in $VIMRUNTIME/debian.vim (usually just

" /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime

" you can find below. If you wish to change any of those settings, you should

" do it in this file (/etc/vim/vimrc), since debian.vim will be overwritten

" everytrime an upgrade of the vim packages is performed. It is recommended to

" make changes after sourcing debian.vim since it alters the value of the

" 'compatible' option.

" This line should not be removed as it ensures that various options are

" properly set to work with the Vim-related packages available in Debian.

VIM的自动换行及自动折行设置

VIM的自动换行及自动折行设置

VIM 的自动换行及自动折行设置

以 .vimrc 文件中的设置为例:

" 自动换行是每行超过 n 个字的时候 vim 自动加上换行符

" 需要注意的是,如果一个段落的首个单词很长,超出了自动换行设置的字符,

" 这种情况下不会换行。

" 于是,中文就悲剧了,因为中文中很少出现空格,字之间没有,句子之间也没有。

" 于是不会触发自动换行的处理。

" 对已经存在的文本,不做自动换行处理,只有新输入文本的才会触发。

" 如要对已存在的文本应用自动换行,只要选中它们,然后按gq就可以了。

set textwidth=78

" 上面所说的中文不能自动换行的问题,可以通过下面的配置解决.

" m - Also break at a multi-byte character above 255. This is

useful for

" Asian text where every character is a word on its own.

" M - When joining lines, don't insert a space before or after

a

" multi-byte character. Overrules the 'B' flag.

set formatoptions+=mM

" 自动折行是把长的一行用多行显示 , 不在文件里加换行符

" 设置自动折行(默认开启)

" set wrap " 设置不自动折行

" set nowrap

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档