mise en évidence de la syntaxe objective-c pour vim

0

Je voudrais avoir une excellente syntaxe highliter pour obj-c qui correspond ou bat celle de mon xcode ..

J'ai installé base16 via yadr , et j'ai aussi installé cocoa.vim pour mieux mettre en évidence la syntaxe .. mais installer ce dernier n'a pas beaucoup changé et c'est ce que j'ai:

entrez la description de l'image ici

comparez cela avec zenburn pour la coloration xcode sur le même fichier:

entrez la description de l'image ici

en dehors de la différence de couleurs (ce qui est une préférence personnelle et ce n’est pas ce que je demande) .. j’ai remarqué que le zenburn pour xcode reconnaissait beaucoup plus de choses que le vim .. comment puis-je répondre à cela dans vim ? Je veux vraiment faire tout mon développement sur Vim à l'avenir.

ps Je ne sais pas si cocoa.vim fait au- dessus du même travail que ce que cette prise en pension fait pour javascript par exemple .. vous pouvez obtenir un visuel pour cette différence ici

abbood
la source

Réponses:

2

Vous aurez probablement besoin de faire des modifications assez importantes dans ces deux fichiers:

https://github.com/msanders/cocoa.vim/blob/master/after/syntax/objc_enhanced.vim
https://github.com/msanders/cocoa.vim/blob/master/after/syntax/cocoa_keywords.vim

pour correspondre à la coloration syntaxique de XCode. C'est une tâche non-triviale à laquelle vous ne pouvez vraiment pas vous attendre. Les faits a) que ces fichiers ont 4 ans et b) que leur auteur a complètement cessé de soutenir ses articles sur Vim ne simplifient pas les choses.

Je ne connais pas de didacticiel en ligne complet sur l'écriture de votre propre script de syntaxe, vous ne pourrez donc pas échapper à la lecture :help syntaxde haut en bas et à l'arrière et jeter un coup d'œil aux autres scripts de syntaxe $VIMRUNTIME/syntax/.

FWIW, les groupes de surbrillance définis par cocoa.vim sont tous liés à ces sept groupes de surbrillance standard (j'ai ajouté leur valeur hexadécimale extraite de votre schéma de couleurs):

Keyword    #b48ead
Special    #96b5b4
Type       #d08770
Constant   #d08770
Error      no value
String     #a3be8c
Identifier #bf616a

Vous remarquerez que, dans la base16, Typeet Constantont les mêmes couleurs qui peuvent ne pas être une bonne chose. D'après votre capture d'écran XCode, il ne semble pas qu'il utilise plus de couleurs que base16. Il peut donc être suffisant d'ajouter quelques groupes de syntaxe.

romainl
la source
3

J'ai installé base16 via yadr, et j'ai aussi installé cocoa.vim pour mieux mettre en évidence la syntaxe .. mais installer ce dernier n'a pas beaucoup changé et c'est ce que j'ai:

C’est parce que cocoa.vim n’est plus mis à jour depuis des années et que le fichier de syntaxe ne correspond pas à la dernière version de Vim.

Je viens de le réparer dans ma fourchette: https://github.com/kentaroi/cocoa.vim

Je n'ai aucune intention de promouvoir ma fourchette. Mais, au vu de la situation officielle actuelle de cocoa.vim ( https://github.com/msanders/cocoa.vim ), je mets un lien de ma fourchette pour votre commodité.


Modifier:

Etant donné que je ne maintiendrai plus le référentiel ci-dessus, je recommande le plug-in de syntaxe vim suivant: https://github.com/SolaWing/vim-objc-syntax

Kentaro Imai
la source
S'il vous plaît soyez prudent de promouvoir votre propre contenu. Ce n'est pas un spam, mais veuillez divulguer votre affiliation. (+1 pour une réponse utile, cependant).
bwDraco
Merci de me conseiller! J'ai édité ma réponse. Est ce que c'est bon maintenant?
Kentaro Imai