web-dev-qa-db-fra.com

Comment faire une ligne verticale continue dans vim?

Je veux faire un tableau en vim.

Faire une ligne horizontale est facile

______________________________ 

Pour la verticale j'utilise ceci

yes "|" | head -10

Mais le résultat est mauvais

|
|
|
|
|
|
|
|
|

Je veux quelque chose de contigu comme la ligne horizontale. Comment puis-je faire ceci?

13
elbarna

Si votre version de Vim est compilée avec la prise en charge de multibyte et que l'encodage de votre terminal est correctement défini, vous pouvez utiliser l'Unicode caractères de dessin de boîte , qui inclut des lignes horizontales et verticales ainsi que plusieurs variétés d'intersections et de blocs. Vim définit des digraphes par défaut pour ces caractères, tels que vv pour (pour saisir un digraphe, vous utilisez Ctrl-K; donc en mode insertion ^Kvv insérera le caractère à l'emplacement du curseur). Pour la liste complète si votre version de Vim le prend en charge, tapez :digraphs; pour plus d'informations sur la fonction et pour rechercher par nom de caractère Unicode, tapez :help digraphs.

Selon les paramètres de votre terminal et le choix de la police, cependant, les caractères de dessin de boîte peuvent ne pas tous s'afficher sous forme de lignes connectées, votre kilométrage peut donc varier. Par exemple, sur ma machine, les lignes verticales s'affichent comme connectées dans le terminal (à l'aide de Source Code Pro), mais comme des lignes brisées dans GVim (à l'aide de DejaVu Sans Mono):

Box-drawing characters rendering as solid lines in the terminalBox-drawing characters rendered as broken lines in GVim

27
trentcl

Pour être complet, concernant la réponse précédente:

  • ^kvv conduit à │
  • ^kdr conduit à ┌
  • ^khh conduit à ─
  • ^kdl conduit à ┐
  • ^kur conduit à └
  • ^kul conduit à ┘

Notez que vous pouvez utiliser des majuscules pour une ligne plus épaisse:

  • ^kVV est ┃
  • ^kDR est ┏
  • ^kHH est ━
  • ^kLD est ┓ (LD, et non DL, pour une raison quelconque)
  • ^kUR est ┗
  • ^kUL est ┛

Il existe également des versions avec un boîtier supérieur et un boîtier inférieur.

1
Ricardo Kullock