Linux终端中的编辑器
Vim
vi/vim 都是Linux中的文本编辑器,Vim是vi的加强版,支持文本高亮提示之类的功能,在终端中如果编辑文件是无法打开图形化界面的编辑器的,所以我们需要学习一款面向屏幕的文本编辑器。
三种模式
命令模式
使用vim打开后就进入的是命令模式,通过 命令 对文件进行常规的编辑操作,例如:定位,复制,删除,黏贴等
编辑模式
在命令模式下按 i 就能进入编辑模式,按 ESC 可退出编辑模式
末行模式
在命令模式下 按 : 可进入末行模式,这时可以输入命令来执行
以go的helloword为例子
在终端中可以使用 vim helloword.go 进入命令模式
这时如果想要在编辑其中输入文字就需要按 i 进入编辑模式,这时候就可以在编辑器中输入文字了,在编辑模式中与其他的普通编辑器没多大的差别
package main import "fmt" func main() { fmt.Println("hello world") } 1 2 3 4 5 6 7
编写完后发现,如果能显示行号就好了,这时可以按ESC退出编辑模式回到命令模式,然后在按 :进入末行模式
输入set nu,这样行号就显示了,输入set nonu 就可以取消行号
1 package main 2 3 import "fmt" 4 5 func main() { 6 fmt.Println("hello world") 7 } 1 2 3 4 5 6 7
如果需要快速定位行号呢?
- 6gg 快速定位到第六行
- gg 快速定位到行首
- shift + gg 快速定位到行尾
这时如果又想讲hello world 多打印几遍呢?
- 6gg 定位到第六行
- yy 复制一行
- p 黏贴一行
- 10p 黏贴十行
1 package main 2 3 import "fmt" 4 5 func main() { 6 fmt.Println("hello world") 7 fmt.Println("hello world") 8 fmt.Println("hello world") 9 fmt.Println("hello world") 10 fmt.Println("hello world") 11 fmt.Println("hello world") 12 fmt.Println("hello world") 13 fmt.Println("hello world") 14 fmt.Println("hello world") 15 fmt.Println("hello world") 16 fmt.Println("hello world") 17 fmt.Println("hello world") 18 } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
把第六行的hello world 删除改成 hello go,
- 先进入尾行模式
- 输入:/hello world 搜索定位到第一个 hello world处 ,下一个的话按n
- 输入 di“ 删除了hello world
- 再按i进入编辑模式输入 hello go 即可
最后在末行模式下输入 w 或者 wq 即可保存然后就可以运行文件了,无go环境可忽略运行只做示例
- :w 保存不退出
- :wq 保存退出
- :!q 强制退出
lixingdeMacBook-Pro:~ lixing$ go run helloword.go hello go hello world hello world hello world hello world hello world hello world hello world hello world hello world hello world hello world
相关推荐
shuhaojie 2020-11-02
lerdor 2020-10-14
cakecc00 2020-09-27
iammjun 2020-09-23
MarkDownHere 2020-09-16
usepython 2020-07-20
学习web前端 2020-07-18
longzhiwen 2020-07-15
老甘的可读区 2020-07-09
zhongzhiwei 2020-07-04
maoyongfan 2020-06-28
layloge 2020-06-26
Hesland 2020-06-14
佛系程序员J 2020-06-09
老甘的可读区 2020-06-07
Kingcxx 2020-06-04
James0 2020-06-01
xiongxu 2020-05-31
pythonclass 2020-05-30