µ±Ç°Î»ÖÃ: > Linux½Ì³Ì > linux»ù´¡ >

ѧϰVIM֮2014

ʱ¼ä:2014-10-16 23:02À´Ô´:linux.it.net.cn ×÷Õß: Ben McCormick |ÒëÕß

×÷ΪһÃû¿ª·¢Õߣ¬Äã²»Ó¦¸Ã°Ñʱ¼ä»¨·ÑÔÚ¿¼ÂÇÈçºÎÈ¥ÕÒÄãËùÒª±à¼­µÄ´úÂëÉÏ¡£ÔÚÎÒתÒƵ½ÍêȫʹÓà VIM µÄ¹ý³ÌÖУ¬¸Ðµ½×îÍ´¿àµÄ¾ÍÊÇËü´¦ÀíÎļþµÄ·½Ê½¡£´Ó֮ǰÖ÷ҪʹÓà Eclipse ºÍ Sublime Text ¹ý¶Éµ½ VIM£¬ËüûÓÐÀ¦°óÒ»¸ö³£×¤µÄÎļþϵͳ²é¿´Æ÷¶ÔÎÒÔì³ÉÁ˲»ÉÙ×è°­£¬¶øÆäÄÚ½¨µÄ´ò¿ªºÍÇл»ÎļþµÄ·½Ê½×ÜÊÇÈÃÎÒÀáÁ÷ÂúÃæ¡£

¾ÍÕâÒ»µã¶øÑÔ£¬Îҷdz£ÐÀÉÍVIMÎļþ¹ÜÀí¹¦ÄܵÄÉî¶È¡£ÔÚ¹¤×÷»·¾³ÉÏÎÒÒѾ­×°ÅäÁËÕâЩ¹¤¾ß£¬ÉõÖÁ±ÈÆðÄÇЩÊÓ¾õ±à¼­Æ÷ºÃºÜ¶à¡£ÒòΪÕâ¸öÊÇ´¿¼üÅ̲Ù×÷£¬¿ÉÒÔÈÃÎÒ¸ü¿ìµØÔÚ´úÂëÀïÃæ´©Ë󡣴»·¾³ÐèÒª»¨·ÑһЩʱ¼ä£¬°²×°¼¸¸ö²å¼þ¡£Ê×ÏȵÚÒ»²½ÊÇÎÒÃ÷°×vimÄÚ½¨¹¦ÄÜÖ»ÊÇ´¦ÀíÎļþµÄÒ»ÖÖÑ¡Ôñ¡£ÔÚÕâƪÎÄÕÂÀïÎÒ»á´øÄãÈ¥ÈÏʶvimÎļþ¹ÜÀí¹¦ÄÜÓëʹÓøü¸ß¼¶µÄ²å¼þ¡£

»ù´¡Æª:´ò¿ªÐÂÎļþ

ѧϰvimÆäÖÐ×î´óµÄÒ»¸öÕÏ°­ÊÇȱÉÙ¿ÉÊÓÌáʾ£¬²»ÏñÏÖÔÚµÄGUIͼÐα༭Æ÷£¬µ±ÄãÔÚÖն˴ò¿ªÒ»¸öеÄvimÊÇûÓÐÃ÷ÏÔµÄÌáʾȥÌáÐÑÄãÈ¥×ßʲô£¬ËùÓÐÊÂÇ鶼ÊÇ¿¿¼üÅÌÊäÈ룬ͬʱҲûÓиü¶à¸üºÃµÄ½çÃæ½»»¥£¬vimÐÂÊÖÐèҪϰ¹ßÈçºÎ¿¿×Ô¼ºÈ¥²éÕÒһЩ»ù±¾µÄ²Ù×÷Ö¸Áî¡£ºÃ°É£¬ÈÃÎÒ¿ªÊ¼Ñ§Ï°»ù´¡°É¡£

´´½¨ÐÂÎļþµÄÃüÁîÊÇ:e »ò:e ´ò¿ªÒ»¸öлº³åÇø±£´æÎļþÄÚÈÝ¡£Èç¹ûÎļþ²»´æÔÚËü»á¿ª±ÙÒ»¸ö»º³åÇøÈ¥±£´æÓëÐÞ¸ÄÄãÖ¸¶¨Îļþ¡£»º³åÇøÊÇvimÊÇÊõÓÒâΪ"±£´æÎı¾¿éµ½ÄÚ´æ"¡£Îı¾ÊÇ·ñÄܹ»Óë´æÔÚµÄÎļþ¹ØÁª£¬Òª¿´ÊÇ·ñÿ¸öÄã´ò¿ªµÄÎļþ¶¼¶ÔÓ¦Ò»¸ö»º³åÇø¡£

´ò¿ªÎļþÓëÐÞ¸ÄÎļþÖ®ºó£¬Äã¿ÉÒÔʹÓÃ:wÃüÁîÀ´±£´æÔÚ»º³åÇøµÄÎļþÄÚÈݵ½ÎļþÀïÃ棬Èç¹û»º³åÇø²»ÄܹØÁªÄãµÄÎļþ»òÕßÄãÏë±£´æµ½ÁíÍâÒ»¸öµØ·½£¬ÄãÐèҪʹÓÃ:w À´±£´æÖ¸¶¨µØ·½¡£

ÕâЩÊÇvim´¦ÀíÎļþµÄ»ù±¾ÖªÊ¶£¬ºÜ¶àµÄ¿ª·¢Õ߶¼ÕÆÎÕÁËÕâЩÃüÁÕâЩ¼¼ÇÉÄ㶼ÐèÒªÕÆÎÕ¡£vimÌṩÁ˺ܶ༼ÇÉÈÃÈËÈ¥ÉîÍÚ¡£

»º³åÇø¹ÜÀí

»ù´¡ÕÆÎÕÁË£¬¾ÍÈÃÎÒÀ´Ëµ¸ü¶à¹ØÓÚ»º³åÇøµÄ¶«Î÷£¬vim´¦Àí´ò¿ªÎļþÓëÆäËû±à¼­Æ÷ÓÐÒ»µã²»Í¬£¬´ò¿ªµÄÎļþ²»»á×÷Ϊһ¸ö±êÇ©ÁôÔÚÒ»¸ö¿É¼ûµÄµØ·½£¬¶øÊÇÖ»ÔÊÐíÄãͬʱֻÓÐÒ»¸öÎļþÔÚ»º³åÇø´ò¿ª£¬vimÔÊÐíÄã´ò¿ª¶à¸ö»º´æÇø¡£Ò»Ð©»áÏÔʾ³öÀ´£¬ÁíÍâһЩ¾Í²»»á£¬ÄãÐèÒªÓÃ:lsÀ´²é¿´ÒѾ­´ò¿ªµÄ»º´æ£¬Õâ¸öÃüÁî»áÏÔʾÿ¸ö´ò¿ªµÄ»º´æÇø£¬Í¬Ê±»áÓÐËüÃǵÄÐòºÅ£¬Äã¿ÉÒÔͨ¹ýÕâЩÐòºÅʹÓÃ:b À´Çл»»òÕßʹÓÃÑ­ÐòÒƶ¯ÃüÁî :bnext ºÍ :bprevious Ò²¿ÉÒÔʹÓÃËüÃǵÄËõд:bnºÍ:bp¡£

ÕâЩÃüÁîÊÇvim¹ÜÀíÎļþ»º³åÇøµÄÒ»¸ö»ù´¡£¬ÎÒ·¢ÏÖËûÃDz»»á°´ÕÕÎÒµÄÏë·¨Ó³Éä³öÀ´¡£ÎÒ²»Ïë¹ØÐÄ»º³åÇøµÄ˳Ðò£¬ÎÒÖ»Ïë°´ÕÕÎÒµÄÏ뷨ȥµ½ÄǸöÎļþ»òÕßÏëÔÚµ±Ç°Õâ¸öÎļþ.Òò´Ë±ØÐèÁ˽âvim¸üÉîÈëµÄ»º´æģʽ£¬ÎÒ²»ÊÇÍƼöÄã±ØÐëÓÃÄÚ²¿ÃüÁîÀ´×÷ΪÖ÷ÒªµÄÎļþ¹ÜÀí·½°¸¡£µ«ÕâЩµÄÈ·ÊǺÜÇ¿´ó¿ÉÐеÄÑ¡Ôñ¡£

·ÖÆÁ

·ÖÆÁÊÇvimÆäÖÐÒ»¸ö×îºÃÓõĹÜÀíÎļþ¹¦ÄÜ£¬ÔÚvimÖÐÄã¿ÉÒÔ½«µ±Ç°´°¿Úͬʱ·Ö¿ªÎª2¸ö´°¿Ú£¬¿ÉÒÔ°´ÕÕÄãϲ»¶µÄÅäÖÃÈ¥ÖØÉè´óСºÍ·ÖÅ䣬¸ö±ðʱºò£¬ÎÒ¿ÉÒÔÔÚͬʱ´ò¿ª6Îļþÿ¸öÎļþ£¬Ã¿¸ö¶¼ÓµÓв»Í¬´óС¡£

Äã¿ÉÒÔͨ¹ýÃüÁî:sp À´Ð½¨Ë®Æ½·Ö¸î´°¿Ú»òÕß :vs ´¹Ö±·Ö¸î´°¿Ú¡£Äã¿ÉÒÔʹÓÃÕâЩ¹Ø¼üÃüÁîÈ¥µ÷ÕûÄãÏëÒªµÄ´°¿Ú´óС£¬ÀÏʵ˵£¬ÎÒϲ»¶ÓÃÊó±ê´¦ÀívimÈÎÎñ£¬ÒòΪÊó±êÄܹ»¸øÎÒ¸ü¼Ó׼ȷµÄÁ½ÁеĿí¶È¶ø²»ÐèÒª²Â´ó¸ÅµÄ¿í¶È¡£

´´½¨ÐµķÖÆÁºó£¬ÄãÐèҪʹÓÃctrl-w [h|j|k|l]À´ÏòºóÏòÇ°Çл»¡£Õâ¸öÓÐÒ»µã±¿×¾£¬µ«Õâ¸öÈ´ÊǺÜÖØÒª¡¢ºÜÆձ顢ºÜÈÝÒס¢ºÜ¸ßЧµÄ²Ù×÷¡£Èç¹ûÄã¾­³£Ê¹Ó÷ÖÆÁ,ÎÒ½¨ÒéÄãÈ¥.vimrcʹÓÃÒÔÏ´úÂëÈ¥ÉèÖñðÃûΪctrl-h ctrl-j µÈµÈ¡£

nnoremap <C-J> <C-W><C-J> "Ctrl-j to move down a split  
nnoremap <C-K> <C-W><C-K> "Ctrl-k to move up a split  
nnoremap <C-L> <C-W><C-L> "Ctrl-l to move    right a split  
nnoremap <C-H> <C-W><C-H> "Ctrl-h to move left a split  

Ìøת±í

·ÖÆÁÊǽâ¾ö¶à¸ö¹ØÁªÎļþͬʱ²é¿´ÎÊÌâ,µ«ÎÒÃÇÈÔÈ»²»Äܽâ¾öÒÑ´ò¿ªÎļþÓëÒþ²ØÎļþÖ®¼ä¿ìËÙÒƶ¯ÎÊÌâ¡£ÕâʱÌøת±íÊÇÒ»¸öÄܹ»½â¾öµÄ¹¤¾ß¡£

Ìøת±íÊÇÖÚ¶à²å¼þÖп´ÆðÀ´Ææ¹Ö¶øÇÒºÜÉÙʹÓõÄÒ»¸ö¡£vimÄܹ»×·×Ùÿһ²½ÃüÁÓÐÇл»ÄãÕýÔÚÐ޸ĵÄÎļþ¡£Ã¿´Î´ÓÒ»¸ö·ÖÆÁ´°¿ÚÌøµ½ÁíÍâÒ»¸ö£¬vim¶¼»áÌí¼Ó¼Ç¼µ½Ìøת±íÀïÃæ¡£Ëü¼Ç¼ÄãÈ¥¹ýµÄµØ·½£¬ÕâÑù¾Í²»ÐèÒªµ£ÐÄ֮ǰµÄÎļþÔÚÄÄÀÄã¿ÉÒÔʹÓÿì½Ý¼üÈ¥¿ìËÙ×·ËÝÄãµÄ×Ù¼£¡£Ctrl-oÔÊÐíÄã·µ»ØÄãÉÏÒ»´ÎµØ·½¡£Öظ´²Ù×÷¼¸´Î¾ÍÄܹ»·µ»Øµ½Äã×îÏȱàдµÄ´úÂë¶ÎµØ·½¡£Äã¿ÉÒÔʹÓÃctrl-iÀ´ÏòÇ°·µ»Ø¡£µ±ÄãÔÚµ÷ÊÔ¶à¸öÎļþ»òÔÚÁ½¸öÎļþÖ®¼äÇл»Ê±£¬ËüÄܹ»·¢»Ó¼«´óµÄ¿ìËÙÒƶ¯¹¦ÄÜ¡£

²å¼þ

Èç¹ûÄãÏëvimÏñSublime Text »òÕßAtomÒ»Ñù£¬ÎÒ¾ÍÈÃÄãÈÏÇåһϣ¬ÕâÀïÓкܺõĻú»áÈÃÄã¿´ÇåһЩÄѶ®£¬¿Éź͵ÍЧµÄÊÂÇé¡£ÀýÈç´ó¼Ò»á·¢³ö"µ±SublimeÓÐÁËÄ£ºý²éÕÒ¹¦ÄÜ£¬ÎªÊ²Ã´ÎÒÒ»¶¨ÒªÊäÈëȫ·¾¶²ÅÄܹ»´ò¿ªÎļþ" "ûÓвà±ßÀ¸ÏÔʾĿ¼Ê÷ÎÒÔõÑù²é¿´ÏîÄ¿½á¹¹" µÈµÈ¡£µ«vimÓÐÁ˽â¾ö·½°¸¡£ÕâЩ·½°¸²»ÐèÒªÆÆ»µvimµÄºËÐÄ¡£ÎÒÖ»ÐèÒª¾­³£ÐÞ¸ÄvimÅäÖÃÓëÌí¼ÓһЩ×îеIJå¼þ£¬ÕâÀïÓÐ3¸öÓÐÓõIJå¼þ¿ÉÒÔÈÃÄãÏñSublime¹ÜÀíÎļþ

  • CtrlP ÊÇÒ»¸ö¸úSublimeµÄ"Go to Anything"À¸Ò»ÑùÄ£ºý²éÕÒÎļþ.Ëü¿ìÈçÉÁµç²¢Çҷdz£¿ÉÅäÖÃÐÔ¡£ÎÒʹÓÃËüÖ÷ÒªÓÃÀ´´ò¿ªÎļþ¡£ÎÒÖ»ÐèÖªµÀ²¿·ÖµÄÎļþÃû×Ö²»ÐèÒª¼ÇסÕû¸öÏîÄ¿½á¹¹¾Í¿ÉÒÔ²éÕÒÁË¡£

  • The NERDTree Õâ¸öÒ»¸öÎļþ¹ÜÀí¼Ð²å¼þ£¬ËüÖظ´Á˺ܶà±à¼­Æ÷¶¼ÓеIJà±ßÎļþ¹ÜÀí¼Ð¹¦ÄÜ¡£ÎÒʵ¼ÊÉϺÜÉÙÓÃËü£¬¶ÔÓÚÎÒ¶øÑÔÄ£ºý²éÕÒ»á¸ü¼Ó¿ì¡£¶ÔÓÚÄã½ÓÊÖÒ»¸öÏîÄ¿£¬³¢ÊÔѧϰÏîÄ¿½á¹¹ÓëÁ˽âʲô¿ÉÒÔÓÃÊǷdz£·½±ãµÄ£¬NERDTreeÊÇ¿ÉÒÔ×Ô¼º¶¨ÖÆÅäÖ㬰²×°ËüÄܹ»´úÌævimÄÚÖõÄĿ¼¹¤¾ß¡£

  • Ack.vim ÊÇÒ»¸öרΪvimµÄ´úÂëËÑË÷²å¼þ£¬ËüÔÊÐíÄã¿çÏîÄ¿ËÑË÷Îı¾¡£Ëü·â×°ÁËAck »ò Ag ÕâÁ½¸ö¼«ÆäºÃÓõÄËÑË÷¹¤¾ß£¬ÔÊÐíÄãÔÚÈκÎʱºòÔÚÄãÏîÄ¿Ö®¼ä¿ìËÙËÑË÷Ìøת¡£

ÔÚvimºËÐÄÓëËüµÄ²å¼þÉú̬ϵͳ֮¼ä£¬vim Ìṩ×ã¹»µÄ¹¤¾ßÔÊÐíÄã¹¹½¨ÄãÏëÒªµÃ¹¤×÷»·¾³¡£Îļþ¹ÜÀíÊÇÈí¼þ¿ª·¢ÏµÍ³µÄ×îºËÐIJ¿·Ö²¢ÇÒÄãÖµµÃÓµÓÐÌåÑéµÄȨÀû¡£

¿ªÊ¼Ê±ÐèҪͨ¹ýºÜ³¤µÄʱ¼äÈ¥Àí½âËüÃÇ£¬È»ºóÔÚÕÒµ½Äã¸Ð¾õÊæ·þµÄ¹¤×÷Á÷³ÌÖ®ºóÔÙ¿ªÊ¼ÔÚÉÏÃæÌí¼Ó¹¤¾ß¡£µ«ÒÀȻֵµÃÄãȥʹÓã¬Äã²»Óñ¬Í·¾Í¿ÉÒÔÀí½âÈçºÎȥʹÓã¬Äܹ»ÇáÒ×±àдÄãµÄ´úÂë¡£

¸ü¶à²å¼þ×ÊÔ´

  • Seamlessly Navigate Vim & Tmux Splits Õâ¸ö²å¼þÐèҪÿһ¸öÏëʹÓÃËüµÄÈ˶¼Òª¶®µÃʹÓÃtmux£¬Õâ¸ö¸úvimµÄsplits Ò»Ñù¼òµ¥ºÃÓá£

  • Using Tab Pages ËüÊÇÒ»¸övimµÄ±êÇ©¹¦Äܲå¼þ£¬ËäÈ»ËüµÄÃû×ÖÓÃÆðÀ´ÓÐÒ»µãÒɻ󣬵«Ëü²»ÊÇÎļþ¹ÜÀíÆ÷¡£¶ÔÈçºÎÔÚÓжà¸ö¹¤×÷¿ÉÊÓÇøʹÓÃ"tab pages" ÔÚvim wiki ÍøÕ¾ÉÏÓиüºÃµÄ¸ÅÊö¡£

  • Vimcasts: The edit command Ò»°ãÀ´Ëµ Vimcasts ÊÇ´ó¼ÒѧϰvimµÄÒ»¸öºÃ×ÊÔ´¡£Õâ¸öÆÁÄ»½ØͼÓëһЩÄÚÖù¤×÷Á÷³ÌºÜºÃµØÃèÊöÁË֮ǰ˵µÄÎļþ²Ù×÷·½ÃæµÄ֪ʶ¡£

via: http://benmccormick.org/2014/07/07/learning-vim-in-2014-working-with-files/

 
(ÔðÈα༭£ºIT)
------·Ö¸ôÏß----------------------------
À¸Ä¿Áбí
ÍƼöÄÚÈÝ