Was ist die beste Codevorlage Einrichtung für Emacs? [geschlossen]
-
09-06-2019 - |
Frage
Vor allem, was ist das beste Schnipsel Paket da draußen?
Features:
- einfach, neue Schnipsel (Klartext, individuelle Eingabe mit Standardeinstellung) zu definieren,
- einfache Navigation zwischen vordefinierten Positionen im Snippet
- mehrere Einfügung des gleichen benutzerdefinierten Eingangs
- akzeptiert aktuell ausgewählten Text als benutzerdefinierte Eingabe
- Cross-Plattform (Windows, Linux)
- dynamisch ausgewertet Ausdrücke (eingebetteter Code) in einer prägnanten Programmiersprache geschrieben (Perl, Python, Ruby, sind bevorzugt)
- koexistiert gut mit anderen Paketen in Emacs
Beispiel Codeschablone wird eine einfache for
Schleife in C:
for (int i = 0; i < %N%; ++i) {
_
}
Es ist eine Menge für einen solchen gemeinsamen Code eingeben. Ich möchte eine Codevorlage oder Schnipsel aufzurufen, die Inserts
dass Standardcode für mich. Außerdem hält es (auf TAB oder anderem Tastendruck) bei %N%
(meine Eingabe ersetzt ihn) und letzte Position des Cursors ist _
.
Lösung
Schnipsel Textmate ist die engste Übereinstimmung sind, aber es ist nicht eine plattformübergreifende Lösung und nicht für Emacs.
Die zweite nächste Sache ist yasnippet ( Screencasts zeigt die Hauptfunktionen). Aber es stört hippie-expand
Paket in meinem Setup und die eingebettete Sprache ist Emacs Lisp, die ich mit außerhalb .emacs
nicht bequem bin.
Bearbeiten . Posted meiner Antwort hier Abstimmung über yasnippet
zu ermöglichen
Andere Tipps
Ich persönlich habe mit Dmacro seit Jahren ( ftp: // ftp.sgi.com/other/dmacro/dmacro.tar.gz ).
Hier ist eine Überprüfung davon, dass auch einige Alternativen erwähnt: http://linuxgazette.net/issue39/ marsden.html
Die EmacsWiki hat eine Seite von Template-Engines .
Von diesen ich verwendet habe, Tempo in der (fernen) Vergangenheit Tisch Unterstützung html-helper-mode hinzufügen, aber nicht wissen, wie es hat in den letzten 15 Jahren Fortschritte gemacht.
würde ich meine Stimme hinzufügen, für Tempo Schnipsel rel="nofollow ... einfach zu installieren, leistungsstark (Sie können beliebige elisp in Ihrer Vorlage laufen - so dass Sie Dinge können downcase, Lookup-Dateinamen & Klassen, die Dinge zählen, etc.), die Vertiefung gesetzt, integriert mit abbrevs ... ich benutze es viel;)
Ich stimme für http://cedet.sourceforge.net/srecode.shtml
Es hat sehr saubere Syntax und hat Zugriff auf Code-Umgebung durch Semantic
.
Auch ist es ein Teil der großen, gut unterstützt CEDET
Verteilung (die in Emacs für 24.x Version Serie gebaut wurde).
UPDATE https://github.com/capitaomorte/yasnippet ist auch mächtige Template-Engine. Aber es nutzt hässliches Dateinamensschema (Ihren Dateinamen === Vorlagennamen) für Sie nicht mehr Vorlagen in einzelne Datei setzen und haben Probleme mit nationalen Zeichensätzen ...
Sie können eine leichte Lösung versuchen muban.el
Es steht geschrieben vollständig in Elisp und hat eine sehr einfache Syntax.