J'essaie d'écrire un nouveau mode EMACS pour une nouvelle langue C-template, que je dois utiliser pour certaines recherches académiques. P>
Je veux que le code soit coloré et indenté comme en mode C, avec les exceptions suivantes: p>
est-il possible de créer un mode dérivé (en mode C) et de le définir pour ignorer les objectifs initiaux de '%' et ';'? Est-il possible de faire la particularité de "Automatic-indentation après avoir appuyé sur RET" Travailler sans ';'? P>
Y a-t-il des modes similaires pour des langues similaires (avec des crochets '{}', mais sans points-virgules) que je pourrais essayer de patcher? p>
Devrais-je essayer d'écrire un mode majeur à partir de zéro? p>
3 Réponses :
Déconnexion Arduino-Mode: https: // github. Com / Broadest / ARDUININO-MODE / BLOB / MASTER / ARDUINO-MODE.EL P>
Il s'agit d'un mode basé sur C utilisant les fonctionnalités en mode CC pour créer rapidement quelque chose de très utile et unique à la programmation Arduino. En utilisant cela comme un simple modèle devrait aider beaucoup. P>
Si cela ne vous dérange pas quelque chose vraiment em> simple, vous pouvez regarder Mode GOSU . GOSU est une langue qui a des accolades bouclées et pas de semi-colonie, vous devriez donc être définie pour votre minimum. Il utilise également la même syntaxe de commentaire que c. P>
La mise en œuvre du mode est vraiment em> simple et basée sur le mode générique, alors la modifier pour fonctionner comme vous le souhaitez devrait être facile. Il est pas em> basé sur le mode C. p>
C'est ce que j'avais l'habitude de faire un mode pour la langue que je travaillais pour ma classe de compilateurs et que c'était vraiment facile, même avec une expérience d'élis limitée. D'autre part, l'indentation est assez simple - cela fonctionne pour la plupart du code, mais n'est pas aussi complet que celui de C-Mode. P>
Au lieu d'utiliser le mode GOSU, j'ai utilisé le Google Go le mode et le patché.
Plus généralement, le mode CC a été étendu et généralisé dans le temps pour accueillir de plus en plus de langues, et le dernier mode CC est censé être raisonnablement bon pour isoler le code générique du code spécifique à la langue. Alors jetez un coup d'œil à certains des principaux modes qui utilisent le mode CC (par exemple, AWK-MODE) et contactez le responsable de la Mode CC qui pourra vous aider à comprendre HWO de faire ce que vous voulez. P >
J'ai essayé de corriger le mode CC selon AWK-MODE (dans lequel les lignes ne doivent pas se terminer par ';') Mais c'était trop de code pour comprendre et corriger.