30 votes

Quel est le meilleur outil de template de code pour Emacs ?

En particulier, quel est le meilleur paquet de snippets qui existe ?

Caractéristiques :

  • possibilité de définir facilement de nouveaux snippets (texte brut, saisie personnalisée avec valeurs par défaut)
  • navigation simple entre des positions prédéfinies dans le snippet
  • insertion multiple de la même entrée personnalisée
  • accepte le texte actuellement sélectionné comme une entrée personnalisée
  • multiplateforme (Windows, Linux)
  • des expressions évaluées dynamiquement (code intégré) écrites dans un langage de programmation concis (Perl, Python, Ruby sont préférés)
  • coexiste gentiment avec d'autres paquets dans Emacs

Exemple de modèle de code, un simple for boucle en C :

for (int i = 0; i < %N%; ++i) {
  _
}

C'est beaucoup de frappe pour un code aussi commun. Je veux invoquer un modèle de code ou un extrait de code qui insère ce code passe-partout pour moi. De plus, il s'arrête (sur TAB ou autre touche) à %N% (mon entrée le remplace) et la position finale du curseur est _ .

23voto

J.F. Sebastian Points 102961

Les extraits de TextMate est la solution la plus proche, mais elle n'est pas multiplateforme et n'est pas destinée à Emacs.

La deuxième chose la plus proche est YASnippet ( Vidéo d'écran montre les principales capacités). Mais cela interfère avec hippie-expand dans mon installation et le langage intégré est EmacsLisp, avec lequel je ne suis pas très à l'aise en dehors de .emacs .

EDITAR : J'ai posté ma réponse ici pour permettre le vote sur YASnippet .

5voto

cjm Points 44090

Personnellement, j'utilise Dmacro depuis des années ( ftp://ftp.sgi.com/other/dmacro/dmacro.tar.gz ).

Voici une critique de ce produit qui mentionne également quelques alternatives : http://linuxgazette.net/issue39/marsden.html

4voto

Joe Hildebrand Points 6666

Le EmacsWiki dispose d'un page des moteurs de modèles .

Parmi ceux-ci, j'ai utilisé tempo dans un passé (lointain) pour ajouter le support de table à html-helper-mode mais je ne sais pas comment il a évolué au cours des 15 dernières années.

3voto

l0st3d Points 1071

J'ajouterais mon vote pour extraits de tempo ... facile à configurer, puissant (vous pouvez exécuter un elisp arbitraire dans votre modèle - ce qui vous permet de mettre les choses en minuscules, de rechercher des noms de fichiers et des classes, de compter les choses, etc), de définir l'indentation, d'intégrer les abréviations ... Je l'utilise beaucoup ;)

2voto

gavenkoa Points 6974

Je vote pour http://cedet.sourceforge.net/srecode.shtml

Il possède une syntaxe très propre et a accès à l'environnement de code par le biais de Semantic .

Il fait également partie d'un grand projet soutenu par le gouvernement. CEDET (qui a été intégré dans Emacs pour la série de versions 24.x).

UPDATE YASnippet est également un puissant moteur de modèles. Mais il utilise un schéma de dénomination des fichiers très laid (le nom de votre fichier === le nom du modèle), ce qui fait que vous ne pouvez pas mettre plusieurs modèles dans un seul fichier et que vous avez des problèmes avec les jeux de caractères nationaux...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X