oeasy教您玩轉(zhuǎn)vim - 64- # 參數(shù)argument
參數(shù)argument
回憶上次
上次了解了 窗口
window
窗口是用來(lái)裝緩沖
buffer
的buffer
是在內(nèi)存里面加載的硬盤文件窗口的切分
:sp[lit]
水平切分:vsp[lit]
垂直切分窗口的切換
ctr-w再k切換到當(dāng)前窗口上面的窗口
ctrl-w再j切換到當(dāng)前窗口下面的窗口
ctrl-w再h切換到當(dāng)前窗口左面的窗口
ctrl-w再l切換到當(dāng)前窗口右面的窗口
窗口的隱藏和全屏
其他的窗口都進(jìn)入
:hide
狀態(tài)隱藏的
window
中buffer
不保存除非
autowrite
設(shè)置了:hid[e]
可以隱藏當(dāng)前窗口:on[ly]
可以全屏當(dāng)前窗口laststatus
可以設(shè)置狀態(tài)欄terminal
可以開(kāi)啟終端上次主要就是
window
,還挺方便尤其多文件操作
這個(gè)還有什么可玩的嗎???
總結(jié)簡(jiǎn)化出窗口的全鍵盤操作
新建與退出
ctr-w再s相當(dāng)于
:sp[lit]
上下分割ctrl-w再v相當(dāng)于
:vsp[lit]
左右分割ctrl-w再q相當(dāng)于
:q[uit]
ctrl-w再o相當(dāng)于
on[ly]
全屏多窗口操作
所有窗口都有
全退出
:qall
全保存
:wall
全保存并退出
:wqall
強(qiáng)制退出
:qall!
選擇當(dāng)前窗口
ctrl-w再h選擇左邊的窗口
ctrl-w再j選擇下邊的窗口
ctrl-w再k選擇上邊的窗口
ctrl-w再l選擇右邊的窗口
調(diào)整寬度
ctrl-w再=所有窗口盡量高度寬度都相等
ctrl-w再-當(dāng)前窗口高度降低
ctrl-w再+當(dāng)前窗口高度升高
ctrl-w再<當(dāng)前窗口寬度降低
ctrl-w再>當(dāng)前窗口寬度升高
同時(shí)打開(kāi)三個(gè)文件
首先
man vi
查到打開(kāi)三個(gè)文件的方式命令是
vi
o1 o2 o3
是參數(shù)列表(arguments
list)列表里有
3
個(gè)參數(shù)argument
我們可以在
:ar[gs]
查看所有參數(shù)vi o1 o2 o3

操作參數(shù)列表
arga
:args
可以看見(jiàn).vimrc
進(jìn)入了參數(shù)列表ls
可以看到他也進(jìn)入了buffer list
b .vimrc
可以把當(dāng)前window
切換到.vimrc
這個(gè)buffer
添加
o4
到參數(shù)列表:args
可以看見(jiàn)o4
進(jìn)入了參數(shù)列表添加到參數(shù)列表
argument
add
:arga o4
:arga ~/.vimrc
添加一個(gè)實(shí)際存在的文件:argd
從參數(shù)列表刪除
.vimrc
:args
可以看到
.vimrc
從參數(shù)列表消失但是
buffer
還在從參數(shù)列表刪除o4
:args
可以看見(jiàn)
o4
從參數(shù)列表消失從參數(shù)列表刪除
argument delete
argd o4
argd /home/shiyanlou/.vimrc
參數(shù)argument和緩存buffer之間什么關(guān)系?
參數(shù)argument和緩存buffer
arguements
是在打開(kāi)vim
時(shí)候打開(kāi)的參數(shù)arguement
文件列表一開(kāi)始打開(kāi)的文件進(jìn)入?yún)?shù)列表
在內(nèi)存中加載成為一個(gè)個(gè)緩沖
buffers
也進(jìn)入緩沖列表
:buffers
這個(gè)時(shí)候再新打開(kāi)文件
:e o5
o5
會(huì)進(jìn)入buffers list
但是不會(huì)進(jìn)入
arguments list
如果想讓他進(jìn)入的話
就需要
:arga o5
想在
arguments list
刪除的話就需要
:argd o5
想在
buffers list
刪除的話可以
bd3
或者bd o2
參數(shù)
argument
列表和緩存buffer
列表 關(guān)系他們兩個(gè)除了開(kāi)始的時(shí)候是一致
后來(lái)完全是兩個(gè)列表
需要分別維護(hù)
我們?yōu)槭裁蠢砬暹@些東西呢
因?yàn)橐院罂赡軙?huì)有針對(duì) 緩沖
buffers
文件列表的批處理也會(huì)有針對(duì) 參數(shù)
arguments
文件列表的批處理
多參數(shù)多窗口
參數(shù)多于
1
的時(shí)候可以直接打開(kāi)多個(gè)窗口開(kāi)關(guān)是
-o
vi -o o1 o2 o3
這樣就可以橫向打開(kāi)
3
個(gè)window
,每個(gè)argument
對(duì)應(yīng)一個(gè)或者
vi -O o1 o2 o3
縱向打開(kāi)
3
個(gè)文件

在vim
中打開(kāi)多個(gè)文件
首先在
terminal
做準(zhǔn)備ls -lah > oeasy.txt
cp oeasy.txt o2z.txt
vi
:arga *.txt
有沒(méi)有進(jìn)入?yún)?shù)argument列表
:args
有沒(méi)有進(jìn)入緩沖buffer列表?
:buffers
如果
:arga */*.txt
可以加載一層目錄下面的
txt
文件退出vim之后
再來(lái)觀察
e *.txt
不能執(zhí)行e
不支持通配符e o3z.txt
可以把文件加載到buffer list
但不進(jìn)入
argument list
直接打開(kāi)
多個(gè)文件作為
argments list
參數(shù)列表在
?- `sudo find / -mindepth 3 -maxdepth 4 -name passwd` ?- 可以用`sudo`權(quán)限找到所有3層目錄到4層目錄中 ?- 名字含有`passwd`的文件列表terminal
中運(yùn)行這個(gè)文件列表可以交給
vi
作為argments list
參數(shù)列表sudo find / -mindepth 3 -maxdepth 4 -name passwd | xargs vi
這樣打開(kāi)之后
argments list
參數(shù)列表buffers list
緩沖列表都自動(dòng)加載好了
如果有不需要的
可以
:bd4
刪除緩沖buffer
:argd filename
來(lái)刪除參數(shù)argument
如果有需要添加的
:e filename
添加緩沖buffer
:arga filename
添加參數(shù)argument

總結(jié)
我們這次參數(shù)列表
arguments list
所謂參數(shù)列表指的是
vim
打開(kāi)的參數(shù)列表
參數(shù)會(huì)加載到內(nèi)存中成為
buffer
參數(shù)的控制
:arga filename
添加參數(shù)
此操作支持*可以打開(kāi)多個(gè)文件
:argd filename
來(lái)刪除參數(shù)
:args
查詢參數(shù)列表緩沖的控制
:bd filename
來(lái)刪除緩存
:e filename
來(lái)打開(kāi)緩存
ls
可以列出緩存列表可以在
terminal
中配合find
來(lái)找到文件然后作為參數(shù)給
vim
sudo find / -mindepth 3 -maxdepth 4 -name passwd | xargs vi
精準(zhǔn)地控制了參數(shù)列表或者緩沖列表
這兩個(gè)可以怎么用呢???
下次再說(shuō) *
[Github地址] (https://github.com/overmind1980/oeasyvim)
[Gitee地址] (https://gitee.com/overmind1980/oeasyvim)
[藍(lán)橋?qū)嶒?yàn)樓 邀請(qǐng)碼FJWYIMGB] (https://www.lanqiao.cn/courses/2840)