แฒจแแแแจแแแ. แแแ แแแแ: แแ แแแแแแแฃแ แ แกแขแแขแแ แแแแฌแแ แ แฏแแจ แ แแกแแ, VMware-แแก แแ แฅแแขแแฅแขแแ แแ, แ แแแแแแช แแแ แ แแฃแจแแแแแ แแกแแ แแแแแแแแแแจแ, แ แแแแ แแชแแ CoreOS แแ Heptio แแ แแกแแแ แแ แแก Kubernetes alb-ingress-แแแแขแ แแแแ แแก แแแแแแแขแแ แ. แแแขแแ แ แแแแแ แแแก แแแขแแ แ แ แแชแแแขแก, แ แแแแแแช แจแแแซแแแแ แซแแแแแ แกแแกแแ แแแแแ แแงแแก โแซแแแแ แกแแแแแกโ แแแแ แแชแแแแแก แแแแแแ แแแแกแแแแก, แ แแแแแแแช แฃแแแ แแขแแกแแแแก แแแแญแแแแ vim-แก, แแฃแแแแช แแแแแ แฏแแแแฃแแ แฆแ แฃแแแแก แแแแฅแแจแ.
YAML แแแแแคแแกแขแแแแก แแแฌแแ แ Kubernetes-แแกแแแแก vim-แจแ? แฃแแแแแแแ แกแแแแ แแแแขแแ แแ แแแแก แแแ แแแแแแจแ, แแฃ แกแแ แฃแแแ แแงแแก แจแแแแแแ แแแแ แแ แกแแแชแแคแแแแชแแแจแ? แแ แแฅแแแ แแแแคแแกแแแ แแแแกแฎแแแแแแแก แกแฌแ แแค แจแแฎแกแแแแแแก args
ะธ command
? แแแ แแ แแแแแแแ! Vim-แแแ แแแแแแจแแ แแแ แแแ แขแแแแ
(แแ แแแแแแแฃแ แ แกแขแแขแแแช
แแแแก แกแแ แแแ แ
แแแแก แกแแ แแแ แแแ (แแแแก แกแแ แแแ แแแ) แแกแแฃแแ แแ แแ แแแ แแแแ แแแแก แแแแแแก แจแแกแแซแแแแแแแแแแ แ แแแแฅแขแแ แแแกแ แแ IDE-แแแแ, แ แแกแแแแกแแช แแกแแแ แฃแ แแแแ แแแแแ แแ แแแแแแแแแ แกแแแชแแแแฃแ แ แแ แแขแแแแแแก แแแแแงแแแแแแ -
แแแแกแแแแแก, แ แแ vim-แแ แแแฃแจแแแก แแฆแฌแแ แแแ แแแแ, แแฅแแแ แฃแแแ แแแแแแกแขแแแแ แแ แแแแก แกแแ แแแ แแก แแแแแแขแ. แแ แแแชแ แแ แ แแแแแแ coc.vim
- แแก แแ แแก แงแแแแแแ แแแแฃแแแ แฃแแ แแแแฃแแ แแแแแแแ. แจแแแแซแแแแ แแแแแแกแขแแแแ แแ แแแจแแแแแแ
" Use release branch (Recommend)
Plug 'neoclide/coc.nvim', {'branch': 'release'}
" Or build from source code by use yarn: https://yarnpkg.com
Plug 'neoclide/coc.nvim', {'do': 'yarn install --frozen-lockfile'}
แแแกแแฌแงแแแแ coc
(แแ แจแแกแแแแแแกแแ yaml-language-server) แแแกแญแแ แแแแ node.js แแแแแกแขแแแแ แแแ:
curl -sL install-node.now.sh/lts | bash
แ แแแแกแแช coc.vim
แแแแคแแแฃแ แแ แแแฃแแ, แแแแแแกแขแแแแ แแ แกแแ แแแ แแก แแแคแแ แแแแแ coc-yaml
vim-แแกแแแ:
:CocInstall coc-yaml
แแแแแแแก, แแแแ แแแแแแแแแ แแแแแแแแแแ แแแแคแแแฃแ แแชแแแก แแแฌแงแแแ coc-vim
, แฌแแ แแแแแแแแแ
yaml-language-server-แแก แแแแชแแแแแก แแแงแแแแแ
แ แแ coc
แจแแแซแแแแ แแแแแแงแแแแก yaml-language-server, แแแก แฃแแแ แแแแแฎแแแแก แกแฅแแแแก แฉแแขแแแ แแแ Kubernetes-แแแ YAML แคแแแแแแแก แ แแแแฅแขแแ แแแแกแแก. แแก แแแแแแแ แ แแแแฅแขแแ แแแแ coc-config
:
:CocConfig
แแแแคแแแฃแ แแชแแแจแ แแแแญแแ แแแแแ แแแแแขแแแ kubernetes
แงแแแแ แคแแแแแกแแแแก yaml
. แแ แแแแแขแแแแ แแแงแแแแ แแแแก แกแแ แแแ แก golang
แแกแ แ แแ, แฉแแแ แแแแแแ แแแแคแแแฃแ แแชแแ แแกแ แแแแแแงแฃแ แแแ:
{
"languageserver": {
"golang": {
"command": "gopls",
"rootPatterns": ["go.mod"],
"filetypes": ["go"]
}
},
"yaml.schemas": {
"kubernetes": "/*.yaml"
}
}
kubernetes
โ แ แแแแ แแแ แแแฃแแ แแแแ, แ แแแแแแช แแฃแแแแแ แแแแก แกแแ แแแ แก แฉแแแแขแแแ แแแก Kubernetes แกแฅแแแ แแแแแแแแฃแแ URL-แแแ yaml.schemas
แจแแแซแแแแ แแแคแแ แแแแแแก แแแแแขแแแแแ แกแฅแแแแแแก แแฎแแ แแแกแแญแแ แแ - แแแแแขแแแแแ แแแขแแแแแแกแแแแก แแฎ
แแฎแแ แแฅแแแ แจแแแแซแแแแ แจแแฅแแแแ YAML แคแแแแ แแ แแแแฌแงแแ แแแขแแแแขแฃแ แ แจแแแกแแแแก แแแแแงแแแแแ. แแแญแแ แแ + แกแแแ แชแ (แแ vim-แจแ แแแแคแแแฃแ แแ แแแฃแแ แกแฎแแ แแแแแแแแชแแ) แฃแแแ แแฉแแแแแก แฎแแแแแกแแฌแแแแแ แแแแแแ แแ แแแแฃแแแแขแแชแแ แแแแแแแแ แ แแแแขแแฅแกแขแแก แแแฎแแแแแ:
แแฅ แแฃแจแแแแก +space แแแแขแแ แ แแ แแแแคแแแฃแ แแชแแ แแแแแแแแ inoremap <silent><expr> <c-space> coc#refresh()
. แแฃ แแก แแ แแแแแแแแแแแแ, แแแฎแแ
Kubernetes API แแแ แกแแแก แจแแ แฉแแแ
แแ แแแฌแแ แแก แแแแแแขแแกแแแแก, yaml-language-server แแแแแแแแแ Kubernetes 1.14.0 แกแฅแแแแแแ. แกแฅแแแแก แแแแแแแฃแ แแ แแ แฉแแแแก แแแ แแแ แแแแแแ, แแแแขแแ แแแแฎแกแแแ server.ts
.
แแฅแแแแก แแแแ แแขแแ แแแก แแแแกแแชแแแแแ, แฃแแ แแแแ แแแฎแกแแแแ YAML แคแแแแ vim-แแ แแ แแแแแแ แแ แแชแแกแ yaml-language-server
.
ps aux | grep -i yaml-language-server
joshrosso 2380 45.9 0.2 5586084 69324 ?? S 9:32PM 0:00.43 /usr/local/Cellar/node/13.5.0/bin/node /Users/joshrosso/.config/coc/extensions/node_modules/coc-yaml/node_modules/yaml-language-server/out/server/src/server.js --node-ipc --node-ipc --clientProcessId=2379
joshrosso 2382 0.0 0.0 4399352 788 s001 S+ 9:32PM 0:00.00 grep -i yaml-language-server
แฉแแแแแแแก แจแแกแแแแแแกแ แแ แแชแแกแแ แแ แแชแแกแ 2380: แแก แแ แแก แแก, แ แแกแแช แแงแแแแแก vim YAML แคแแแแแก แ แแแแฅแขแแ แแแแกแแก.
แ แแแแ แช แแแแแแแ แฎแแแแแ, แคแแแแ แแแแแแ แแแแก /Users/joshrosso/.config/coc/extensions/node_modules/coc-yaml/node_modules/yaml-language-server/out/server/src/server.js
. แฃแแ แแแแ แจแแชแแแแแ แแแ แแแแจแแแแแแแแก แจแแชแแแแ KUBERNETES_SCHEMA_URL
แแแแแแแแแ, 1.17.0 แแแ แกแแแกแแแแก:
// old 1.14.0 schema
//exports.KUBERNETES_SCHEMA_URL = "https://raw.githubusercontent.com/garethr/kubernetes-json-schema/master/v1.14.0-standalone-strict/all.json";
// new 1.17.0 schema in instrumenta repo
exports.KUBERNETES_SCHEMA_URL = "https://raw.githubusercontent.com/instrumenta/kubernetes-json-schema/master/v1.17.0-standalone-strict/all.json";
แแแแแงแแแแแฃแแ แแแ แกแแแก แแแฎแแแแแ coc-yaml
แแแแจแ แชแแแแแแก แแแแแแ แแแแ แจแแแซแแแแ แแแแกแฎแแแแแแแแแแก. แแกแแแ แแแแแแแแแกแฌแแแแ, แ แแ แแ แจแแแชแแแแ แกแแชแแแ garethr
on instrumenta
. แฒ แแแแ แช แฉแแแก garethr
แแแแแแ แแ แแฅ แแแแฎแแแ แ แกแฅแแแแแแ.
แแแแก แจแแกแแแแฌแแแแแแ, แ แแ แชแแแแแแแ แจแแแแแ แซแแแแจแ, แแแฎแแ แแฃ แแ แ แแแแ, แ แแแแแแช แแฅแแแแ แแ แแงแ [Kubernetes-แแก แฌแแแ แแแ แกแแแแจแ]. แแแแแแแแแ, K8s 1.14 แแแแแ แแแแจแ แแ แแงแ
แ แแแแฃแแ
แแแแแ แแแฅแแก, แ แแ แแก แจแแกแแซแแแแแแแ แแกแแแ แแแแแฎแแ แแแ, แ แแแแ แช แแ. แแแแแแแ แ YAMLing! แแแ แฌแแฃแแแแ, แ แแ แจแแแแแฌแแแ แแก แกแแชแแแ, แ แแ แฃแแแ แแแแแแ แกแขแแขแแแจแ แแแฎแกแแแแแ แแแแฃแแแแฃแ แ แกแแจแฃแแแแแแแ:
- coc-vim:
https://github.com/neoclide/coc.nvim ; - แแแ-แแแแแ:
https://github.com/neoclide/coc-yaml .
PS แแแแ แแแแแแแกแแแ
แแ แแกแแแ แแ แกแแแแแก
แแกแแแ แฌแแแแแแฎแแ แฉแแแแก แแแแแแ:
- ยซ
kubebox แแ แกแฎแแ แญแฃแ แแแแ Kubernetes-แแกแแแแก "; - ยซ
แแแแกแแแแก แแแแฎแแแ แแแแ Kubernetes-แแแ แแฃแจแแแแแกแแแแก kubectl-แแก แกแแจแฃแแแแแแ ".
แฌแงแแ แ: www.habr.com