VI设置及用法

时间:2023-03-08 22:54:38
VI设置及用法

VI设置
通过/etc/vim/vimrc设置vi的基本操作格式。 全局属性
通过末行模式输入可临时设置。
syntax on ;高亮显示
set tabstop=4
setsofttabstop=4 ;设置(软)制表符宽度为4
set shiftwidth=4 ;设置缩进的空格数为4
set autoindent ;设置自动缩进
set nu ;左行显示文本行号
set nonu        ;去除行号

set ic ;忽略大小写 ignore case
set cursorline ;show line
--------------------------------------------------------------------------------------
let &termencoding=&encoding
set fileencodings=utf-8,gbk ;中文乱码问题

自定义快捷键
:map <F10> <Esc>:tabnew<CR>
其中:<Esc>代表Escape键;<CR>代表Enter键;而功能键则用<F10>表示。首先进入命令行模式,然后执行新建标签页的:tabnew命令,最后返回常规模式。
同理:对于组合键,可以用<C-Esc>代表Ctrl-Esc;使用<S-F1>表示Shift-F1。对于Mac用户,可以使用<D>代表Command键。
注意:Alt键可以使用<M-key>或<A-key>来表示。
关于键盘符号的详细说明,请使用:h key-notation命令查看帮助信息
map <F5> <ESC>:tp<CR> //tags 查找同一标签的上一处
map <F6> <ESC>:tn<CR>      //tags 查找同一标签的下一处

自定义状态栏:
set laststatus=2
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [ASCII=\%03.3b]\ [HEX=\%02.2B]\ [POS=%04l,%04v][%p%%]\ [LEN=%L]
-----------------------------------------------------------------------------------------------------
:ab hw hello world 用一个缩写字符串代替一个长的字符串,此处用 hw 代替 hello world
-----------------------------------------------------------------------------------------------------
vi用法
1.移动光标
h 左移 l 右移 j 上移 k 下移动
0 光标移动到该行开头
$ 光标移动到该行末尾
G 光标移动到最后一行的开头
ctrl + b 向前卷一页
ctrl + f 向后卷一页

n+ 光标上移n行,
n- 光标下移n行

$:移动到行尾 3$:移动到3行后的行尾
^:移动到行首,0也是
+:移到下一行的行首
-: 移到上一行的行首
2.复制文本
yy 将光标 整行复制
yw 复制光标所处的整个单词
nyw 复制光标所处及后面n个单词
nyy 复制光标所处行及后面n行
p 粘帖
3. 删除文本
dd 连按两次d,可将光标所在的行删除。若要连续删除,可以按住d不放。
ndd 连续删除n行
D 将光标所在行后所有的单词删除
4.撤销操作
u撤销上一步操作
ctrl+r 恢复上次撤销的动作。
5.找出行数及其他按键
ctrl+g 在最后一行显示光标所在位置的行数及文章的总行数
nGG 将光标移动至n行首
ZZ 连续两次输入Z ,表示保存文件并退出vim。
6.最后行操作模式的主要命令
e 在vim编辑中,可使用e创建新文件
w! 如果要写只读文件,可以使用W!强制写入文件。
q! 强制退出
set nu set可以设置vim的某些特性,这里是设置每行的开头提示行数,要取消设置set none
7.搜索
/string 向后搜索字符串
?string 向前搜索字符串 n向后 N向前
# 到与当前单词相同的上一个单词上, * 到与当前单词相同的下一个单词上
8. gg到文件开头,G到文件结尾行