数字IC——GVIM的基本操作

1、Vi、Vim、Gvim

Vi是Visual interface(可视化接口)的缩写,是UNIX系统文本编辑的标准工具,所有Vi编辑程序下的文件均为ASCII文件。

Vim的全称是Vi IMproved,是从Vi发展出来的一个文本编辑器,具有高度可配置的特点,旨在使创建和更改任何类型的文本变得非常高效。

GVimVim加入了图形用户接口(Graphical User Interface,GUI),和Vim的功能一摸一样。 

由于更好的使用体验,在数字IC设计中多使用GVIM,本文主要介绍GVIM的基本操作。

2、GVIM的配置

在使用之前,如何打造一个自己喜欢的gvim界面呢?

在terminal中输入

gvim ~/.vimrc

我们还会使用到.bashrc,后续我会出一篇针对数字IC的.bashrc使用心得。

我用的配置比较简单,但是非常实用!页面也很清爽,下面分享给大家。

//设置行号及行号列宽
set number
set numberwidth=4
//光标所在行高亮
set cursorline
//光标所在列高亮
set cursorcolumn
//状态栏显示光标的当前位置
set ruler

//设置字体
set guifont=Courier\ New\ 16
//启用256se
set t_Co=256

//设置backspace键为2个空格
set backspace=2
//设置tab键为4个空格
set tabstop=4
//设置自动对齐为4个空格
set shiftwidth=4
//按下回车键后,下一行的缩进会和上一行的缩进保持一致
set autoindent
//自动折行
set wrap

//搜索时不区分大小写
set ignorecase
//搜索时高亮显示
set hlsearch
//打开语法高亮
syntax on

//光标遇到(、[、{ 时,自动高亮另一半
set showmatch
//在底部显示当前处于命令模式还是插入模式
set showmode
//命令模式下,显示当前键入的指令
set showcmd
//输入模式下,每输入一个字符就自动跳到第一个匹配结果
set incsearch

 补充1:新建文件的两种方式

gvim file.txt
touch file.txt

  补充2:行首行尾定位

Home:定位到行首

End:定位到行尾

  补充3:比较两个文件的内容

gvimdiff file1 file2

 

3、GVIM编辑器的使用

gvim编辑器共有四种模式:

  1. 命令(command)模式
  2. 插入(insert)模式
  3. 底行模式(ex转义模式)
  4. 可视(visual)模式

3.1 模式功能及切换方法

命令模式:当用户进入gvim编辑器,即处于命令模式,在命令模式下用户输入的内容被翻译成命令并传给gvim编辑器。

插入模式:输入I / A / O / i / a / o即可进入插入模式,用户键入的内容,都作为ASCII文本来接受并显示。

大写 I :在光标所在行首

小写 i :光标处

大写 A :在光标所在行尾

小写 a :在光标右侧

大写 O :在光标处上增一行

小写 o :在光标处下增一行

I / A / O / i / a / o的区别大家了解即可,一般用小写 i 进入插入模式。

底行模式:输入“ ctrl+: ”即可进入底行模式,并在那里输入命令的其他部分。

可视模式:为了便于选取文本,vim引入了可视模式,在命令模式下输入“ ”即可进入。

 

3.2 命令模式的操作

  • 移动光标

可通过⬆、⬇、⬅、➡来移动光标。

  • 撤销重做

撤销:“ u ”

重做:“ ctrl+r ”

  • 删除操作:

删除单个字符:按“ X ”

删除词:光标移到第一个字符上,按“ dw ”键(delete word)

删除一行:光标移至该行的任意位置,按“ dd ”

删除n行:光标移至该行的任意位置,按“ ndd ”

删除当前行到最后一行:光标移至该行的任意位置,按“ dG ”

删除光标至行尾所有字符:按“ d$ ”

  • 替换操作 

替换字符:选中需要替换的字符,键入“ r ”,再键入需要替换的字符。(replace)

上下两行替换:“ ddp ”,先dd,再执行p。

大小写替换:首先用组合键“ ctrl ”+“ v ”,并移动方向键将字符串选中,按“ U ”键将小写字母替换为大写字母,反之“ u ”

  • 修改操作

修改当前字符:“ cl ”清除当前字符并进入insert模式

修改当前行:“ cc ”清除当前行并进入insert模式

修改到行尾的内容:“ c$ ”清除光标位置至行尾并进入insert模式

  • 复制粘贴
命令功能
yw复制光标处的单词
y$复制光标至行尾的字符
yy/Y复制当前行
nyy复制当前n行
p粘贴在光标后
P粘贴在光标前
  • filelist中打开文件

直接文件跳转::“ gf ”

回到原来的文件:“ ctrl+o ”或者“ :bd ”或者“ :b1 ”

3.3 插入模式的操作

正常情况下,插入模式是供使用者编辑文本使用的,这里将不再赘述,但是也存在一些比较使实用的操作。

指令功能

ctrl+p

ctrl+n

字符自动补全(推荐!!!)

 

3.4 底行模式的操作 

首先在命令模式下输入“ ctrl+: ”进入底行模式

  • 保存文件

键入“ :w ”,再按回车键,将当前编辑的ASCII文本写入磁盘。

  • 退出vi编辑程序

键入“ :q”,再按回车键即可退出,如果文件自上次保存有改动,则该命令无效。“ :q!”可强制退出!

报错信息
  • 替换操作 

全局替换:键入“ :%s”,例如:将文中所有的abc都替换为123

:%s/abc/123/g //g是global的意思

例:将3-5行的abc替换为123

:3,5s/abc/123/g
  • 搜索操作

在命令模式下键入“ / ”支持正则表达式

查找下一个:按“ n ”

查找上一个:按“ N ”

搜索历史:键入斜杠“ / ”,⬆和⬇可以查看历史搜索。

命令历史:键入冒号“ :”,⬆和⬇可以查看历史命令。

查找当前单词:光标移动到要查找的单词,按下组合键“ shift ”+“ * ”

查找当前单词:光标移动到要查找的单词,按下组合键“ shift ”+“ # ”

  •  小tips:文件的加密 

加密方式:

  1. 键入“ :X ”
  2. Enter encryption key:输入密码

打开方式:

  1. $ gvim -x(小写) filename
  2. Enter encryption key:输入密码即可打开

解密方式:

  1. 键入“ : set key= ”
  2. 直接打开即可
  • 自动添加字符串
:ab string strings //ab是abbreviate的缩写

 当在文件中插入string时,strings就自己蹦出来啦,非常神奇~

  • 排序操作

!sort是通过调用shell的sort程序来进行排序。

sort是通过调用vim的sort程序来进行排序。

  • 查询vim设置

如何查询当前gvim是否进行了相关配置呢?

可以在配置后加一个问号,例如:

:set wrap?
  • 一些高级指令
指令功能逆指令
:set ic不区分大小写:set noic
:set wrap分行显示:set nowrap
指令功能
:f查看当前文件名
:pwd

查看当前目录

:e ctrl+d查看当前目录下的文件
:ctrl+d查看可选的命令

 

3.5 可视模式的操作

  1. 键入“ v ”进入字符可视化模式(VISUAL),文本选择是以字符为单位的。
  2. 键入“ V ”进入行可视化模式(VISUAL LINE),文本选择是以行为单位的。
  3. 键入“ ctrl+v ”进入块可视化模式(VISUAL BLOCK),文本选择是以块为单位的。

可视模式的操作

命令功能
d剪切
y复制
p粘贴
  • 竖选

竖选插入:首先键入 “ ctrl+v ”进入块可视化模式(VISUAL BLOCK),选中多行,然后使用 “ shift+i ”进行竖选插入,按 “ ESC ”键使设置生效。

竖选替换首先键入 “ ctrl+v ”进入块可视化模式(VISUAL BLOCK),选中多行,然后输入 “ r ”进行竖选替换,输入替换后的字符,按 “ ESC ”键使设置生效。

 

3.6 多窗口操作

  • 上下打开新窗口:键入“ :sp ”或者运用组合键“ ctrl ”+“ w ”+“s”

在命令模式下运用组合键“ ctrl ”+“ w ”切换窗口

在底部模式下键入“ q! ”即可

  • 左右打开新窗口:键入“ :vsp ”或者运用组合键“ ctrl ”+“ w ”+“v”

  • 其他操作

查看父目录的内容:键入“ :E ”,通过⬆和⬇可对文件进行选择,随后回车即可打开。

刷新:键入“ :e ”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值