Ein Editor, der oft übersehen wird, ist MacVim . Es basiert auf dem ehrwürdigen Vim- Editor von * nix und kann alles, was Sie gefragt haben, über Plugins ausführen.
Ich zeige, dass es 176-ish verschiedene Sprachen unterstützt, einschließlich aller von Ihnen erwähnten.
Über ein CNTRL_N- oder CNTRL_P-Mapping überprüfe ich regelmäßig vorhandene Methoden, Variablen und zufällige Textphrasen. Dabei werden alle geöffneten Dateien durchsucht und eine Liste der Treffer angezeigt.
Vim nennt seine Projekte "Sessions", in denen alle Dateien, Fenstereinstellungen, Makros usw. für das spätere Neuladen gespeichert werden. Im "direkten" Modus von vim :mksession path/to/sessionfile
wird es erstellt. Sourcing es später von der Kommandozeile ist einfach: vim -S path/to/sessionfile
.
Es gibt ein großartiges Plugin namens VCS , das meine SVN-Sachen verwaltet:
... CVS, SVN, SVK, git, bzr und hg in VIM, einschließlich des Festschreibens von Änderungen und Durchführen von Unterschieden ...
Das Hochladen auf den Server erfolgt über das Netrw- Plugin.
vim hat eine steile Lernkurve, die vimtutor
im Lieferumfang der App enthalten ist. Außerdem gibt es hier und auf den Schwesterseiten von SO aktive Benutzer sowie auf dem IRC-Knoten von vim auf freenode.net.
Das wahrscheinlich großartigste an vim ist, dass es unter Mac OS als MacVim, unter Linux mit gvim, unter Windows und über die Befehlszeile eines dieser Betriebssysteme in einer Schnittstellenversion verfügbar ist. vim auf jedem von ihnen verwendet dieselben Befehle, dieselben Plugins, dieselben Themen usw. innerhalb der Einschränkungen dieser Umgebungen. Ich hüpfe den ganzen Tag von Mac zu Linux und habe irgendwo mindestens ein vim-Fenster geöffnet.
Und damit niemand denkt, dass ich mit den Alternativen, die nur für den Mac verfügbar sind, nicht vertraut bin, besitze ich alle meine Kopien von Coda, BBEdit und TextMate und benutze sie. Ich bin mit BBEdit zurückgegangen und habe es gelegentlich bei MacWorld getestet. Es ist großartig, aber ich verwende vim überall mit den gleichen Einstellungen, und keiner der anderen Editoren kann das. Wenn Sie diese plattformübergreifende Kompatibilität benötigen, sollten Sie sie prüfen.