web-dev-qa-db-fra.com

Vim: Comment changer la couleur de surbrillance pour les résultats de recherche et la sélection de correctifs

J'utilise la palette de couleurs du désert, qui utilise du texte blanc sur un fond orange pour mettre en évidence les résultats de recherche. Le même modèle est utilisé pour l'entrée sélectionnée dans la fenêtre de correction rapide.

Le blanc sur l'orange n'est pas très lisible. Comment puis-je changer cela dans .vimrc?

Edit: Merci pour la réponse rapide, pour le schéma du désert, j'utilise maintenant la modification de surlignage de recherche suivante:

highlight Search guibg='Purple' guifg='NONE'

Le violet est assez facile à détecter visuellement. IMHO n’est pas utilisé pour la coloration syntaxique dans le schéma du désert.

105
Juve

Regarder $VIMRUNTIME/colors/desert.vim. Les mappages de couleurs y sont définis avec le hi[ghlight] commande. La mise en surbrillance de la recherche est définie comme suit:

hi Search guibg=peru guifg=wheat

pour l'interface graphique et

hi Search cterm=NONE ctermfg=grey ctermbg=blue

pour les terminaux.

Vous pouvez remplacer ce paramètre dans votre .vimrc en utilisant la même commande après avoir sélectionné votre colorscheme. Tapez :h hi pour aider.

146
Ferdinand Beyer

Pour moi, je dois aussi ajouter hlsearch sous syntax on dans le ~/.vimrc

set hlsearch
hi Search ctermbg=LightYellow
hi Search ctermfg=Red

Inside VIM vous pouvez également faire: :highlight Search ctermfg=yellow pour le changer à la volée.

  • ctermfg est pour la couleur de premier plan
  • ctermbg est pour la couleur de fond

les couleurs disponibles à partir de la page de documentation vi sont les suivantes:

*cterm-colors*

NR-16   NR-8    COLOR NAME 
0       0       Black
1       4       DarkBlue
2       2       DarkGreen
3       6       DarkCyan
4       1       DarkRed
5       5       DarkMagenta
6       3       Brown, DarkYellow
7       7       LightGray, LightGrey, Gray, Grey
8       0*      DarkGray, DarkGrey
9       4*      Blue, LightBlue
10      2*      Green, LightGreen
11      6*      Cyan, LightCyan
12      1*      Red, LightRed
13      5*      Magenta, LightMagenta
14      3*      Yellow, LightYellow
15      7*      White
38
LeOn - Han Li

Dans mon cas, la ligne dans la fenêtre de correction rapide affichait un gris illisible sur cyan, ce qui était différent des résultats de ma recherche (un noir plus agréable sur Peach). Ceci a été confirmé par la commande

:hi

qui montrait le formatage de QuickFixLine et Search comme étant défini sur

QuickFixLine   xxx term=reverse guibg=Cyan
Search         xxx term=reverse ctermfg=0 ctermbg=222 guifg=#000000 guibg=#FFE792

xxx avait un exemple de format,

J'ai ajouté la ligne suivante à mon ~/.vimrc

hi QuickFixLine term=reverse ctermbg=52

et maintenant dans ma fenêtre de terminal, j'ai un fond rouge foncé plus agréable. Fonctionnement hi: montre l’ajout du changement de couleur d’arrière-plan pour mon ternimal:

QuickFixLine   xxx term=reverse ctermbg=52 guibg=Cyan

(vim 8 sur MacOS High Sierra dans iTerm2, sur le thème Molokai)

4
Spangen