今天给大家介绍一下Linux中VIM的使用方法是什么。文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面跟着小编的思路一起来阅读吧。
vim可以说是vi的加强版,其功能非常的强大,具有代码补全、编译及错误跳转等功能,被防范使用,这篇文章和大家分享一下VIN的使用方法。
一、vi、vim介绍
(1)基于图形界面,如gedit、geany等;
(2)基于命令行,如nano、vi、joe等;
每个命令行界面的文本编辑器都有各自不同的快捷键,比如nano的保存为CTRL+W,vim的保存为:w; 基于命令行的文本编辑器是必要的,Linux的tty1~tty6都是命令行界面,是打不开图形界面的文本编辑器的; vi是每个Linux Distribution都默认安装的文本编辑器,并且很多软件的默认编辑器都是vi,因此学习vi是很必要的; vim是vi的高级版本,vi是文本编辑器,而vim应该说是程序编辑器,因为能够像一般的IDE一样,根据文件名载入不同的语法高亮,即颜色区分,比如java文件会遵循java的语法高亮;
下面我们就编写一个”hello world”的java程序来看看vim的语法高亮;
可以看出vim有很好的语法检查功能,因为关键字都使用了不同的颜色标出;
vi有三种模式:
(1)一般模式:进入vi的默认模式,能够进行复制、黏贴、删除等操作; (2)编辑模式:从一般模式按下‘i’即可进入; (3)命令行模式:从一般模式按下“:”、'?'、'/'即可进入;
注意:如果安装了vim后,输入vi后也是使用vim编辑器,我们输入alias后看到“alias vi=’vim’”;
二、vi/vim按键
“一般模式”的常用按键:
“一般模式”的常用按键 | 按键含义 |
---|---|
h | 向左 |
J | 向下 |
K | 向上 |
l | 向右 |
20h | 向左20个字符 |
20j | 向下20行 |
20k | 向上20行 |
20l | 向右20个字符 |
Page Up | 向上翻页 |
Page Down | 向下翻页 |
Home | 光标移到当前行的最左端 |
End | 光标移到当前航的最右端 |
n [空格] | 光标向右移动n个字符 |
N[Enter] | 光标向下N行 |
G | 光标移到最后一行 |
nG | 光标移动到第n行 |
gg或1G | 光标移动到第一行 |
/word | 向下查找word |
?word | 向上查找word |
n | 如果是/word后使用,则表示向下继续查找; 如果是?word后使用,则表示向上继续查找; |
N | 如果是/word后使用,则表示向上继续查找; 如果是?word后使用,则表示向下继续查找; |
:n,m/old/new/g | 从第n行到第m行中,将old替换为new |
:n,$s/old/new/g | 从第n行到最后一行中,将old替换为new |
u | 类似windows中的CTRL+Z,前一步 |
x | 向后删除一个字符 |
X | 向前删除一个字符 |
3x | 向后删除3个字符 |
3X | 向前删除3个字符 |
dd | 删除当前行 |
3dd | 删除当前行开始的3行 |
yy | 复制当前行 |
3yy | 复制当前行开始的3行 |
p | 黏贴到当前光标的下一行 |
P | 黏贴到当前光标的上一行 |
CTRL+r | 重做前一个操作 |
“命令行模式”的常用按键:
“命令行模式”的常用按键 | 按键含义 |
---|---|
:w | 保存 |
:q | 退出vim |
:wq | 保存并退出 |
:wq! | (在可以转换权限的情况下)强制保存并退出 |
:q! | 直接退出不保存 |
:w filename | 另存为filename |
:n,m w filename | 将第n行到第m行另存为filename |
:set nu | 显示行号 |
:set nonu | 不显示行号 |
:! command | 暂时离开vim,并执行command,执行完后再进入vim |
:r filename | 将filename文件的数据读入当前文件 |
:set all | 显示当前vim的环境配置 |
三、vim的恢复机制
vim正在编辑某个文件时都会同时存在.file.swp,此文件用来暂存,帮助恢复文件内容,当vim正常关闭此文件时,.filename.swp文件会消失。
我们看到图中说明了出现此界面的两个原因:
(1)多人同时编辑此文件:因为Linux是多用户的操作系统,因此可能两个人同时登陆并编辑此文件,如果A进入系统开始编辑1.txt文件,则会出现.1.txt.swp,当A还没编辑完但B也想进去编辑时,因为此文件的目录中存在.1.txt.swp,则就会出现上图的界面; (2)非正常关闭文件;
图中最后一行说明了我们此时可以采取的几个动作:
(1)o:以只读方式打开; (2)R:恢复,即从swp文件中恢复,但是swp文件不会随着vim关闭而删除,需要手动删除; (3)d:删除swp文件; (4)q:退出vim;
四、vim记录及默认配置文件
/etc/vimrc文件为全局vim配置文件。
1.如果我们用xiazdong账户使用vim后,在/home/xiazdong就会出现.viminfo文件,此文件用来作为vim的日志,记录用户使用vim打开了什么文件,做了什么操作; 2.如果xiazdong账户想要配置vim的默认环境,则可以在/home/xiazdong创建.vimrc,并且配置一些特征,比如显示行号,语法检查等;
一般使用如下配置:
set hlsearch set backspace=2 set autoindent set nu set ruler set showmode set bg=dark syntax on
五、Visual Block功能
Visual Block功能可以用于块复制。
(1)CTRL+v:开始复制块; (3)y:复制块; (4)p:黏贴块; (5)d:删除块
六、同时编辑多个文件
多文件编辑的好处是能够将一个文件的某些内容yy后,p到另一个文件中。
vim file1 file2 即可同时编辑两个文件,但是屏幕中同时只会出现一个文件内容,需要进行切换。
(1):n:向下切换; (2):N:向上切换; (3):files:列出当前编辑的所有文件;
七、多窗口编辑
如下图:一个界面能够显示多个文件内容。
(1):sp:打开当前文件; (2):sp filename:打开filename文件; (3)CTRL+w+↓:光标切换到下一个窗口; (4)CTRL+w+↑:光标切换到上一个窗口; (5):q:关闭光标所在的窗口;
八、编码问题
可能会出现乱码问题,解决方法:保持终端的字符编码与文件的字符编码一致!tty1~tty6不支持显示中文,因此在tty1~tty6中显示中文必出现乱码,设置终端的字符编码。
编码转换命令:iconv iconv -f文件的原本编码-t文件的新编码filename -o newfilename 比如有一个big5编码的文件:1.big5,要转换成utf8的文件:2.utf8,则iconv -f big5 -t utf8 1.big5 -o 2.utf8
以上就是Linux中VIM的使用方法是什么的全部内容了,更多与Linux中VIM的使用方法是什么相关的内容可以搜索亿速云之前的文章或者浏览下面的文章进行学习哈!相信小编会给大家增添更多知识,希望大家能够支持一下亿速云!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。