Auf der Suche nach einem Texteditor mit spezifischen Funktionen zur Syntaxhervorhebung

Ich bin ein PC-Typ, aber ich habe einen Programmierstudenten, der einen Mac hat. Wir haben TextMate verwendet, aber es fehlen ein paar Funktionen, die ich entweder nicht finden kann oder die in TextMate nicht verfügbar sind.

In meinem geliebten Notepad++ habe ich folgende Features:

  • vertikale Gitterlinien, die Ihnen helfen zu sehen, wie weit Sie eingerückt sind
  • Wenn Sie Ihren Cursor neben ein Klammerpaar oder in ein HTML-Tag setzen, wird die entsprechende Klammer oder das entsprechende Tag hervorgehoben, im Fall von geschweiften Klammern werden sogar die oben genannten Gitterlinien hervorgehoben (wenn Sie also Code durchgehend eingerückt haben, werden Sie müssen Sie nur die hervorgehobene, gepunktete Linie scannen, und Sie werden die passende Klammer finden)
  • Wenn Sie ein Wort hervorheben (was durch Doppelklicken schnell geht), werden alle anderen Instanzen desselben Wortes hervorgehoben (wo habe ich diese Funktion / Variable sonst verwendet? Habe ich sie konsistent benannt?)
  • Kommentieren mehrerer Textzeilen durch Markieren und Drücken von [strg]+[k]
  • Entkommentieren mehrerer Textzeilen durch Markieren und Drücken von [strg]+[shift]+[k]
  • Einrücken mehrerer Textzeilen durch Markieren und Drücken von [strg]+[tab]
  • Einrücken mehrerer Textzeilen durch Markieren und Drücken von [strg]+[shift]+[tab]
  • die Möglichkeit zu wählen, wie die Datei interpretiert werden soll (welche Sprache) Die Interpretation von textmate ist ziemlich fehlerhaft ... manchmal öffnen Sie eine Datei und sie ist ganz weiß, obwohl es eindeutig eine .css-Datei oder so ist.
  • Funktionsvervollständigung wie Parameterhinweise, automatisches Schließen von HTML-Tags und Vervollständigen von Klammern wären ebenfalls hilfreich. I love hot notepad++ zeigt Ihnen beim Eintippen einer Variablen, welche Variablennamen Sie bereits im Dokument verwendet haben.

Der Umgang von Textmate mit Klammern und Anführungszeichen ist großartig: Es fügt das passende Paar für Sie hinzu, bewegt den Cursor jedoch nicht weiter. Wenn es also in Ihrem Muskelgedächtnis liegt, sie gleichzeitig zu tun, wird es Ihre Zeit nicht verschwenden. und Sie können ein Wort markieren und Anführungszeichen oder Klammern drücken, und das Wort wird in Klammern eingeschlossen. Das wäre also ein Bonus, aber es ist nichts, was ich vermisse, wenn ich Notepad ++ verwende, aber die Kombination des Fehlens des oben Genannten ist frustrierend.

Geben Sie hier die Bildbeschreibung ein

Kennt jemand ein kostenloses Programm für Mac mit diesen Funktionen?

Und wenn Sie gerade dabei sind, könnten Sie bitte darauf hinweisen, wie Sie diese Funktionen aktivieren und verwenden? Ich weiß zum Beispiel, dass TextMate eine Möglichkeit zum Einrücken hat, aber die Tastenkombination, die es Ihnen gibt, ergibt für mich keinen Sinn ...

Danke für alle Vorschläge!

Antworten (4)

Erhabener Text

Es gibt einige Dinge im Leben, für die es sich zu bezahlen lohnt, und ein solider Texteditor ist meiner Meinung nach einer davon. Wenn es das Werkzeug ist, das Sie jeden Tag verwenden, was sind ein paar Dollar, um sicherzustellen, dass das Werkzeug von hoher Qualität ist? Für mich ist Sublime Text der Editor, für den es sich zu bezahlen lohnt . Ich bin immer noch auf 2, aber 3 ist eine ziemlich stabile Beta und vorerst kostenlos zu haben. Sowohl 2 als auch 3, wenn es die Beta verlässt, können auf unbestimmte Zeit "evaluiert" werden, wenn der Preis und die Bezahlung für Qualitätssoftware Sie wirklich abschrecken.

Der Vorteil von Sublime ist, dass es eine lange und illustre Geschichte mit einer großartigen Community dahinter hat. Es hat ein großartiges Paketverwaltungssystem in Package Control , mit dem Sie sehr schnell und einfach eine Menge Funktionen hinzufügen können.

Um auf Ihre spezifischen Feature-Wünsche einzugehen...

vertikale Gitterlinien, die Ihnen helfen zu sehen, wie weit Sie eingerückt sind

Ja. Hinzufügen:

"draw_indent_guides": true

zu Ihrer Einstellungsdatei.

Klammer-Matching und Tag-Matching, wenn Sie sich innerhalb eines Tags befinden

Die BracketHighligher-Erweiterung tut dies und mehr. Es gibt einen schicken Screenshot auf der Paketkontrollseite, der alle Möglichkeiten zeigt, wie es Dinge hervorheben kann, die sofort einsatzbereit sind.

Hier finden Sie meine Sublime-Einstellungsdatei , in der die meisten Dinge, die Sie wünschen, bereits aktiviert sind.

Wenn Sie ein Wort hervorheben (was durch Doppelklicken schnell geht), werden alle anderen Instanzen desselben Wortes hervorgehoben

Sublime nennt dies Multiple Selection . Wählen Sie ein Wort aus und drücken Sie dann Ctrl+Command+Goder , Cmd-Dum alle Vorkommen des Wortes in der Datei auszuwählen. Durch die Eingabe werden alle Vorkommen gleichzeitig ersetzt. Mit Sublime können Sie noch viel mehr tun. Auf der oben genannten Seite finden Sie weitere Ninja-Moves mit Mehrfachauswahl, die Sie ausführen können.

Kommentieren mehrerer Textzeilen durch Markieren und Drücken von [strg]+[k]

Markieren Sie den Block und drücken Sie Command-/, um Kommentare für den Block ein- und auszuschalten. Sie können dies mit der oben erwähnten Mehrfachauswahl kombinieren, um nicht zusammenhängende Zeilen auszukommentieren.

Entkommentieren mehrerer Textzeilen durch Markieren und Drücken von [strg]+[shift]+[k]

Es ist Command-/in Sublime, Kommentare umzuschalten, was einfacher zu merken ist als eine Aktion "Kommentar hinzufügen" und eine separate Aktion "Kommentar entfernen", wenn Sie mich fragen. Wenn Ihnen die Abkürzung nicht gefällt, können Sie die Tastenbelegungen in Sublime frei neu zuweisen , um die Aktionen einer bevorzugten Kombination zuzuordnen.

Einrücken mehrerer Textzeilen durch Markieren und Drücken von [strg]+[tab]

Das funktioniert genau so, wie Sie es möchten: Zeilen auswählen, TABeinrücken, Shift-TABeinrücken.

Einrücken mehrerer Textzeilen durch Markieren und Drücken von [strg]+[shift]+[tab]

Es ist nur Shift-TABin Sublime.

die Möglichkeit zu wählen, wie die Datei interpretiert werden soll (welche Sprache)

Sie können die Sprachschätzung von Sublime über das View > Syntax...Menü überschreiben. Wählen Sie die gewünschte Sprache anstelle der von Sublime erratenen Sprache aus. Die Vermutung von Sublime ist meiner Meinung nach viel besser als die von TextMate.

Funktionsvervollständigung wie Parameterhinweise, automatisches Schließen von HTML-Tags und Vervollständigen von Klammern wären ebenfalls hilfreich.

Absolut – sie werden im Sprachgebrauch von Sublime Snippets genannt. Es wird mit einer Reihe von Standardeinstellungen für einige gängige Sprachen wie CSS, HTML, Ruby und Python geliefert, die nützlich sind. Sie können Ihre eigenen Snippets hinzufügen und weitere Sprachunterstützung und Snippets finden Sie in Package Control .

Atom

Atom ist das neue Kind auf dem Block. Völlig kostenlos und Open Source ist es ein Texteditor, der als Closed-Source-Projekt bei GitHub begann, aber jetzt von Leuten auf der ganzen Welt erweitert wird. Es hat sehr schnell an Popularität und Fähigkeiten zugenommen. Es ist noch ein bisschen jung, also ändert es sich schnell und es gibt einige Ecken und Kanten, aber es ist vielversprechend und Sie können die Geschwindigkeit, mit der Probleme im Projekt angesprochen werden, wenn sie auftreten, sicher nicht übertreffen.

Sie haben sich viel von TextMate und Sublime ausgeliehen, damit es den Leuten vertraut vorkommt – beide Editoren waren und sind bei OS X-basierten Entwicklern sehr beliebt. Es ist klug, auf den Schultern von Riesen zu beginnen und von dort aus zu versuchen, zu stehen, oder?

Hier ist ein großartiger Vergleich zwischen Atom und Sublime Text .

Um auf Ihre spezifischen Feature-Wünsche einzugehen...

vertikale Gitterlinien, die Ihnen helfen zu sehen, wie weit Sie eingerückt sind

Ja. Scrollen Sie im Core SettingsEinstellungsfenster nach unten und prüfen Sie Show Indent Guide, ob Anleitungen angezeigt werden.

Klammer-Matching und Tag-Matching, wenn Sie sich innerhalb eines Tags befinden

Es hat das Atom/Bracket-Matcher -Plugin, das standardmäßig mitgeliefert wird.

Wenn Sie ein Wort hervorheben (was durch Doppelklicken schnell geht), werden alle anderen Instanzen desselben Wortes hervorgehoben

Ja. Markieren Sie ein Wort oder einen Satz und drücken Sie Cmd-Dund es werden alle Instanzen dieses Musters in der Datei ausgewählt.

Kommentieren mehrerer Textzeilen durch Markieren und Drücken von [strg]+[k]

Markieren Sie den Block und drücken Sie Command-/, um Kommentare für den Block ein- und auszuschalten. Sie können dies mit der oben erwähnten Mehrfachauswahl kombinieren, um nicht zusammenhängende Zeilen auszukommentieren.

Entkommentieren mehrerer Textzeilen durch Markieren und Drücken von [strg]+[shift]+[k]

Es ist Command-/in Atom, Kommentare umzuschalten, was einfacher zu merken ist als eine Aktion "Kommentar hinzufügen" und eine separate Aktion "Kommentar entfernen", wenn Sie mich fragen. Wenn Ihnen die Abkürzung nicht gefällt, können Sie Tastenbelegungen in Atom frei neu zuweisen, um die Aktionen einer bevorzugten Kombination zuzuordnen.

Einrücken mehrerer Textzeilen durch Markieren und Drücken von [strg]+[tab]

Das funktioniert genau so, wie Sie es möchten: Zeilen auswählen, TABeinrücken, Shift-TABeinrücken.

Einrücken mehrerer Textzeilen durch Markieren und Drücken von [strg]+[shift]+[tab]

Es ist nur Shift-TABin Atom.

die Möglichkeit zu wählen, wie die Datei interpretiert werden soll (welche Sprache)

Drücken Sie Ctrl-Shift-l, um die Dateitypauswahl zu öffnen und die Sprache oder den Dateityp für eine bestimmte Datei neu zuzuweisen.

Funktionsvervollständigung wie Parameterhinweise, automatisches Schließen von HTML-Tags und Vervollständigen von Klammern wären ebenfalls hilfreich.

Es tut mir Leid. Ich bin mir nicht sicher, wie Sie das machen, und ich kann keine großartige Dokumentation dazu finden. Vielleicht kann jemand die Antwort kommentieren? Ich wäre überrascht, wenn Atom das nicht könnte .

Die Steuerelemente von TextMate sind konfigurierbar und abhängig von separaten Makro-„Paketen“ für die derzeit aktive Sprache, aber die Standards sind:

  • Cmd-/ zum Auskommentieren und Auskommentieren ausgewählter Blöcke
  • Cmd-] zum Einrücken ausgewählter Blöcke und Cmd-[ zum Einrücken
  • Esc, um ein Wort automatisch zu vervollständigen, aber es funktioniert streng, indem es nach dem nächsten übereinstimmenden Wort im aktuellen Dokument sucht; es weiß nichts über die Standardbibliothek der aktuellen Sprache oder Wörter in anderen Dokumenten.

Am unteren Rand des TextMate-Bildschirms sollten Sie eine Fußzeile haben, die Ihnen die aktuelle Zeile und Spalte, die aktuelle Sprache (wenn Sie also einen Sprachfehler haben, korrigieren Sie es dort), wie Registerkarten konfiguriert sind und so weiter, anzeigt.

Ich glaube, ein .css-Bundle ist vorinstalliert, daher bin ich mir nicht sicher, warum es .css nicht automatisch identifizieren würde.

JavaScript wurde tatsächlich nicht erkannt. Zumindest nicht sofort ... Werde beim nächsten Mal in die Fußzeile schauen, danke!

erhabener Text sollte die meisten Ihrer Bedürfnisse erfüllen, außerdem gibt es unzählige Plugins, mit denen Sie ihn anpassen können.