如何在Vim中使用命令模式进行文本改写和替换?
在Vim编辑器中,文本插入是一项基本且强大的功能,它在命令模式下提供多种快捷方式以实现文本的高效操作。以下是几种主要的插入和改写技巧:
基本插入:
- 使用'i'可以在光标前插入文本,配合数字键8和'i'组合,输入'='后Esc退出,可以快速插入多字符,例如30i+esc插入36个'='。
- 'I'在当前行的第一个非空字符前插入,'gI'则在第一列。
- 'a'在光标后插入,'A'在行尾。
- 'o'和'O'分别在当前行下方和上方新建一行插入。
- 使用':r filename'在当前位置插入文件内容,'[n]r filename'在第n行插入,而':r !date'和':r !command'则可以插入当前时间或执行shell命令的结果。
改写插入:
- 'c[n]w'改写光标后n个词,'c[n]l'改写n个字母,'c[n]h'改写光标前n个字母。
- '[n]cc'用于修改当前第n行,'[n]s'替换光标后n个字符,等同于'c[n]l',而'[n]S'则删除指定行并替换。
- 注意,一些组合如'cnw'、'dnw'和'ynw'也可以简写为'ncw'、'ndw'和'nyw'。
通过这些技巧,Vim的文本插入操作变得灵活且高效,使得编辑工作更加得心应手。
绛旓細浣跨敤':r filename'鍦ㄥ綋鍓嶄綅缃彃鍏ユ枃浠跺唴瀹癸紝'[n]r filename'鍦ㄧn琛屾彃鍏ワ紝鑰':r !date'鍜':r !command'鍒欏彲浠ユ彃鍏ュ綋鍓嶆椂闂存垨鎵цshell鍛戒护鐨缁撴灉銆傛敼鍐欐彃鍏ワ細'c[n]w'鏀瑰啓鍏夋爣鍚巒涓瘝锛'c[n]l'鏀瑰啓n涓瓧姣嶏紝'c[n]h'鏀瑰啓鍏夋爣鍓峮涓瓧姣嶃 '[n]cc'鐢ㄤ簬淇敼褰撳墠绗琻琛岋紝'[n]s'鏇挎崲鍏...
绛旓細鍛戒护妯″紡鏄疺im鐨勫垵濮嬬姸鎬侊紝浣犲彲浠ラ氳繃閿洏涓婄殑涓娿佷笅銆佸乏銆佸彸绠ご锛屾垨鑰呬娇鐢╧銆乯銆乭銆乴蹇嵎閿潵绉诲姩鍏夋爣銆傚湪鍛戒护妯″紡涓嬶紝鍙互杩涜鍩烘湰鐨勬枃浠舵搷浣滐紝濡傚鍒躲佺矘璐淬佹浛鎹㈠拰鍒犻櫎銆傝繖鏄墍鏈夋搷浣滅殑璧风偣锛屼篃鏄綘闅忔椂鍙互杩斿洖鐨勬ā寮忋傝緭鍏ユā寮忓厑璁镐綘瀵规枃浠惰繘琛屽啓鍏ユ搷浣滐紝灏卞儚鍦ㄦ櫘閫氭枃鏈紪杈戝櫒涓竴鏍枫傞氳繃杈撳叆i銆...
绛旓細浣跨敤Vim杩涜鏂囦欢鐨勭紪杈戞椂锛岄粯璁ゅ浜庡懡浠ゆā寮忥紝鍦ㄦ妯″紡涓嬶紝鍙互浣跨敤鏂瑰悜閿垨k銆乯銆乭銆乮绉诲姩鍏夋爣鐨勪綅缃紝杩樺彲浠ュ鏂囦欢鍐呭杩涜澶嶅埗銆佺矘璐淬佹浛鎹佸垹闄ょ瓑鎿嶄綔銆倈 杈撳叆妯″紡 鍦ㄦ妯″紡涓嬶紝Vim鍙互瀵规枃浠舵墽琛屽啓鎿嶄綔锛岀被浼间簬鍦╓indows绯荤粺鐨勬枃妗d腑杈撳叆鍐呭锛屼娇Vim杩涜杈撳叆妯″紡鐨勬柟寮忔槸鍦ㄥ懡浠ゆā寮忕姸鎬佷笅杈撳叆i銆乴銆...
绛旓細1銆乮锛氳繘鍏ユ彃鍏ユā寮忋備粠鐩墠鍏夋爣澶勬彃鍏ャ2銆両锛堝ぇ鍐檌锛夛細杩涘叆鎻掑叆妯″紡銆備粠鐩墠鎵鍦ㄨ鐨勭涓涓潪绌烘牸绗﹀寮濮嬫彃鍏ャ3銆乤锛氳繘鍏ユ彃鍏ユā寮忋備粠鐩墠鍏夋爣鎵鍦ㄥ鐨勪笅涓涓瓧绗﹀寮濮嬫彃鍏ャ4銆丄锛氳繘鍏ユ彃鍏ユā寮忋備粠鍏夋爣鎵鍦ㄨ鐨勬渶鍚庝竴涓瓧绗﹀寮濮嬫彃鍏ャ5銆乷锛氳繘鍏ユ彃鍏ユā寮忋備粠鐩墠鍏夋爣澶勬墍鍦ㄧ殑涓嬩竴琛屽鎻掑叆鏂...
绛旓細1.vim鐨勪笁绉嶅伐浣滄ā寮(vim鏄痸i鐨勫寮虹増鏈) 鍛戒护妯″紡 鎸塃SC閿悗灏变細杩涘叆鍛戒护妯″紡锛屽懡浠ゆā寮忎笅鐨勫父鐢ㄦ搷浣滄湁澶嶅埗/榛忚创/鍒犻櫎/鎾ら攢绛... 缂栬緫妯″紡 鍦ㄥ懡浠ゆā寮忎笅杈撳叆鎻掑叆鍛戒护i锛坕nsert锛夈侀檮鍔犲懡浠 锛坅ppend锛夈佹墦寮鍛戒护o锛坥pen锛夈 淇敼鍛戒护c锛坈hange锛夈佸彇浠e懡浠鎴栨浛鎹㈠懡浠閮藉彲浠ヨ繘鍏ユ枃鏈緭鍏ユā寮 鏈...
绛旓細鍏蜂綋濡備笅銆備竴鑸ā寮忎互vi鎵撳紑涓涓。妗堝氨鐩存帴杩涘叆涓鑸ā寮忎簡锛堣繖鏄粯璁ょ殑妯″紡锛夈傚湪杩欎釜妯″紡涓紝浣犲彲浠浣跨敤銆庝笂涓嬪乏鍙炽忔寜閿潵绉诲姩鍏夋爣锛屼綘鍙互浣跨敤銆庡垹闄ゅ瓧绗...缂栬緫妯″紡鍦ㄤ竴鑸ā寮忎腑鍙互杩涜鍒犻櫎銆佸鍒躲佺矘璐寸瓑鐨勫姩浣滐紝浣嗘槸鍗存棤娉曠紪杈戞枃浠跺唴瀹圭殑锛佽绛夊埌浣犳寜涓嬨巌锛孖锛宱锛孫锛宎锛孉锛宺锛孯銆鎸囦护妯″紡鍦...
绛旓細1銆侀鍏堟墦寮Linux缁堢鍛戒护琛岋紝杈撳叆Vim鍛戒护锛屽涓嬪浘鎵绀 2銆佽繘鍏im缂栬緫鍣ㄤ互鍚庢垜浠細鍙戠幇涓嶇鎸変粈涔堥敭閮戒笉鑳借緭鍏ュ唴瀹癸紝濡備笅鍥炬墍绀猴紝鍥犱负鐜板湪澶勪簬鍛戒护妯″紡 3銆佹帴涓嬫潵鎴戜滑鎸夐敭鐩樹笂鐨i閿浠庡懡浠ゆā寮杩涘叆鍒扮紪杈戞ā寮忥紝濡備笅鍥炬墍绀 4銆佺劧鍚庢垜浠細鐪嬪埌缂栬緫鍣ㄥ簳閮ㄤ細鍑虹幇insert瀛楁牱锛岃繖浠h〃褰撳墠鏄紪杈戞ā寮忥紝濡備笅鍥炬墍绀...
绛旓細涓鑸鎸囦护妯″紡锛坈ommand mode锛変互vi鎵撳紑涓涓枃浠跺氨鐩存帴杩涘叆涓鑸寚浠ゆā寮忎簡锛堣繖鏄粯璁鐨妯″紡锛屼篃绠绉颁负涓鑸ā寮忥級銆傚湪杩欎釜妯″紡涓紝 鍙互浣跨敤涓婁笅宸﹀彸鎸夐敭鏉ョЩ鍔ㄥ厜鏍囷紝鍙互浣跨敤鍒犻櫎瀛楃鎴栧垹闄ゆ暣琛屾潵澶勭悊鏂囦欢鍐呭锛 涔熷彲浣跨敤澶嶅埗銆佺矘璐存潵澶勭悊鏂囦欢鏁版嵁銆傜紪杈戞ā寮忥紙insert mode锛夌紪杈戞ā寮忓彲浠ュ鍐呭杩涜缂栬緫锛屾寜涓媔,...
绛旓細绗竴銆鍛戒护妯″紡 褰撳惎鍔vim/vi缂栬緫鍣ㄦ椂锛屼究杩涘叆浜嗗懡浠ゆā寮忋傛鐘舵佷笅鏁插嚮閿洏鍔ㄤ綔浼氳vim璇嗗埆涓哄懡浠わ紝鑰岄潪杈撳叆瀛楃锛屾瘮濡傛寜涓媔锛屽苟涓嶄細杈撳叆涓涓瓧绗︼紝i琚綋浣滀竴涓懡浠ゃ俰鍒囨崲鍒拌緭鍏ユā寮忥紝浠ヨ緭鍏ュ瓧绗;x鍒犻櫎褰撳墠鍏夋爣鎵鍦ㄥ鐨勫瓧绗;:鍒囨崲鍒板簳绾垮懡浠ゆā寮忥紝浠ュ湪鏈搴曚竴琛岃緭鍏ュ懡浠ゃ傚鏋滄兂瑕佺紪杈戞枃鏈紝鍚姩vim...
绛旓細鍦╲i/vim涓锛屼粠鍛戒护妯″紡鍒囨崲鑷宠緭鍏ユā寮忛渶瑕杩涜涓浜涚壒瀹氱殑鎿嶄綔锛屾搷浣滄柟娉曟湁锛氭寜涓嬪瓧姣嶉敭銆佹寜涓媔閿佹寜涓媋閿佹寜涓媜閿佹寜涓婭閿1銆佹寜涓嬪瓧姣嶉敭 鍦ㄥ懡浠ゆā寮忎笅锛屾寜涓嬩换浣曚竴涓瓧姣嶉敭灏嗙珛鍗宠繘鍏ヨ緭鍏ユā寮忋傝繖鏄渶绠鍗曠殑鏂规硶锛屼絾闇瑕佹敞鎰忕殑鏄紝鍦ㄦ寜涓嬪瓧姣嶉敭鍚庯紝鍏夋爣浼氱Щ鍔ㄥ埌璇ュ瓧姣嶆墍鍦ㄧ殑浣嶇疆銆2銆佹寜涓...