vim 快捷键以及设置语法高亮vimrc

一、设置vim语法高亮显示和自动缩进

      1、配置文件的位置

在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,通常已经存在一个.vimrc文件。

基本设置

设置高亮行和列有两种方式进行设置

set cursorcolumn
set cursorline
" or
set cuc
set cul

我建议使用第一种方式,这样可以看到配置就能知道是干什么用的了, 同时再加上注释,因为随着配置越来越多,最后自己可能都忘了这些 配置是用来干嘛的了。我们看一下效果图

初步效果

美化

1. 安装dircolors:

git clone https://github.com/seebi/dircolors-solarized.git

cd dircolors-solarized/

mv dircolors.ansi-dark ~/.dircolors

 vim  /etc/profile

在bash_profile中添加:

export TERM=xterm-256color
if [ -x /usr/bin/dircolors ]; then
  alias ls='ls --color=auto'
  alias dir='dir --color=auto'
  alias vdir='vdir --color=auto'
  alias grep='grep --color=auto'
  alias fgrep='fgrep --color=auto'
  alias egrep='egrep --color=auto'
  alias tree='tree -C'
fi

 

重新登录后,生效。

我们现在已经能快速的分别光标所在的位置了,但是离我们最终需要的 效果还差一些,因为当前行是一条横线,所以有时候很难区分英文的逗号 和句号,在这个基础上我们需要加入一下配置

highlight CursorLine   cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
highlight CursorColumn cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE

自动缩进和对齐

set autoindent

set smartindent

默认显示行号

set number

"代码补全

set completeopt=preview,menu

" 在处理未保存或只读文件的时候,弹出确认

set confirm

 

" Tab键的宽度

set tabstop=4

" 统一缩进为4

set softtabstop=4

set shiftwidth=4

 " 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位)

set mouse=a

set selection=exclusive

set selectmode=mouse,key

 "搜索忽略大小写

set ignorecase

"搜索逐字符高亮

set hlsearch

set incsearch

 

" 在被分割的窗口间显示空白,便于阅读

set fillchars=vert:\ ,stl:\ ,stlnc:\

" 高亮显示匹配的括号

set showmatch

" 匹配括号高亮的时间(单位是十分之一秒)

set matchtime=1

"自动补全

  "自动补全
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
":inoremap { {<CR>}<ESC>O
":inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap " ""<ESC>i
:inoremap ' ''<ESC>i
function! ClosePair(char)
	if getline('.')[col('.') - 1] == a:char
		return "\<Right>"
	else
		return a:char
	endif
endfunction
filetype plugin indent on 
"打开文件类型检测, 加了这句才可以用智能补全
set completeopt=longest,menu

!!最终配置[文件最后加上就行了]--直接编辑/etc/ 下面,有个名为vimrc的文件,加到最后保存就行了,我配置好的

                                                                                                                                     
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i

set cul
set cuc
highlight CursorLine   cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
highlight CursorColumn cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
set autoindent
set smartindent
set completeopt=preview,menu
set syntax=on
" Tab键的宽度
set tabstop=4
" " 统一缩进为4
set softtabstop=4
set shiftwidth=4
 
 
"搜索忽略大小写
set ignorecase
""搜索逐字符高亮
set hlsearch
set incsearch

set fillchars=vert:\ ,stl:\ ,stlnc:\
set showmatch
set scrolloff=3
set matchtime=1  

" set number
""
""set mouse=a
""set selection=exclusive
" "set selectmode=mouse,key
 
" "set laststatus=2
inoremap ' ''<ESC>i
inoremap " ""<ESC>i  

VIM快捷键

首先是vim自带的常用命令:

行号相关:

显示行号: :set number

隐藏行号: :set nonumber

修改撤销相关:

回退(相当于Ctrl+Z): u

撤销回退:ctrl+r

翻页相关:

上一页:Page Up(Win) ctrl+↑(Mac)  

下一页:Page Down(Win) ctrl+↓(Mac)

光标移动相关:
 

行首:Home(Win) ctrl+←(Mac)    (支持前加g)

行尾:Home(Win) ctrl+←(Mac)    (支持前加g)
回到底部:GG

回到顶部:gg

上下左右移动:上下左右(同行之间移动前加g)

移动到光标的下一个x处:fx

往前移动一个单词:w

往后移动一个单词:b

移动光标到屏幕上面:H

移动光标到屏幕中间:M

移动光标到屏幕下面:L

nG:移动光标到第n行

:n:移动光标到第n行

跳到上一个空行:shift + (

跳到下一个空行:shift + )

查找替换相关:

查找string:/string

查找关键字下一个:n

查找关键字上一个:shift + #

空格替换成,::%s/\s\+/,/g

替换每行第一个的str1为str2:%s/str1/str2

替换所有的str1为str2:%s/str1/str2/g

分屏相关:

垂直分屏: :vsplit

水平分屏: :split

分屏切换下一个:control + ww

分屏切换:control + w + ↑/↓

选中和复制粘贴相关:

Ctrl+v:进入列模式,自由上下选中,按d删除

可视选择模式:v(按字符选择)     V(按行选择)    d:(剪贴)    y:(拷贝)    c:(剪贴并进入插入模式)

非可视选择模式:dd:(剪切当前行)    yy:(拷贝当前行)

粘贴:p

复制6~9行到12行::6,9 co 12

全部删除:按esc后,然后dG

全部复制:按esc后,然后ggyG

全选高亮显示:按esc后,然后ggvG或者ggVG

复制相关:

添加注释:大写V选中需要注释的行, Ctrl+v进入列模式,大写I进入插入模式,输入#或//,连续按2下ESC

取消注释:ctrl+v进入列模式,选中注释符号,d删除

 

写代码相关:

Ctrl+n:代码补全

]p:和p的功能差不多,但是它会自动调整被粘贴的文本的缩进去适应当前代码的位置

%:匹配花括号,方括号,括号等。在一个括号的上面,然后按%,鼠标就会出现在匹配的另外一半括号处

>>:缩进所有选择的代码

<<:和上面类似,但是反缩进

gd:到达光标所在处函数或者变量的定义处

:set paste 粘贴代码避免格式混乱

:Set nopaste

jobs相关:
 

jobs:显示当前运行的jobs

Ctrl+z:显示jobs控制台

fg %n:打开id为n的job

gd %n:关闭id为n的job

Vundle(vim插件管理器)安装:

https://blog.csdn.net/freeking101/article/details/62037015?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1.channel_param

  • 0
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
vimrcVim编辑器的配置文件,用于定制Vim的行为和外观。通过修改vimrc文件,可以个性化Vim并增强编辑器的功能。以下是对vimrc配置文件的一些说明: 1. 位置和命名:vimrc文件通常位于用户的主目录下,文件名为.vimrc。 2. 配置选项:vimrc文件由一系列Vim的配置选项组成,每个选项占据一行。可以用来设置诸如字符终端类型、自动缩进、语法、文件编码以及插件管理等。 3. 语法vimrc文件使用Vim的自定义配置语法,主要包含指令和变量设置。指令可以是Vim命令,例如set、map等,用于配置编辑器的行为。变量设置用于定义变量并设置其值,常见的变量包括tabstop、shiftwidth等。 4. 插件管理:vimrc文件常用于管理Vim的插件。通过在文件中添加插件管理命令,如使用Vundle、Pathogen或Plug等插件管理器,可以方便地安装、更新和删除Vim插件。 5. 用户定义函数和快捷键vimrc文件还可以包含用户定义的函数和快捷键映射。这些可以通过编写自定义函数和使用map命令定义快捷键,使得Vim可以根据个人喜好定制编辑器的功能。 6. 分离设置:由于vimrc文件内容较多,为了提可读性和维护性,可以将不同的设置分离到不同的文件中,然后在vimrc文件中使用source命令引入这些文件进行设置。 总之,vimrc文件是Vim编辑器的配置文件,通过增加、修改和删除其中的配置选项、指令、变量设置、插件管理命令以及用户定义函数和快捷键映射,可以个性化Vim编辑器并提升编辑效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值