Coc.nvim: nixos์— coc.nvim์„ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์— ๋งŒ๋“  2019๋…„ 03์›” 20์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: neoclide/coc.nvim

๊ธฐ๋Šฅ ์š”์ฒญ์ด ๋ฌธ์ œ์™€ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๊นŒ?
์•ˆ๋…•ํ•˜์„ธ์š”. ๋‚˜๋Š” ํ˜„์žฌ nixos์— ์žˆ์Šต๋‹ˆ๋‹ค.
ํŒŒ์ผ ์‹œ์Šคํ…œ์€ FHS๋ฅผ ๋”ฐ๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  coc๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค .
ํŽธ์ง‘ : ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ด€๋ฆฌ์ž๋กœ vim-plug๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ์ด ๋ฐฉ๋ฒ•์€ ์•„์น˜ ๋ฆฌ๋ˆ…์Šค์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
Plug 'neoclide/coc.nvim', {'tag': '*', 'do': { -> coc#util#install()}}

help wanted

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์—…๋ฐ์ดํŠธ : ๊ธฐ๋ณธ Coc ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์•„๋ž˜์— ์„ค๋ช… ๋œ๋Œ€๋กœ vimPlugins.coc-nvim ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ™•์žฅ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์€ ์•„์ง ์‚ฌ์šฉํ•  ์ˆ˜์—†๋Š” ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ์„ค๋ช… ๋œ vimPlugins.coc-* ํ™•์žฅ ํŒจํ‚ค์ง€๊ฐ€ ์›์‹œ ์†Œ์Šค ์ฝ”๋“œ ํ˜•์‹์œผ๋กœ Nixpkgs ์ €์žฅ์†Œ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ด ์ง€๋ ค๋ฉด ์ถ”๊ฐ€ ํŒจํ‚ค์ง• ๊ฐœ์„  (์˜ˆ : ์ปดํŒŒ์ผ)์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์•Œ๋ ค์ ธ ์žˆ์ง€๋งŒ ์ž˜ ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์€ ๋ฌธ์ œ์ด๋ฉฐ ๋” ๋งŽ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฐœ์ž…ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค (์ž์„ธํ•œ ๋‚ด์šฉ์€์ด ํ† ๋ก  ์ฐธ์กฐ ). Nixpkgs๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์„ ์„ค์น˜ํ•ด๋ณด์„ธ์š”. ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ :CocInstall ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์ด ์ •์ƒ์ ์ธ ๋ฐฉ์‹์œผ๋กœ ์„ค์น˜๋˜๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


Google์—์„œ ์˜ค๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ์ž‘์„ฑ ์‹œ์ ์˜ README.md ์กฐ์–ธ์€ ๊ตฌ์‹์ž…๋‹ˆ๋‹ค. Coc ๋ฐ ๋งŽ์€ Coc ํ™•์žฅ์€ ์ด์ œ Nix ์ž์ฒด๋ฅผ ํ†ตํ•ด ๋ฐฐํฌ๋˜๋ฉฐ Nix๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ๊ฒƒ์„ ๊ด€๋ฆฌ ํ•  ์ˆ˜ โ€‹โ€‹์žˆ์Šต๋‹ˆ๋‹ค.

Coc ์ž์ฒด๋Š” nixpkgs.vimPlugins.coc-nvim (vimplugin-coc-nvim) ๋กœ ํŒจํ‚ค์ง•๋˜๋ฉฐ ํ™ˆ ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (ํ™ˆ ๊ด€๋ฆฌ์ž ๊ตฌ์„ฑ์—์„œ programs.neovim.plugins ์— pkgs.vimPlugins.coc-nvim ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ธฐ ๋งŒํ•˜๋ฉด๋ฉ๋‹ˆ๋‹ค). ๋˜๋Š” ํ™ˆ ๋งค๋‹ˆ์ €๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด https://www.mpscholten.de/nixos/2016/04/11/setting-up-vim-on-nixos.html์„ ์‚ฌ์šฉํ•ด๋ณด์‹ญ์‹œ์˜ค

~ Coc ํ™•์žฅ ๋ชฉ๋ก์€ ๋งˆ์Šคํ„ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ชฉ๋ก์„ ์ฐธ์กฐํ•˜๊ณ  coc- . nix search ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ~ coc- ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ์—ฌ๊ธฐ ์—์„œ Coc ํ™•์žฅ ๋ชฉ๋ก์„ ๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ ์ž‘์„ฑ ๋‹น์‹œ์—๋Š” ๋Œ€๋ถ€๋ถ„์ด ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž‘์—… (์œ„ ์ฐธ์กฐ).

vim plug, Pathogen ๋“ฑ์„ ์‚ฌ์šฉํ•˜๋Š” ์ „ํ†ต์ ์ธ ๋ฐฉ๋ฒ•์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋…์„ ๊ณจ๋ผ๋ผ.

๋ชจ๋“  4 ๋Œ“๊ธ€

๋ฐ”์ด๋„ˆ๋ฆฌ ๋นŒ๋“œ์—๋Š” https://github.com/zeit/pkg ๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์‚ฌ์ „ ๋นŒ๋“œ nodejs๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์†Œ์Šค ์ฝ”๋“œ์—์„œ ๋นŒ๋“œํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ nixos์— coc.nvim์„ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
~~ 1. nix-env ๋ฅผ ํ†ตํ•ด nodejs ๋ฐ yarn์„ ์„ค์น˜ํ•˜๊ฑฐ๋‚˜ /etc/nixos/configuration.nix ์— ๋„ฃ์€ ๋‹ค์Œ sudo nixos-rebuild switch

  1. install.sh ์Šคํฌ๋ฆฝํŠธ์—์„œ ์•ฝ๊ฐ„ ๋ณ€๊ฒฝํ•˜์—ฌ nodejs์™€ yarn์„ ๋” ์ด์ƒ ๋‹ค์šด๋กœ๋“œํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด __download () __ ํ•จ์ˆ˜์— ๋‹ค์Œ ์ค„์„ ์ฃผ์„ ์ฒ˜๋ฆฌํ•˜์‹ญ์‹œ์˜ค.
    install_yarn
  2. ์‹คํ–‰ : ./install.sh ~~

ํŽธ์ง‘ :์ด ์ ‘๊ทผ ๋ฐฉ์‹์„ PR๋กœ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?
ํŽธ์ง‘ 2 : ์ฐธ์กฐ : Coc ์„ค์น˜

์ด ์ ‘๊ทผ ๋ฐฉ์‹์„ PR๋กœ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

ํ™•์‹คํ•œ.

์—…๋ฐ์ดํŠธ : ๊ธฐ๋ณธ Coc ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์•„๋ž˜์— ์„ค๋ช… ๋œ๋Œ€๋กœ vimPlugins.coc-nvim ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ™•์žฅ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์€ ์•„์ง ์‚ฌ์šฉํ•  ์ˆ˜์—†๋Š” ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ์„ค๋ช… ๋œ vimPlugins.coc-* ํ™•์žฅ ํŒจํ‚ค์ง€๊ฐ€ ์›์‹œ ์†Œ์Šค ์ฝ”๋“œ ํ˜•์‹์œผ๋กœ Nixpkgs ์ €์žฅ์†Œ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ด ์ง€๋ ค๋ฉด ์ถ”๊ฐ€ ํŒจํ‚ค์ง• ๊ฐœ์„  (์˜ˆ : ์ปดํŒŒ์ผ)์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์•Œ๋ ค์ ธ ์žˆ์ง€๋งŒ ์ž˜ ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์€ ๋ฌธ์ œ์ด๋ฉฐ ๋” ๋งŽ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฐœ์ž…ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค (์ž์„ธํ•œ ๋‚ด์šฉ์€์ด ํ† ๋ก  ์ฐธ์กฐ ). Nixpkgs๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์„ ์„ค์น˜ํ•ด๋ณด์„ธ์š”. ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ :CocInstall ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์ด ์ •์ƒ์ ์ธ ๋ฐฉ์‹์œผ๋กœ ์„ค์น˜๋˜๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


Google์—์„œ ์˜ค๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ์ž‘์„ฑ ์‹œ์ ์˜ README.md ์กฐ์–ธ์€ ๊ตฌ์‹์ž…๋‹ˆ๋‹ค. Coc ๋ฐ ๋งŽ์€ Coc ํ™•์žฅ์€ ์ด์ œ Nix ์ž์ฒด๋ฅผ ํ†ตํ•ด ๋ฐฐํฌ๋˜๋ฉฐ Nix๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ๊ฒƒ์„ ๊ด€๋ฆฌ ํ•  ์ˆ˜ โ€‹โ€‹์žˆ์Šต๋‹ˆ๋‹ค.

Coc ์ž์ฒด๋Š” nixpkgs.vimPlugins.coc-nvim (vimplugin-coc-nvim) ๋กœ ํŒจํ‚ค์ง•๋˜๋ฉฐ ํ™ˆ ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (ํ™ˆ ๊ด€๋ฆฌ์ž ๊ตฌ์„ฑ์—์„œ programs.neovim.plugins ์— pkgs.vimPlugins.coc-nvim ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ธฐ ๋งŒํ•˜๋ฉด๋ฉ๋‹ˆ๋‹ค). ๋˜๋Š” ํ™ˆ ๋งค๋‹ˆ์ €๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด https://www.mpscholten.de/nixos/2016/04/11/setting-up-vim-on-nixos.html์„ ์‚ฌ์šฉํ•ด๋ณด์‹ญ์‹œ์˜ค

~ Coc ํ™•์žฅ ๋ชฉ๋ก์€ ๋งˆ์Šคํ„ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ชฉ๋ก์„ ์ฐธ์กฐํ•˜๊ณ  coc- . nix search ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ~ coc- ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ์—ฌ๊ธฐ ์—์„œ Coc ํ™•์žฅ ๋ชฉ๋ก์„ ๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ ์ž‘์„ฑ ๋‹น์‹œ์—๋Š” ๋Œ€๋ถ€๋ถ„์ด ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž‘์—… (์œ„ ์ฐธ์กฐ).

vim plug, Pathogen ๋“ฑ์„ ์‚ฌ์šฉํ•˜๋Š” ์ „ํ†ต์ ์ธ ๋ฐฉ๋ฒ•์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋…์„ ๊ณจ๋ผ๋ผ.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰