J'ai été inspiré par this (numéro 2) pour rendre mes cordes dur codées laides.Comment puis-je faire des chaînes codées en dur dans un VIM?
Comment puis-je faire cela dans VIM?
J'ai été inspiré par this (numéro 2) pour rendre mes cordes dur codées laides.Comment puis-je faire des chaînes codées en dur dans un VIM?
Comment puis-je faire cela dans VIM?
Les fichiers basés sur les langages sont stockés dans $VIMRUNTIME/syntax
, un fichier .vim
par langue, c'est donc là que vous devez aller pour changer les choses.
Par exemple, mon fichier C est stocké dans C:\Program Files\Vim\vim70\syntax\c.vim
et, si vous ajoutez la ligne suivante à la fin, avant la let b:current_syntax = "c"
, vous obtiendrez l'effet exact dont vous avez besoin:
hi String guifg=#ff0000 guibg=#ffff00
Pour texte- basé VIM, les options de ctermfg et ctermbg doivent être utilisés à la place, quelque chose comme:
hi String ctermfg=Red ctermbg=Yellow
Je ne l'ai pas testé ces puisque je n'utilise que gvim de nos jours.
Dans votre .vimrc:
highlight String guifg=1 guibg=11
hm ... cela dépend de l'installation. ça ne marche pas pour moi. Vous pouvez m'avoir donné assez pour chasser et picorer mon chemin cependant. Merci! –
Cela suppose gvim. Pour la version de ligne de commande, utilisez ctermfg et ctermbg. De plus, vous devez activer la coloration syntaxique. –
ouf! c'est haineux! Merci :) –
highlight clear String
highlight link String Error
Un peu plus haut l'OMI, de sorte que vous voudrez peut-être de ne pas le rendre permanent.
Je me demandais juste; Détestez-vous le type de variable de chaîne? – Suroot
@Suroot: Les chaînes codées en dur doivent être évitées autant que les nombres "magiques" dans votre code source. Faire des chaînes codées en dur laide les fait ressortir de sorte que vous pouvez les repérer et les retirer plus facilement. –
Je ne suis pas d'accord, Bill. Les chaînes codées en dur sont parfois mauvaises à des fins de traduction, mais elles ne sont pas aussi mauvaises que les nombres magiques puisqu'elles portent leur définition dans leur contenu. La chaîne "Can not open file" est tout aussi bonne que ERR_CANNOT_OPEN_FILE. – paxdiablo