Comment obtenir la liste de tous les schémas de couleurs installés dans Vim?

Est-il possible d’obtenir une liste de tous les schémas de couleurs installés dans Vim? Cela rendrait très facile de sélectionner un sans regarder le répertoire .vim .

Type

:colorscheme puis Space suivi de TAB .

ou comme dit Peter,

:colorscheme puis Space suivi de CTRL d

La version courte de la commande est :colo , vous pouvez donc l’utiliser dans les deux commandes précédentes, au lieu d’utiliser la “forme longue”.

Si vous voulez trouver et prévisualiser plus de thèmes, il existe différents sites comme les couleurs de Vim

Vous pouvez voir la liste des schémas de couleurs sous /usr/share/vim/vimNN/colors ( NN étant la version, par exemple vim74 pour vim 7.4).

Ceci est expliqué ici .

Sur les serveurs Linux que j’utilise via ssh, TAB imprime ^I et CTRL d imprime ^D

Si vous souhaitez installer un plug-in, je vous recommande https://github.com/vim-scripts/CycleColor .

faire défiler tous les jeux de couleurs installés. Bon moyen de choisir facilement un programme de couleurs.

Pour plus de commodité, de nombreuses personnes recherchent ce sujet pour obtenir une référence rapide et trop laz … désolé, occupé, pour se vérifier (y compris moi), voici une liste des jeux de couleurs par défaut pour Vim 7.4:

 blue.vim darkblue.vim, delek.vim desert.vim elflord.vim evening.vim industry.vim koehler.vim morning.vim murphy.vim pablo.vim peachpuff.vim ron.vim shine.vim slate.vim torte.vim zellner.vim 

Si vous avez compilé votre vim avec le +menu , vous pouvez suivre les menus avec l’ :help du console-menu de la console-menu . De là, vous pouvez accéder à Edit.Color\ Scheme pour obtenir la même liste qu’avec in gvim .

Une autre méthode consiste à utiliser un script cool ScrollColors qui prévisualise les jeux de couleurs tout en faisant défiler les schémas avec j/k .

Voici une petite fonction que j’ai écrite pour essayer tous les jeux de couleurs dans le répertoire $ VIMRUNTIME / colors.

Ajoutez la fonction ci-dessous à votre vimrc, puis ouvrez votre fichier source et appelez la fonction depuis la commande.

 function! DisplayColorSchemes() let currDir = getcwd() exec "cd $VIMRUNTIME/colors" for myCol in split(glob("*"), '\n') if myCol =~ '\.vim' let mycol = substitute(myCol, '\.vim', '', '') exec "colorscheme " . mycol exec "redraw!" echo "colorscheme = ". myCol sleep 2 endif endfor exec "cd " . currDir endfunction 

En regardant le menu.vim de mon système (recherchez le sous-menu Color Scheme) et la réponse de @ chappar, j’ai trouvé la fonction suivante:

 " Returns the list of available color schemes function! GetColorSchemes() return uniq(sort(map( \ globpath(&runtimepath, "colors/*.vim", 0, 1), \ 'fnamemodify(v:val, ":t:r")' \))) endfunction 

Il fait ce qui suit:

  1. Obtient la liste des scripts de schéma de couleurs disponibles sous tous les chemins d’exécution (globpath, runtimepath)
  2. Mappe les chemins de script vers leurs noms de base (les répertoires des répertoires parent et l’extension) (map, fnamemodify)
  3. Trie et supprime les doublons (uniq, sorting)

Ensuite, pour utiliser la fonction, je fais quelque chose comme ceci:

 let s:schemes = GetColorSchemes() if index(s:schemes, 'solarized') >= 0 colorscheme solarized elseif index(s:schemes, 'darkblue') >= 0 colorscheme darkblue endif 

Ce qui signifie que je préfère les schémas «solarisés» et ensuite «bleu foncé»; si aucun n’est disponible, ne faites rien.

Une excellente solution et mes remerciements à vos consortingbuteurs. Pendant des années, je me suis débattu avec une palette de couleurs totalement infâme – en utilisant SSH sous Windows Vista sur un système Redhat, de type terminal xterm. L’éditeur se présenterait avec un fond noir et des couleurs étranges pour différents mots-clés. Pire encore – ce schéma de couleurs étrange rest dans le terminal xterm après avoir quitté Vim.

Vraiment déroutant

En outre, Backspace a échoué pendant un mode d’insertion, ce qui était désagréable à retenir – bien que Delete ait fait la même chose.

Le traitement —

  1. Dans le moniteur SSH, sélectionnez Modifier / Paramètres.

    une. Choisissez Paramètres du profil / Couleurs

    b. cochez ‘activer les couleurs ANSI’

    c. Les couleurs standard du texte sont probablement OK

  2. Ajoutez ces lignes à $ HOME / .vimrc:

    couleurscheme default

    if & term == “xterm”

    set t_kb = ^ H

    fixdel

    fin si

  3. NOTE: le ^ H DOIT être tapé comme ctrl-V ctrl-H. Cela semble étrange, mais cela semble fonctionner.

Essayer

 set wildmenu set wildmode=list:full set wildcharm= let mapleader=',' nnoremap c :colorscheme  

dans votre ~/.vimrc .

Les deux premières lignes permettent de faire apparaître des correspondances sous forme de listes. Vous pouvez utiliser l’un ou l’autre ou les deux.

La quasortingème ligne est leader au lieu de la valeur par défaut \ .

La dernière ligne vous permet de taper simplement ,c pour obtenir une liste et une invite pour changer votre schéma de couleurs.

La troisième ligne permet effectivement aux Tab d’apparaître dans les mappages de touches.

(Bien sûr, toutes ces stratégies que j’ai apsockets sur Internet, et surtout SO, très récemment.)