denops.vim ã使ã£ã¦åãã¦vim-pluginãä½ã£ã。MarkdownãHTMLã«å¤æãã¦ã¯ãªãããã¼ãã«ã³ãã¼ãã。
denops.vim ã使ã£ã¦åãã¦ãã©ã°ã¤ã³ãä½ã£ã
ããã¯Vim é§ ä¼ 7 æ 28 æ¥ ã®è¨äºã§ã。 次åã¯、7 æ 31 æ¥ã«æ稿ãããäºå®ã§ã。
Markdown ãã¡ã¤ã«ã HTML ã«å¤æãã¦、ã¯ãªãããã¼ãã«ã³ãã¼ããã
ãããã Vim ãã©ã°ã¤ã³ããã£ã¨æ¢ãã¦ãã。ã ã、ãã¾ãã«ãéè¦ããªãã®ã§èª°ãä½ã£ã¦ããªãã£ã。
ã ãã、ä½ã£ã。
ã¤ã³ã¹ãã¼ã«æ¹æ³
vim-plug ã®å ´åã¯、
Plug 'vim-denops/denops.vim'
Plug 'ArcCosine/denops-markdown2html'
dein.vim ã®å ´åã¯、
call dein#add('vim-denops/denops.vim')
call dein#add('ArcCosine/denops-markdown2html')
ããã§ã¤ã³ã¹ãã¼ã«åºæ¥ã。
ãã®ä»è¨å®
set clipboard+=unnamed
ã¯ãªãããã¼ããé£æºãããè¨å®ããã¦ãã。 æ¢ã«è¨å®æ¸ã¿ãªãã°、ãã®è¨è¿°ã¯è¦ããªã。
使ãæ¹
:DenopsMarkdown2Html
ãã®ã³ãã³ããå®è¡ããäºã§、ã«ã¬ã³ããããã¡ã® Markdown ã HTML ã«å¤æãã¦ã¯ãªãããã¼ãã«ã³ãã¼ãã¦ããã。
éçºçµç·¯
ãã®ããã°ã®èªè ã§、è¨æ¶ã®è¡æãªæ¹ãªãã°、10 å¹´ãããåã«markdown.plãå°å ¥ãã話ãè¦ãã¦ããã ãã。å½æã¯、perl ã® markdown å¤æãã¼ã«ãä¸çªã¡ã¸ã£ã¼ã ã£ã。
ããããæ°å¹´å¾ã«ã¯、nodejs ã®marked.jsããã¼ã¹ã«å¤æãããã¼ã«ã使ã£ã¦ãã。
ã©ã¡ãã®ã±ã¼ã¹ã、ã«ã¬ã³ããããã¡ããã¼ã«(markdown.pl,marked.js)ã«æ¸¡ãã¦、åºåçµæãã¯ãªãããã¼ãã«ã³ãã¼ããã¨ããåãããã¦ãã。 ãããã®å¦çã«ã¯å¹¾ã¤ãä¸æºç¹ããã£ã。
- ä¸æãã¡ã¤ã«ãçæãã¦ãã
- vimrc ã«ç´æ¥æ¸ãã¦ãã¦ããµãã£ã
- perl ãã¤ã³ã¹ãã¼ã«ããå¿ è¦ããã£ã
- nodejs ãã¤ã³ã¹ãã¼ã«ããä¸ã§、npm install ã³ãã³ããæåã«å®è¡ããå¿ è¦ããã£ã。
ä¸æãã¡ã¤ã«ãçæãã¦ãã
ä¸æãã¡ã¤ã«ã、c:\temp\xxmarkdown.html ã¿ãããªååã«ãã¦、çæãã¦ãã。 ããã¯åèªèº«ã®æè¡åãç¡ãäºãåå ã§、ãããã¡çµç±ã§å¤é¨ãã¼ã«ã®çµæãä¿åããè¡ãç¥ããªãã£ãããã 。 å¤å、Vim ã®ã³ãã³ãã§ããããã®åºæ¥ãå¦çããã¨æã。 ä»åã®ãã©ã°ã¤ã³éçºã«ããã£ã¦ã¯、ãã®ä¸æãã¡ã¤ã«çæãè¾ãããã¨ã«æåãã。
ä½è«ã§ããã、Windows ã® Vim→WSL ä¸ã® Vim ã¸ã®ç§»è¡ã«ããã、ãã®ä¸æãã¡ã¤ã«ã®ãã¹ã Windows 㨠WSL ã§è¡¨è¨ãéãããã«ããªãè¦å´ãã。 ãã㯠Vim ã®åé¡ã¨ãããã Windows ã®åé¡。 Windows 以å¤ãªã、å¤ååé¡ã«ãªããªããããªäºç´°ãªè©±ã ã¨æã。 ãããã«ãã、ä»åéçºãããã©ã°ã¤ã³ã§ãããã£ãç ©ãããããéæ¾ãããããã«ãªã£ã。
vimrc ã«ç´æ¥æ¸ãã¦ãã
ãã£ã¦ããå¦çã¯é常ã«ç°¡åãªã®ã§、æ°è¡ç¨åº¦ã® vimrc ã§å®ç¾åºæ¥ããã¨ã ã£ãã、ç°å¢ç§»è¡ãããã³ã«æ¯å vimrc ãã³ããããã®ã¯ããµããªã¨æãã¦ãã。 ãã©ã°ã¤ã³ããã¼ã¸ã£ã¼ã§ç®¡çåºæ¥ããªãæç¶ãã£ã¡ã®æ¹ã楽ã ã、ã©ã®ç°å¢ã§ãåãããã«ä½¿ãã。 ãããæ¢ããããããã«ãªã£ãã®ã¯ãã«ã。
perl ãã¤ã³ã¹ãã¼ã«ããå¿ è¦ããã£ã
ãã® perl ã¤ã³ã¹ãã¼ã«ææã¯ãããã 3 å¹´ãããã ã£ãã、perl ãæ®æ®µé£ãããªããªãææã ã£ãã ãã«、perl ãã¤ããªã®ã¤ã³ã¹ãã¼ã«ã¯é常ã«ç ©ãããã£ã。é¢å of é¢å。 denops ã«é¢ãã¦ã、Deno ã®ã¤ã³ã¹ãã¼ã«ãå¿ è¦ã ã、
curl -fsSL https://deno.land/x/install/install.sh | sh
ãã®ã³ãã³ãä¸çºã§ææ°çãå ¥ãããã楽ã&Deno ã®ããã±ã¼ã¸é¢é£ã®æ±ãããããç¸ã¾ã£ã¦ Deno ã®ã¤ã³ã¹ãã¼ã«ã«ã¯æµæãå°ãªã。
nodejs ãã¤ã³ã¹ãã¼ã«ããä¸ã§、npm install ã³ãã³ããæåã«å®è¡ããå¿ è¦ããã£ã
nodejs ã¯æ®æ®µä½¿ããã¦ããã®ã§、nodejs ã®ã¤ã³ã¹ãã¼ã«ã¯ã¨ããã、npm install ãããã®ã¯æ£ç´é¢åã ã£ã。 ç°å¢æ§ç¯ãããã³ã«æ¯åãããããã®ã¯ãã«ã。 ç¹ã«、npm install ã¯、深淵ã¾ã§ãã¡ã¤ã«ãæã£ã¦ããã®ã§、Deno ã®ã¤ã³ã¹ãã¼ã«ããé ãããããªããã¨ããé¯è¦ããæãã。 å®éã«ã¯、Deno ã®ã¤ã³ã¹ãã¼ã«ã®æ¹ãé ããã ããã©、ããã¤ã¯ 1 åã ãããã°ãã。 ããã±ã¼ã¸åä½ã§å®è¡ããªãã¦ããã®ã§、ãã¸ã§æ¥½。 perl ã®æã§ãæ¸ããã、ã¨ã«ããããã±ã¼ã¸ã®åãåãããããããã®ã¯、Deno ã®é åã®ä¸ã¤。 ããã Vim ã§ããã£ãã使ãã denops.vim ã¯æ¬å½ã«ç´ æ´ããããã©ã°ã¤ã³ã ã¨æã。
ã¤ã¾ãããã¤ã³ã
ã¨ã¯ãã、é 風æºå¸ã«éçºãé²ãã 訳ã§ã¯ç¡ã。 æåã«、deno markdown ã§æ¤ç´¢ããã¨https://deno.land/x/[email protected]ãåºã¦ããã、ããã¤ã denops.vim ã®ãã©ã°ã¤ã³ã§ä½¿ããªã。çç±ã¯、ã¨ããã¹ã¯ãªããå 㧠window ãªãã¸ã§ã¯ãã触ã£ã¦ããå ´æãããããã 。 ã»ãã«ã、https://github.com/denoland/deno-gfmãåºã¦ããã、ããã¤ãåãã¹ã¯ãªãããåç §ãã¦ãã®ã§、denops.vim ã§ã¯ç°¡åã«ã¯åä½ããªã。 ãã®åé¡ã解決ããã®ã« 3 æ¥ãããæãã£ã。 çµå±、denoland 㧠marked ãæ¤ç´¢ããã、https://deno.land/x/[email protected]ãè¦ã¤ãã£ã。ããã使ãã°、markdown ã HTML ã«å¤æåºæ¥ã。
ãã®è¾ºã®æ ¼éããã¤ã¤、次ã¯ãããã¡ããã®ã³ãã¼。 ãã 、ããã¯è²ã ãªãã©ã°ã¤ã³ãå®è£ ãã¦ãã®ã§、ããããã®ã¾ã¾ãã¯ã£ã¦å®è£ ãã。
const content = (await denops.call(
"getbufline",
await denops.call("bufnr"),
1,
"$"
)) as string[];
ããã§、ãããã¡ã®æååã®é åãåå¾ã§ãã。 å¾ã¯、marked çµç±ã§å¤æããã°ããããäºãæ¦ãåºæ¥ã。 æå¾ã®åºåã«é¢ãã¦ã¯
await denops.cmd("enew");
await denops.call("setline", 1, html.split(/\n/));
await denops.cmd("% yank");
await denops.cmd("bdelete!");
ã¨、ã³ãã³ãã´ãªæ¼ãã§å®è£ 。 ãã£ã¨ç¶ºéºãªå®è£ æ¹æ³ããããããããªãã、ã¨ããããã¯ããã§è¡ããããªã¨ããæã。 ãã£ã¦ãäºã¯、ä½æ¥ç¨ãããã¡ãéãã¦、çæãã HTML ããã®ãããã¡ã«åºåãã¦、ãããã¬ã¸ã¹ã¿ã«ã³ãã¼ãã¦、ãããã¡ãæ¶ã。 ãã£ãããã ãã 。
ãã£ãããã ãã®ã¹ã¯ãªãããéçºããã®ã« 1 é±éè¿ãæãã£ã。 marked ã«ãã©ãçãã®ã«æ¬å½ã«æéãæãã£ã。 ãã®è¾ºã¯、èªåã詳ãããªãçã®æè¡ã ã£ãã®ã大ããªè¦å ã ã¨æã。 æãã、nodejs ç³»ã ã£ãããã£ããè¯ãæ¹æ³ãè¦ã¤ãã¦ããã¨æãã®ã§、çµé¨å¤ã®å·®ãå¦å®ã«åºããªã¨ããæã。
æå¾ã«
denops.vim ã使ã£ã¦åãã¦å®ç¨ç㪠vim-plugin ãä½ã£ã。 ããã§、å ã 㨠Vim 使ãã¾ãã¨è¨ãã。 éçºãã®ãã®ã¯、NeoVim ã§ãã£ã¦ãããã©。
ãã® HTML ã¯、denops-markdown2html ã§åºåããã¾ãã。
ã³ã¡ã³ã
ã³ã¡ã³ããæ稿