Lorsque je travaille sur un fichier PHP par exemple, le type de fichier par défaut est php. Cela a du sens, cependant, lorsque ce fichier PHP a HTML ainsi le type de fichier est toujours seulement php. Pour certains plugins, cela signifie que j'obtiens la fonctionnalité PHP pour ce plugin, mais que je manque la fonctionnalité HTML. Une situation plus spécifique où cela se produit est avec mon plugin extrait. Je reçois des extraits de php et pas de snippets html lorsque je modifie un fichier php.Plusieurs types de fichiers dans vim
solutions possibles à ce (que je n'aime évidemment pas, d'où mon affectation à cette question) sont:
- ajouter une carte pour basculer entre les différents types de fichiers quand je suis d'édition différentes sections du fichier.
- mettre à jour mon fichier snippets php pour inclure les snippets html ainsi (alors que cela fonctionnerait pour l'exemple ci-dessus, il ne résout pas le problème fondamental).
Alors, Y at-il un moyen de modifier un fichier en utilisant plusieurs types de fichiers en même temps dans vim?
Editer: Pour référence future, le plugin spécifique dont je parle est appelé snipMate. http://www.vim.org/scripts/script.php?script_id=2540
Mode PHP en (g) VIM prend en charge quatre langues dans le même fichier: HTML, JavaScript (mais pas aussi bien fait que 'ft = javascript'), CSS et PHP. Il va détecter les limites de chacun. Le plugin a été écrit avec les programmeurs web à l'esprit. – amphetamachine
J'obtiens la coloration syntaxique fonctionnant comme prévu pour les fichiers sur lesquels je travaille avec différentes langues dans le même fichier, mais qu'en est-il des autres plugins? Êtes-vous en train de dire qu'ils devraient déjà travailler avec (g) vim? Je ne vois pas comment cela pourrait être. – chadgh
Il n'y a pas de manière complètement générale. Le plugin en question devrait être réécrit de la même manière que le fichier de syntaxe PHP. Ce sont deux scripts vim; vous pouvez regarder le fichier de syntaxe et voir comment il détecte les limites, puis essayez de l'appliquer. C'est un problème difficile en général, car tout ce que fait un plugin n'est pas aussi clairement délimité que la coloration syntaxique. – Cascabel