在Linux中使用vim编辑器

作者:曾Jerry 或 大橙员, 250359225@qq.com

vi/vim给我的第一印象就是非常不友好,可是大神还是建议我们要学会一点vi/vim的操作,因为就算你不把vi/vim当成主编辑器,只要你在Linux中,还是会碰到vi/vim的场景。说回来,只是自己菜,vi/vim是一个很强大的编辑器。

另外,现在一般使用vim, 把vim当成vi的升级版本就行。

vim的安装

$ sudo apt install vim

vim的配置

复制系统原有的配置到自己根目录下面:

$cp /etc/vim/vimrc ~/.vimrc

在.vimrc中加入如下内容, 可用gedit来编辑:

"关闭兼容功能
set nocompatible 
"显示行号
set number
"编辑时 backspace 键设置为2个空格
set backspace=2
"编辑时 tab 键设置为4个空格
set tabstop=4
"设置自动对齐为4个空格
set shiftwidth=4
"搜索时不区分大小写
set ignorecase
"搜索时高亮显示
set hlsearch

另外一个比较高级的配置如下:

set nocompatible
syntax on
set showmode
set mouse=a
set encoding=utf-8  
set t_Co=256
filetype indent on
set autoindent
set tabstop=2
set shiftwidth=4
set expandtab
set softtabstop=2

set number
set cursorline
set textwidth=80
set wrap
set linebreak
set wrapmargin=2
set scrolloff=5
set laststatus=2
set  ruler
set showmatch
set hlsearch
set incsearch
set ignorecase

set spell spelllang=en_us
set nobackup
set noswapfile
set undofile
set backupdir=~/.vim/.backup//  
set directory=~/.vim/.swp//
set undodir=~/.vim/.undo// 
set autochdir
set visualbell
set noerrorbells
set history=1000
set autoread
set wildmenu
set wildmode=longest:list,full

效果如下:
在这里插入图片描述

vim的三种模式

1)一般模式(光标移动、复制、粘贴、删除)
2)编辑模式(编辑文本)
3)命令行模式(查找和替换、保存和退出)

注意:
1)当不知道处于何种模式时,按ESC键返回到一般模式。

vim的基本操作

打开文件、新建文件、保存文件

vim 文件名
如果文件存在,输入结束后,:wq保存并退出文件
如果文件不存在,输入结束后,:wq就可以新建并保存文件

在编辑完成时,返回一般模式,
1)输入:w则保存文件,如果已经保存文件,输入:q则退出文件
2)直接输入:wq保存并退出
3)如果不想保存被修改的内容,则:q!强制退出。

进入编辑模式

  • i(在光标前开始插入文本)
  • a在光标后开始插入文本
  • o(在当前行之下新开一行,并到行首)

光标移动

在一般模式下,hjkl这四个按键就可以移动光标:

  • h(左), j(下), k(上), l(右)

快速的定位到某一行:

  • ngg光标移至第n行的行首(n为数字),
    • 如1gg就跳到第一行的行首,就是文件头
    • 如2gg就跳到第二行的行首
  • G转至文件结尾

注意:ngg和G是在一般模式

在某一行如何快速定位到某一列:

  • 0(数字零)光标移至当前行行首
  • $光标移至当前行行末
  • fx搜索当前行中下一个出现字母x的地方

注意:0、$、fx是在一般模式

文本复制、粘贴、删除、撤销

  • yy复制当前行(y:yank(复制))

  • nyy复制当前行及其后的n-1行(n是数字)

  • 使用P键来粘贴(p:paste)

  • dd 删除光标所在行(d:delete)

  • ndd 删除当前行及其后的n-1行(n是数字)

  • 按u键来撤销上一步操作

  • x删除光标所在位置的字符

注意:yy/nyy/dd/ndd/x/u都是在一般模式。

查找和替换

  • /pattern 从光标开始处向文件尾搜索pattern,后按下n或N
    • 在/pattern之前先跳到第一行则进行全文件搜索

注意:

  • n在同一个方向重复上一次搜索命令
  • N在反方向重复上一次搜索命令
  • n(N)来源于next

:%s/p1/p2/g将文件中所有的p1均用p2替换
:%s/p1/p2/gc替换时需要确认

s:substitute替换
g:global全局
c:confirm确认

举例

1)用vi 新建一个文件test2.txt,然后输入”welaome to the world of vi.”,并保存。
2)由于拼写错误,需要将其中的welaome中的a替换成c。
3)在上步的基础上,复制第一行到第二行和第三行。
4)在上步的基础上,删除第三行的全部内容。
5)在上步的基础上,搜索出现vi的地方。
6)在上步的基础上,将字符串vi替换成vim。
7)保存并退出。

小结

vi编辑器有三种模式
1)一般模式(光标移动、复制、粘贴、删除、撤销)
hjkl、ngg/G、0、$、fx
yy/nyy
p
dd/ndd、x
u
2)编辑模式(编辑文本)
i a o

3)命令行模式(查找和替换、保存退出文件)
/pattern、:%s/p1/p2/gc、:wq

参考

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值