Bram Moolenaar the Creator of Vim 2023å¹´8æ5æ¥ãæ²ããç¥ãããå ¥ã£ã¦ãã¾ãããé·å¹´ãå¤ãã®ã¨ã³ã¸ãã¢ã«æããä»ããªã使ããç¶ãã¦ããããã¹ãã¨ãã£ã¿Vimã®ä½è Bram Moolenaaræ°ãåæ3æ¥ã«äº¡ããªã£ãã¨ããç¥ããã§ããã·ã§ãã¯ã§ãã°ããä¿¡ãããã¨ãã§ãã¾ããã§ããã çè ã¯é·å¹´Vimã使ããVimã«å¤ãã®ã³ã³ããªãã¥ã¼ããè¡ã£ããããã®é½åº¦Bramæ°ã¨å¯¾è©±ãããè°è«ããããã¦ãã¾ããããã®Bramæ°ãçªç¶ããã®ä¸çããããªããªã£ã¦ãã¾ã£ããã¨ããã°ããåãå ¥ããããªãã£ãããã§ãã æ¬è¨äºã§ã¯è¿½æ¼ã®æå³ãè¾¼ããBramæ°ãã©ã®ããã«Vimã®éçºãå§ããVimãã©ã®ããã«åºã¾ã£ã¦ãã£ãã®ããã¾ãé·å¹´Vimã追ãç¶ãã¦ããçè ããè¦ãBramæ°ã®äººç©åãçè ã®æãã交ãã¦è§£èª¬ãã¦ããã¾ãã Vimã®æ´å² Bramæ°ã«ã¤ãã¦ã話ãããåã«ãã¾ã
ããã¹ãã¨ãã£ã¿Vimã®ä½è ãBram Moolenaaræ°ã62éã§äº¡ããªãå¤ãã®ã¦ã¼ã¶ã¼ãåæ¼ã®æã表ãã¦ãã¾ãã Vimã¯ä¸çä¸ã§æã人æ°ã®ããããã¹ãã¨ãã£ã¿ã®ãã¡ã®ä¸ã¤ã§ãããããã½ããã¦ã§ã¢ã®ä»å¾ã®è¡ãæ«ãæ°ã«ãªã£ã¦ããæ¹ãå¤ãããããã¾ãããä»åVimããã¸ã§ã¯ãã«åå ãã¦ããéçºè ã®ä¸äººã§ããChristian Brabandtæ°ããåããã¸ã§ã¯ãã®æªæ¥ã«é¢ãã¦èª¬æãã¦ãã¾ãã åæ°ã¯ãVimããã¸ã§ã¯ãã®ããã«ãGitHubã®ç®¡çè 権éãBramæ°ã®å®¶æããåå¾ãã¦ãVimã®éçºãç¶ããããã®ä½æ¥ãè¡ã£ã¦ãã¾ããæ°åã®ã¡ã³ãã¼ãGitHubã«æå¾ ããæåã®2ã¤ã®ã³ãããããã¼ã¸ããã¨ã®ãã¨ãå½åã¯ãã°ãã£ãã¯ã¹ãã»ãã¥ãªãã£é¢é£ã®ä¿®æ£ãããã¥ã¡ã³ãã®æ´æ°ãæ確ãªæ¹åç¹ã®ã¿ããã¼ã¸ããããã¯ãã°ãå®äºããå¾ã«ãVim 9.1ã®ã¡ã³ããã³ã¹ãªãªã¼ã¹ãæºåããäºå®ã ããã§ãã
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? ããã¯ãVim2 Advent Calendar 2017 16æ¥ç®ã®è¨äºã§ããããã¦ãkoron ããã®ãVim ã® DirectX ãéããã話ãã vim-jp ã®ãWindows ã§è²ä»ãã®çµµæåã表示åºæ¥ãæ§ã«ãªãã¾ããããã®å¾æ¥è«ã§ãã ã«ã©ã¼çµµæåããã (& DirectX é«éåããã) ã 8.0.1343 ã¨ãã¦ãã¼ã¸ãããå¾ãDirectX æç»ã®ãããªãé«éåãé²ããæçµçã« 8.0.1369 ã¨ãã¦ãã¼ã¸ããã¾ãããããã§ã¯ããã®å 容ã説æãã¾ãã ãªãããããèªãã§ã Vim ããããã使ããããã«ãªã£ãã
ç¹°ãè¿ãæåãæ¿å ¥ãã Vim 㧠---------------------------------------- ã¨æ¿å ¥ãããæã«ã¯ã normalã¢ã¼ã㧠40i- ã¨å ¥åã㦠Esc ãã㨠---------------------------------------- ãå ¥ãã æ¥æ¬èªã 40iã ãªã©ã§æ®éã«æ¿å ¥ã§ããã ç¹°ãè¿ãæååãæ¿å ¥ãã 30iãã ãªã ãããããããã... ã¨30åãããå ¥ãã è¤æ°è¡åãæååãæ¿å ¥ãã 20o- ã¨ããã¨ã å ¥évi 第6ç ä½è : ãªã³ãã©ã ,ã¢ã¼ãã«ãããã³ã¹,Linda Lamb,Arnold Robbins,ç¦å´ä¿ååºç社/ã¡ã¼ã«ã¼: ãªã©ã¤ãªã¼ã»ã¸ã£ãã³çºå£²æ¥: 2002/05ã¡ãã£ã¢: åè¡æ¬è³¼å ¥: 14人 ã¯ãªãã¯: 193åãã®ååãå«ãããã° (75件) ãè¦ã
åç (19件ä¸ã®1件ç®) ã¢ã¼ãã«ã ããã¨ããã®ããUIã®ææ¥ã§èãããã¨ãããã¾ãã ã¤ã¾ããæ¸ãè¾¼ã¿ã¢ã¼ããä¸æ¸ãã¢ã¼ããã³ãã³ãã¢ã¼ããªã©ãç¶æ ã常ã«æèããããããããæå³éãããã°ã©ã ã¨ãã¦è¦ããªããã°ãªããªãã¨ãããã¨ã§ãã ãã ãä»ã®åçè ãä»°ãéãããè¦ãããããã®ãã¨ã便å©ãªãã®ãã¯å¿ ãããåãã§ã¯ãªãã®ã§ãæ¯æ¥ä½¿ããããªéå ·ã¯è¦ãããããã便å©ããéè¦ãããã®ãééãã§ã¯ãªãã¨æãã¾ãã åèªèº«ã¯vimãvimãã©ã°ã¤ã³ãããããã ãã§ä½¿ã£ã¦ãã¾ããæ®ã©ã®æ©è½ãè±æåãã¼ã ãã§ããªããã®ã§ãç²ããªãæ°ããã¾ããæ°åã®åé¡ã ã¨ãæãã¾ããã
.vimrc ã« set mousue=aã¨æ¸ãã¦ãvim ä¸ã§ãã¦ã¹ã使ããããã«ãªã£ãã®ã¯ãããã§ããã ãã®ä»£ããã«ã¯ãªãããã¼ãã使ããªããªã£ãã®ã§ãã®ä»£æ¿çã§ãã ã³ãã¼ è¨å®/ã¦ã£ã³ãã¦/é¸æ ã«ãã ãShift ãã¢ããªã±ã¼ã·ã§ã³ã®ãã¦ã¹ä½¿ç¨ãç¡å¹ã«ããã ã«ãã§ãã¯ãå ¥ãã¦ããã¾ãã å¾ã¯ãvim ã§è¡¨ç¤ºããã¦ããæååã Shift ãã¼ãæ¼ããªãããã©ãã°ããã°ã ãã®ç¯å²ã Windows ã®ã¯ãªãããã¼ãã«ã³ãã¼ããã¾ãã ãã¼ã¹ã vim ä¸ã§æ¿å ¥ã¢ã¼ãã«ãªã£ã¦å ¥ã£ã¦ãããPuTTY ä¸ã§ Alt+å³ã¯ãªãã¯ã åºã¦ããã¡ãã¥ã¼ãã Paste ãé¸æã
æ¨æ¥Apple Eventãå¾ æ©ããªããVimã®ã³ã¼ããçºãã¦ãããããªãã ãé¦ã°ããåãã®ããã³ã¼ããè¦ã¤ãã¦ãã¾ãã¾ããã /* * Return TRUE if patch "n" has been included. */ int has_patch(int n) { int i; for (i = 0; included_patches[i] != 0; ++i) if (included_patches[i] == n) return TRUE; return FALSE; } ããã⦠ããããã¯ãç·å½¢æ¢ç´¢ï¼ Vimã¯ãã¡ã¤ã³ã®ãã©ã³ãã®ãã¹ã¦ã®ã³ãããã§ããããã¼ã¸ã§ã³ãä¸ãã£ã¦ããæ¹å¼ãã¨ã£ã¦ãã¾ãã ãã©ã°ã¤ã³ãæ°ããæ©è½ã使ãããæã«ãã¦ã¼ã¶ã¼ã使ã£ã¦ããVimã«ç¹å®ã®ããããå ¥ã£ã¦ãããããã§ãã¯ããå¿ è¦ãããã¾ã (é¢æ°ãã¤ãã³ããªã©æ©è½ãå ¥ã£ã¦ããããç´æ¥ãã§ã
å æ¥ã®è¨äº ã«æ¸ããã¨ãã Vim ã®ã«ã©ã¼çµµæåãããã«ããã DirectX (æ£ç¢ºã«ã¯ DirectWrite) ãç¨ããç»é¢æç»ããã¡ããã¡ãéããªãã¾ããã ãã®è¨äºã«ã¯ãããªãã¨ãæ¸ãã¦ãã¾ãããã ããã¦åã¯å¤§ããªééãã«æ°ãã¤ããã 詳細ã説æã¯ãã¾ããããä¸è¨ã§è¨ãã°ãVimã¯æ¨æºçãªWin32ã¢ããªã§ã¯ãªãã ãã®ããããã¡ãã£ã¨è©³ç´°ã«èª¬æãã¦ã¿ããã¨æãã¾ãã ãªã®ã§ Vim ã®è©±ã§ãããªããã»ã¨ãã© Windows ã®è©±ã«ãªãã¾ãã ãããç¡é§ã«é·ããªãããã§ãã(å®éãªã£ã) ãªããã®è¨äºã¯ Vim Advent Calendar 2017 3æ¥ãã®åå è¨äºã§ãã é ãã£ãçç± éããªã£ãçç±ãç¥ãã«ã¯ããã®åã®é ãã£ãçç±ãç¥ãå¿ è¦ãããã§ãããã ã¾ãã¯ãããè¦ã¦ããã¾ãããã DirectWrite ã«ã¯å¤§ããåãã¦2ã¤ã®æç»æ¹æ³ãããã¾ãã GPUã®æ§è½ã
vimã§ç©ºç½ã¨ã¿ããç¸äºå¤æããæ¹æ³ ã¬ãã¼ããæ¸ãéã«ã½ã¼ã¹ã³ã¼ããTeXworksã«ã³ãããããã¨ãå¤ãã®ã§ããï¼é常ã®ã¿ãã§ã¯èªèãããï¼ã¤ã³ãã³ããå´©ãã¦ãã¾ãã¾ãï¼ ããã§ï¼ã¿ãã空ç½ã«å¤æããå¿ è¦ãããã®ã§ããï¼æ¯åæé ãå¿ãã¦ãã¾ãã®ã§ã¡ã¢ãã¾ãï¼ ã³ãã³ã ã¿ãâç©ºç½ :set expandtab :retab 空ç½âã¿ã :set noexpandtab :retab!
vimrc ã«ä»¥ä¸ã®ã³ã¼ãã追å ãã¾ãã set list set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:< set list ã«ããå¯è¦åãæå¹ã«ãªã listchars ã§å¯è¦åã§ä½¿ç¨ããæåãæå®ã§ãã¾ãã ãã«ãã§ã¯ä»¥ä¸ã®ããã«èª¬æããã¦ãã¾ãã lcs-eol eol:æå      è¡æ«ã®è¡¨ç¤ºã«ä½¿ãããæåãæå®ãããªãã¨ãè¡æ«ã«ã¯ä½ã 表示ãããªãã lcs-tab tab:2æå    ã¿ãæåã®è¡¨ç¤ºã«ä½¿ãããæåã1æåç®ã¯1åã ã使ãããã 2æåç®ã¯ã¿ããé常å ããã ãã®ç©ºç½ãåããã¾ã§ç¹°ãè¿ ã表示ãããã "tab:>-" ã¨ããã¨ãã¿ãã4æåã®è¨å®ã§ã¯ ">---" ã¨ãªãã æå®ãããªãã¨ãã¿ã㯠^I ã¨è¡¨ç¤ºãããã lcs-space space:æå    ã¹ãã¼ã¹ã®è¡¨ç¤ºã«ä½¿ãããæåãæ
vimã§æ¹è¡ã³ã¼ããæåã³ã¼ããå¤æ´ãããã£ãã®ã§èª¿ã¹ãã æ¹è¡ã³ã¼ã æ¹è¡ã³ã¼ãã®ç¢ºèª :set fileformat? æ¹è¡ã³ã¼ãã®è¨å® :set fileformat=unix :set fileformat=mac :set fileformat=dos ã¾ãã¯ä»¥ä¸ã®ã·ã§ã¼ãã«ããã§ãã :set ff=unix æ¹è¡å½¢å¼ã¯ä»¥ä¸ã®éã unix = LF (\n) dos = CR+LF(\r\n) mac = CR(\r) æåã³ã¼ã æåã³ã¼ãã®ç¢ºèª :set fileencoding? æåã³ã¼ãã®å¤æ´ :set fileencoding=utf-8 :set fileencoding=shift_jis :set fileencoding=euc-jp å®éã«å¤ãã£ã¦ããç¢ºèª $ file hoge.txt linux.txt: ASCII text ãããªã£ã¦ãã®ãã:s
ããã«ã¡ã¯ï¼ãã¨ãã§ãã ä»åãç§ã¯æ§ã ãªIDEã»ã¨ãã£ã¿ã渡ãæ©ãã¦ãã¦ã社å ã®æç¨IDEã»ã¨ãã£ã¿ã©ã³ãã³ã°ãæ°ã«ãªã£ãã®ã§ã調æ»ããã¦ã¿ã¾ããï¼ããã¦æç¨è ã®çããã«ä¾¿å©ãªè¨å®ãå°æãæãã¦ãããã¾ããï¼ èª¿æ»çµæ ä¸ä½ã¯Visual Studio Codeãå å·®ã§PhpStormããã®å¾ããVimçã追ããããã¨ããçµæã«ãªãã¾ããã ãã®ã©ã³ãã³ã°ãåçè ã®æå±ãã¼ã å¥ã§è¦ã¦ãé¡èãªåãã¯ããã¾ããã§ãããåããã¼ã ã§ããã¯ã好ããªãã®ãé¸æãã¦ããããã§ããï¼ JetBrains製ã®ææã¨ãã£ã¿ã®PhpStormã¦ã¼ã¶ãå¤ãçç±ã¯ãPHPã§éçºãããã³ã³ãã³ããå¤ããã¨ããä¼ç¤¾ã§ã¢ã«ã¦ã³ã管çãã¦ããã¨ãã£ãèæ¯ãå½±é¿ãã¦ããå¯è½æ§ãã»ã»ã»ï¼ ã¡ãªã¿ã«ç§ã¯Vimã¨ãã©ããµã¯ã©ã¨ãã£ã¿æ´¾ã§ãã æ°äººã®æã«Vimããã¹ã¿ã¼ããã¦è²ã 試ãã¦ã¿ã¾ããããçµå±æåã®Vimãèªåã«ä¸çªãã£
å 人ã®vimmeræ§ãä½ã£ããã¼ãã·ã¼ãã¯USé åã®å³ãã æ¥æ¬èªåããããã®ã§ãã³ãã³ãã®ç¾ åã®ã¿ã®ç©ãå¤ãã£ãã®ã§ã JISé åï¼æ¥æ¬èªè¡¨è¨ã®vimãã¼ãã·ã¼ãä½ãã¾ããã ã¾ãã¯ãã³ãã¬ã¼ãä½æ ä¸çä¸æåã§ããããã®å³ãå ã«ä½æããã 幸ããªãã¨ã«ãã®å³ãJISé ååãã¦ããVimmerã®æ¹ãå± ãã®ã§ã JISé ååããã¦ãããã®ã使ç¨ããã ããã¦è±èªèª¬æé¨åãåãåã£ããã®ããã¡ãã æ¥æ¬èªå ã¾ã£ãããªç¶æ ã®JISé å表ã«ãã¼èª¬æãæ¸ãè¾¼ãã§ããã æå¾ã«èªåç¨ã®ã¡ã¢æ¸ããæ¸ãè¾¼ãã§å®æ! ãã¼ãããã³ã°ãç¬èªã«å¤ãã¦ã¦ãã®ã¾ã¾ãã使ããªãã!ã¨ããå 輩Vimmeræ§ã¯ã¾ã£ãããªç¶æ ã®ç©ããèªåå°ç¨ãã¼ãã·ã¼ããä½ã£ã¦ãã ãã! (ééã£ã¦ããç®æãããã°ãææãã ãã!)
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}