本質上講,我們的工作是重複性的.凡是可以簡化重複性操作的方式,都會成倍地節省我們的時間.
vim 對重複性操作進行了優化.它之所以能高效地重複,是因為它會記錄我們最近的操作,讓我們用一次按鍵就能重複上次的修改.
.--這個看似簡單的命令是 vim 中的瑞士軍刀.
修改是改變文件內文字的任意操作,分為兩類:復合命令它可以是在普通模式、可視模式、命令列模式中所觸發的指令.
插入模式在按 esc 之前的操作,包括輸入的文字.
等效的長命令cc$
sclsc
iia$a
oa0ko
在執行乙個修改的時候,要想辦法做到兩點:
使修改可重複
使移動可重複
並且當發生錯誤,或者針對不同物件有不同的操作的時候,我們能夠執行回退操作.
目的操作
重複回退
作出乙個修改.u
在行內查詢下一指定字元
f/t;
,在行內查詢上一指定字元
f/t;
,在文件中查詢下一處匹配項
/patternnn
在文件中查詢上一處匹配項
?patternnn
查詢當前游標下的單詞*n
n執行替換
:/target/replacement&u
執行一系列修改
qxq@x
u這一章節講述了 vim 中的預設模式:普通模式,**了如下問題:
在執行時可指定執行的次數的普通模式命令
普通模式命令將操作符與動作命令結合在一起的特點
普通模式命令執行簡單的算術運算
依據:使用這種手段的時候 ,需要的按鍵次數最少.
示例:文中比對了三種命令的效果:
db-x, b-dw. daw 都是能夠刪除乙個句子中的乙個單詞的命令,但是如果要重複執行操作,即執行 "." 命令的時候,
db-x, 只重複 x 命令,即刪除乙個字元
b-dw,重複 dw 命令,即刪除下乙個單詞.
daw, 刪除乙個單詞.
定義::把當前游標之上或者之後的數值加上 [count]
:把當前游標之上或者之後的數值減去 [count]
普通模式的命令可以指定操作的次數,但是應該只在必要的時候使用次數,一般的情況下可以使用重複的命令.
operator 定義:進行操作的型別,其中控制的範圍由 來決定,
motion 定義: 字元l, 乙個單詞 aw, 乙個段落 ap 等等.
operation = operator + motion
例外:當乙個 operator 被連續呼叫兩次的時候,它會作用於當前行,例如 : >>, dd 等等
格式:在按下 operator 和 motion 之間的一段時間.
本質:如果我們把 vim 想象成有限狀態機,那麼操作符待決模式就是乙個只接受動作命令的狀態.這個狀態只在我們呼叫操作符時被啟用,直到得到乙個動作命令.
當操作符待決模式被啟用時,我們可以按 返回到普通模式.
目的命令修改c
刪除d複製到暫存器
y反轉大小寫
g~轉換為小寫
gu轉換為大寫
gu增加縮排
>
減小縮排
<
自動縮排
=使用外部程式過濾 所跨越的行
!
python第一章筆記 第一章 基礎
參與除法的兩個數中有乙個數為浮點數,結果也為浮點數 如 1.0 2,1 2.0,1.0 2.0 python print 1.0 2 結果 0.5 print 1 2.0 結果 0.5 print 1.0 2.0 結果 0.5 整數 整數,計算結果的小數部分被截除,只保留整數部分 不會四捨五入 如 ...
第一章 緒論
1.16 void print descending int x,int y,int z 按從大到小順序輸出三個數 print descending 1.17 status fib int k,int m,int f 求k階斐波那契序列的第m項的值f gender char schoolname 校...
第一章 概述
1.模擬量輸入,輸出,開關量 閃爍 輸入,輸出及資料通訊 2.模擬量大多為開關量 3.mcu前做為前端採集器,mcu 感測器 4.開發步驟 1 i o分析 2 mcu造型 3 評估系統及相關硬體 4 設計硬體系統 5 硬體系統模組測試 6 軟體系統設計 7 系統測試 8 進一步工作 5.交叉編譯 6...