Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 07-05-2020 11:10:54

Alyve
Adhérent(e)
Lieu : Belgique
Distrib. : Debian Sid
Noyau : Linux 5.6.0-1-amd64
(G)UI : i3 ftw
Inscription : 31-07-2011
Site Web

Vim: vos extensions préférées

Bonchour. smile

J'avais envie de créer ce petit sujet pour discuter de nos extensions Vim préférées, nos coups de cœur, etc. J'espère qu'il est dans la bonne section.
L'objectif c'est de partager nos extensions Vim ou nos .vimrc. N'hésitez donc pas.

Pour ma part, hier je suis partie à la recherche du même comportement que le Double-Shift de Phpstorm (fuzzy search). Après avoir testé fff et fzf, je suis tombée sur CtrlP qui est un régal. smile
J'ai fait une petite démonstration pour celleux qui veulent ici.

Et vous, c'est quoi vos coups de cœur ? :3

Dell Latitude E7450 • Debian Sid • i3
Fairphone 3 • Lineage OS • Pie
BlogShaarliMastodon

Hors ligne

#2 07-05-2020 15:02:06

naguam
Membre
Lieu : Quelque part
Distrib. : Plusieurs
Noyau : Ça dépend
(G)UI : La CLI il n'y a que ça de vrai!
Inscription : 13-06-2016

Re : Vim: vos extensions préférées

J'utilises vim tous les jours pour programmer mais je n'utilise pas de conf particulière, juste

syntax on
filetype plugin indent on
set number
set ts=4 sw=4
set softtabstop=4
set expandtab
set autoindent
set smartindent
set background=dark
set colorcolumn=80
highlight ColorColumn ctermbg=grey

Je préfère des vrai tab de 8 mais là ou je bosses j'ai une norme à respecter à ce niveau.
(avec cette conf quand j'appuie sur tab ça met 4 espace donc je change pas mes habitudes de clavier)
Après j'exploite un maximum les contrôle de vim de base et pour la complétion j'utilise les ctags.
Mais cela génère la complétion que pour mes fonctions déjà existantes. Les func de la libc (je fais principalement du C)
n'ont pas la complétion mais c'est que je sais pas comment faire en sorte que ctags prennent aussi la libc de base.
J'utilises

ctags -R .

à la racine du dépôt (git) en sachant que je ne prend pas la libc.
Pour plugin j'en utilise qu'un seul qui permet de générer le header de là ou je bosses.
Petit clin d'oeil, un de ces jours quand j'aurais le temps (car je bosses toujours autant en confinement)
je me mettrais bien à Sway, ça m'a toujours attiré mais j'ai pas eu le temps.

Dernière modification par naguam (07-05-2020 16:58:32)

Hors ligne

#3 07-05-2020 15:46:44

Cauryl
Membre
Distrib. : Debian Buster
(G)UI : Xfce
Inscription : 12-02-2020

Re : Vim: vos extensions préférées

Mon plugin préféré est vim-lsc : un client LSP. smile

Points forts :
- Client léger !
- Ne réinvente pas la roue : ne remplace pas l'omnicomplétion built-in par de l'autocomplétion. Tous les autres clients LSP font ça, c'est absolument détestable.
- Ne réinvente pas la roue x2 : les raccourcis clavier pour naviguer dans le code et le projet à l'aide de LSP sont les mêmes que pour naviguer à l'aide des tags. C'est donc tout à fait transparent.
- Un seul plugin contre un jeu de plusieurs plugins pour les autres clients LSP.

Points faibles : La configuration à la main pour chaque langage pour utiliser les serveurs LSP. J'ai ajouté pas mal d'entrées dans le Wiki mais il manque encore beaucoup d'autres langages.

Par contre, impossible de poster ma conf puisqu'elle est découpée en plein de morceaux : le .vimrc et les scripts dans ~/.vim/{autoload,ftplugin,plugin}/.

naguam a écrit :

set background=dark


Le thème par défaut ne te tue pas les yeux ? Je l'aime beaucoup - le côté vieillot, tout ça - mais je trouve qu'il fatigue énormément les yeux.

Dernière modification par Cauryl (07-05-2020 15:48:32)

Hors ligne

#4 07-05-2020 16:51:49

naguam
Membre
Lieu : Quelque part
Distrib. : Plusieurs
Noyau : Ça dépend
(G)UI : La CLI il n'y a que ça de vrai!
Inscription : 13-06-2016

Re : Vim: vos extensions préférées

En fait je set le background à dark pour que la coloration syntaxique faite par default par vim soit toujours comme si le fond est sombre.
Car sur certains terminaux (et en plus avec tmux), bien que sombre, vim laisse en clair et je préfère la coloration sombre sur mes terminaux sombres smile
(et le clair me tue les yeux). Je ne vois pas ce qui fait vieillot. Mais j'ai peut-être pas compris ce que tu voulais dire.
Je n'utilise pas de version graphique de vim donc l'esthétique (thème)..... je vois pas trop.

Qu'appelles-tu par "le thème par default" ?

Dernière modification par naguam (07-05-2020 16:57:00)

Hors ligne

#5 07-05-2020 17:16:15

Beta-Pictoris
Membre
Lieu : Angers
Distrib. : Buster
Inscription : 11-08-2015

Re : Vim: vos extensions préférées

On peut changer la couleur avec la commande colorscheme. Exemple :

colorscheme morning



On peut aussi changer le couleur du curseur quand on est en mode insertion ou remplacement :

if &term =~ "xterm"
    let &t_SI = "\<Esc>]12;purple\x7"
    let &t_SR = "\<Esc>]12;red\x7"
    let &t_EI = "\<Esc>]12;blue\x7"
endif
 


Cela évite d'avoir à regarder en bas de l'écran. smile

Dernière modification par Beta-Pictoris (07-05-2020 17:16:45)

Hors ligne

#6 07-05-2020 17:39:03

naguam
Membre
Lieu : Quelque part
Distrib. : Plusieurs
Noyau : Ça dépend
(G)UI : La CLI il n'y a que ça de vrai!
Inscription : 13-06-2016

Re : Vim: vos extensions préférées

Ça change quoi par rapport au fait de mettre le background en dark ? (colorscheme)
En effet si les mots parlent d'eux même (entre changer juste les couleurs du texte, ou toutes les couleurs), en pratique, ça fait quoi ?

Edit: au contraire, colorscheme change carrément tout de ce que je viens de tester smile

Dernière modification par naguam (07-05-2020 17:41:44)

Hors ligne

#7 07-05-2020 17:53:37

Cauryl
Membre
Distrib. : Debian Buster
(G)UI : Xfce
Inscription : 12-02-2020

Re : Vim: vos extensions préférées

naguam,
Je sais bien ça pour l'histoire de la variable background.
J'appelle « thème par défaut » le jeu de couleurs inscrit en dur dans le code de Vim (et dont on peut modifier la variante (claire/sombre) grâce au code contenu dans le script/thème default.vim). Enfin, le comportement initial quand on ne définit pas de thème soi-même quoi. wink

Et le jeu de couleurs par défaut est quand même l'opposé totale d'un thème moderne, non ? tongue
Mais c'est loin d'être une critique en fait. J'aime beaucoup la couleur par défaut. Le problème, ce que le contraste entre le fond et le code fatigue les yeux. J'ai fait plein de pirouettes pour essayer de diminuer la gêne et conserver le thème... Et puis il a bien fallu utiliser autre chose.

Beta-Pictoris,
Idée assez similaire : à coller dans ~/.vim/plugin/autornu.vim

augroup numbertoggle
  autocmd!
  autocmd BufEnter,FocusGained,InsertLeave,WinEnter * if &number | set relativenumber   | endif
  autocmd BufLeave,FocusLost,InsertEnter,WinLeave   * if &number | set norelativenumber | endif
augroup END
 


Ça alterne automatiquement entre relativenumber et norelativenumber en fonction du mode (pas seulement, mais l'idée est là).
wink

Édit : Devancé par naguam !

Dernière modification par Cauryl (07-05-2020 18:02:39)

Hors ligne

#8 07-05-2020 17:53:55

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : 5.8.7
(G)UI : openbox
Inscription : 26-08-2010

Re : Vim: vos extensions préférées

@naguam, il fût un temps pour les ctags, j'avais fait :


ctags -R /usr/include
 


Ça ne contient pas que la libc, donc c'est vraiment très gros en fonction des
lib de dev que tu installes…
Tu peux aussi faire une liste des fichiers que tu veux tagger et ensuite faire :


ctags $(cat list-tags.txt)
 


Pour obtenir cette liste tu peux commencer par :


find /usr/include -type f -name '*.h' >list-tags.txt
 


puis élaguer en éditant le fichier généré.

Hors ligne

#9 07-05-2020 18:10:02

naguam
Membre
Lieu : Quelque part
Distrib. : Plusieurs
Noyau : Ça dépend
(G)UI : La CLI il n'y a que ça de vrai!
Inscription : 13-06-2016

Re : Vim: vos extensions préférées

Merci @enicar smile, il y a moyen de générer du ctags et que cela soit pris en compte pour n'importe quel fichier ? (pour tout le système) (voir même si possible juste pour les .c et .h)
A moins qu'il faille juste mettre le fichier ctags le plus bas possible de notre emplacement d'édition (comme à la racine de /home).
Je ne connais pas trop la gestion de la prise en compte des tags par vim.

@Cauryl, je sais pas, je ne trouve pas ça vieillot, j'ai assez de contrastes pour mes yeux (mais après je ne fais pour le moment quasiment que du C et du shell ou des fichiers de conf).
Mais la notion de vieillot est probablement personnelle et ne dépend même pas de l'âge (car je suis plutôt jeune même si je n'indique pas mon âge).

Dernière modification par naguam (07-05-2020 18:14:16)

Hors ligne

#10 07-05-2020 18:33:41

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : 5.8.7
(G)UI : openbox
Inscription : 26-08-2010

Re : Vim: vos extensions préférées

Mes plugins préférés ont été, pathogen, matchit, fuzzyfinder,
bufexplorer, nerdcommenter, taglist et aussi syntastic qu'il vaut
mieux remplacer par ALE avec vim 8.
Je n'utilise plus trop vim pour l'instant sauf pour les éditions
très courtes.

Taglist et bufexplorer font double emploie avec le fuzzyfinder,
mais bon j'utilisais les 3 quand mêmes smile

Hors ligne

#11 07-05-2020 18:36:46

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : 5.8.7
(G)UI : openbox
Inscription : 26-08-2010

Re : Vim: vos extensions préférées

naguam a écrit :

l y a moyen de générer du ctags et que cela soit pris en compte pour n'importe quel fichier ? (pour tout le système) (voir même si possible juste pour les .c et .h)
A moins qu'il faille juste mettre le fichier ctags le plus bas possible de notre emplacement d'édition (comme à la racine de /home).
Je ne connais pas trop la gestion de la prise en compte des tags par vim.


C'est une question ?
J'avais mis un fichiers de tags directement dans /usr/include/, ça permet à vim de s'y retrouver. Sinon
ça marche moins bien.

Hors ligne

#12 07-05-2020 20:10:39

naguam
Membre
Lieu : Quelque part
Distrib. : Plusieurs
Noyau : Ça dépend
(G)UI : La CLI il n'y a que ça de vrai!
Inscription : 13-06-2016

Re : Vim: vos extensions préférées

Je me suis pas forcement bien exprimé mais quand on génère les tags avec ctags, le fichier tags, je me demandais ou faut-il le placer pour que vim le prenne en compte car il le prend pas en compte partout, il faut qu'il soit dans un repertoire en plus proche de / que là ou on édite (je sais plus si on dis en dessous ou au dessus ça dépend comment on voit l'arborescence).
Mais du coup d'après mes tests, c'est le cas.
Du coup merci beaucoup @enicar.

Dernière modification par naguam (07-05-2020 20:10:53)

Hors ligne

#13 07-05-2020 20:32:45

enicar
Membre
Lieu : ailleurs
Distrib. : sid
Noyau : 5.8.7
(G)UI : openbox
Inscription : 26-08-2010

Re : Vim: vos extensions préférées

@naguam Il me semble bien que les fichiers ctags sont aussi cherché dans les répertoires
de la variable `path' de vim. (à vérifier je n'utilise plus vim très souvent).

Hors ligne

#14 15-06-2020 20:40:39

DarKou
Membre
Lieu : Bordeaux
Distrib. : Debian Buster
Noyau : stable de chez kernel.org
(G)UI : GNOME 3.30.2 / i3
Inscription : 06-04-2020
Site Web

Re : Vim: vos extensions préférées

J'utilise vim depuis mes débuts sous GNU/Linux ( vers ~2003) mais je n'ai jamais pris le temps de vraiment l'utiliser. En gros jusqu'à présent je m'en servais surtout quand je prenais la main à distance sur un serveur pour modifier un fichier de conf ou autre.

Sauf que... en ce moment j'ai envie de revoir mes habitudes et utiliser des applications plus sobres/moins graphiques (i3wm, neomutt etc) je me suis dit qu'il serait bien d'aller plus loin et d'apprendre ENFIN à utiliser VIM correctement big_smile .

Les plugins que j'utilise pour le moment :

        Plug 'arcticicestudio/nord-vim'
        Plug 'preservim/nerdtree'
        Plug 'kshenoy/vim-signature'
        Plug 'w0rp/ale'
 



Et mon .vimrc du moment : https://pastebin.com/pwwizjj4

Je dois encore regarder pour :
- splitter la vue (et comment passer simplement de la vue gauche/droite big_smile ) => ok c'est natif en fait big_smile
- Ctrl+clic pour aller à la définition d'une fonction (l'équivalent du ctrl+clic des IDE)
- ouvrir rapidement un fichier d'un projet (à voir si NERDTree n'est pas déjà suffisant pour cette tâche)
- color viewer (un peu gadget mais bon ça fait toujours plaisir de voir le rendu de la couleur hexa que l'on affecte big_smile ) => vim-css-color

Je dev principalement (exclusivement ?) en NodeJS/React, si vous avez des plugins qui pourraient m'aider au quotidien je suis preneur

Dernière modification par DarKou (15-06-2020 20:57:48)

Hors ligne

#15 16-06-2020 06:50:11

smolski
quasi...modo
Lieu : AIN
Distrib. : backports (buster) 10
Noyau : Linux 4.19.0-8-amd64
(G)UI : gnome
Inscription : 21-10-2008

Re : Vim: vos extensions préférées

Ce post est mis en lien dans le tuto du wiki :
https://debian-facile.org/doc:editeurs: … igurer-vim cool

"Théo et Adama te rappellent pourquoi Zyed et Bouna couraient…"
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

Pied de page des forums