Vim cum YAML subsidium Kubernetes

Nota. transl.Articulus originalis scriptus est a Josh Rosso architectus VMware, qui antea in societatibus CoreOS et Heptio laboravit, et etiam auctor Kubernetorum alb-ingress-rectoris est. Auctor parvam reciperatiunculam communicat quae valde utilis esse potest pro operationibus fabrum "vetus" qui vim etiam in aetate nubis victoris patriae praeponunt.

Vim cum YAML subsidium Kubernetes

Scriptura YAML manifestat pro Kubernetes in vim? Innumeras horas consumpsit ut instaret ubi proximus campus in hac specificatione esset? Aut fortasse bene commonitionem differentiae args ΠΈ command? Bonum nuntium! Vim facile vinculo yaml-lingua-servout latae sententiae complementum, sanatio et alia commoda consequantur. In hoc articulo loquemur quomodo clientem linguae instituendae pro hoc.

(The original article also ibi video, ubi auctor loquitur et demonstrat contenta materiae.

Lingua server

Lingua servers (Lingua servers) loqui de facultatibus programmandi linguas editoribus et IDES, pro quibus mutuam inter se mutuam protocollo speciali utentes. Lingua Servo COMMENTARIUM (LSP). Hic magnus accessus est quia permittit unam exsecutionem praebere data multis simul editoribus/IDE. Iam habeo scripsi fere gopls - lingua servo Golang pro - et quomodo in usu esse potest vim. Gradus ad autocompletionem in YAML acquirendi pro Kubernetes similes sunt.

Vim cum YAML subsidium Kubernetes

Ut vim ad operandum modo describit, necesse est ut clientem linguae Latinae instituas. Duo modos novi are LanguageClient-neovim ΠΈ coc.vim. In articulum considerabo coc.vim - Hoc plugin maxime populare in momento. Vos can install is via vim-plug:

" 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'}

Nam initio coc (ita yaml-language-server) node.js inauguratus requiret:

curl -sL install-node.now.sh/lts | bash

quod coc.vim configuratur, servo install extensio coc-yaml ex vi:

:CocInstall coc-yaml

Vim cum YAML subsidium Kubernetes

Denique, maxime verisimile est cum configuratione incipere vis coc-vim, presented in exemplum. Praesertim compositionem operatur +spatium ut autocompletionem.

Profecti sunt yaml-lingua-servo deprehendatur

quod coc uti yaml-language-server, rogari debet ut schema ab Kubernetibus cum fasciculis YAML edendis oneret. Hoc fit ab edendo coc-config:

:CocConfig

In configuratione addere necesse erit kubernetes omnibus files yaml. Ego quoque uti lingua servo for golangita mihi communis config similis est:

{
  "languageserver": {
      "golang": {
        "command": "gopls",
        "rootPatterns": ["go.mod"],
        "filetypes": ["go"]
      }
  },

  "yaml.schemas": {
      "kubernetes": "/*.yaml"
  }
}

kubernetes - campus reservatus qui lingua servo narrat ut schema Kubernetes de domicilio definitum emittat hoc constant. yaml.schemas augeri potest ad ulteriora consilia sustinenda - pro magis details, vide pertinet documentum.

Iam fasciculum YAML creare potes et autocompletionem inire. Pressio +spatium (vel alia coniunctio in vim configurata) ostendere debere agros et documenta praesto pro praesenti contextu:

Vim cum YAML subsidium Kubernetes
+Space hic laborat quia figuram habeo inoremap <silent><expr> <c-space> coc#refresh(). Si non feceris, vide coc.nvim README ad exemplum figurae.

Discriptis Kubernetes API versionem

Ut huius scripturae, yaml-language-server navibus cum schematibus Kubernetes 1.14.0. Viam non invenio ad schema alacriter eligendum, sic aperui correspondentes GitHub exitus. Fortunate, cum lingua servientis in typoscripte scripta sit, facile est versionem manualem mutare. Ad hoc modo tabellam invenias server.ts.

Ut in machina tua deprehendas, solum fasciculum YAML per vim aperi et processum inuenies 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

Processus nobis pertinet processus 2380: vim habet cum lima YAML emendo.

Ut facile perspicis, tabella in sita est /Users/joshrosso/.config/coc/extensions/node_modules/coc-yaml/node_modules/yaml-language-server/out/server/src/server.js. Iustus edit mutando valorem KUBERNETES_SCHEMA_URLexempli gratia pro versione 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";

Secundum versionem usus est coc-yaml Locus variabilis in codice variari potest. Nota etiam quod repositio mutavi ex garethr on instrumenta. Videtur quod garethr switched to supporting circuits there.

Ad reprimendam quod mutatio effectum sortita sit, vide an ager non ante ibi apparuerit. Exempli gratia in schemate de K8s 1.14 nulla erat startupProbe:

Vim cum YAML subsidium Kubernetes

summary

Spero hanc occasionem quantum mihi gratum est. Beatus YAMLing! Inspicias haec repositoria ut melius cognoscant utilitates de quibus in articulo:

PS ab translator

Et est etiam vikube, vim-kubernetes ΠΈ vimkubectl.

Lege etiam in nostro diario:

Source: www.habr.com