Wie fügt man TextEdit dauerhaft in die Menüliste Öffnen mit ... ein?

Ich bin Entwickler und habe oft mit ungewöhnlichen Dateitypen zu tun. Wenn ich eine dieser Dateien in TextEdit öffnen möchte, muss ich es zuerst starten und dann die Datei damit öffnen oder die Datei auf das TextEdit-Symbol ziehen.

Gibt es eine Möglichkeit, die TextEdit.app dauerhaft in die Menüliste Öffnen mit ... einzufügen, unabhängig davon, welchen Dateityp ich betrachte?

Natürlich ist dieses Verfahren für jeden Texteditor nützlich, den Sie wählen, wenn TextEdit nicht Ihr Ding ist.

Diesen Wunsch habe ich auch. Derzeit behalte ich TextEdit in meinem Dock, sodass es immer verfügbar ist, um eine Datei darauf zu ziehen.

Antworten (6)

Die einzige Möglichkeit, dies bei allen Dateitypen zu tun, besteht darin, einen Dienst im Automator zu erstellen, der Ihnen die Arbeit eigentlich erleichtern sollte.

  1. Öffnen Sie Automator und wählen Sie "Dienst".
  2. Ändern Sie in der Dropdown-Liste „Dienst empfängt ausgewählte …“ den Wert zu „empfängt ausgewählte Dateien und Ordner in jeder Anwendung “ .
  3. Wählen Sie Dienstprogramme aus dem Bibliotheksmenü im linken Bereich und doppelklicken Sie auf „Run Shell Script“.
  4. Ändern Sie das Dropdown-Menü "Eingabe übergeben" in "als Argumente".
  5. Löschen Sie das Standardskript und ersetzen Sie es durch Folgendes:

    if [ -f "$1" ] ; then
        open -a "TextEdit" "$1" ;
    fi
    

Speichern Sie diese Datei so, wie sie in Ihrem Kontextmenü angezeigt werden soll, z. B. "Mit TextEdit öffnen", und Sie sind fertig. Sie haben jetzt die Möglichkeit, jede Datei mit Textbearbeitung zu öffnen.

Es wird nicht im Open with-Menü angezeigt, sondern als separates Element im Kontextmenü, das mit allen anderen Diensten gruppiert ist, die Sie ausführen.

Nebenbei bemerkt, wenn Sie auf einem Mac entwickeln, sollten Sie wirklich darüber nachdenken, einen besseren Texteditor wie TextMate oder TextWrangler oder Sublime Text zu verwenden, einige von ihnen fügen sogar den Service hinzu, damit Sie sich das alles ersparen.

+1, und ja, TextEdit ist kein echter Klartext-Editor - es kann es, aber es hat keine Funktionen, die es einfacher machen, und würde viel lieber Rich-Text bearbeiten.
Schön! Es wäre noch besser, wenn wir dies auf alle Dateien im Textformat (einschließlich Quellcode und dergleichen) beschränken könnten.
Gibt es eine Möglichkeit, es im Hauptmenü erscheinen zu lassen, anstatt im Servicemenü suchen zu müssen? Oder zumindest ungenutzte Einträge im Servicemenü auszublenden ...
@pqnet - hast du herausgefunden, wie das geht? Ich suche auch danach: apple.stackexchange.com/questions/206068/…

Sie können unterstützte Dateitypen hinzufügen, indem Sie Info.plist bearbeiten , aber ich kenne keine Möglichkeit, dies für alle Dateitypen zu tun. Das Hinzufügen von UTIs wie public.data oder public.item zu einer Info.plist oder com.apple.LaunchServices.plist scheint nicht zu funktionieren.

Ich habe duti verwendet , um TextMate zur Standardanwendung für verschiedene Klartexttypen zu machen:

# plain text files without an extension
com.macromates.TextMate.preview public.plain-text all

# executable scripts
com.macromates.TextMate.preview public.unix-executable all

com.macromates.TextMate.preview .as all
com.macromates.TextMate.preview .ass all
com.macromates.TextMate.preview .bash all
com.macromates.TextMate.preview .bom all
com.macromates.TextMate.preview .c all
com.macromates.TextMate.preview .cfm all
com.macromates.TextMate.preview .cfml all
com.macromates.TextMate.preview .class all
com.macromates.TextMate.preview .coffee all
com.macromates.TextMate.preview .conf all
com.macromates.TextMate.preview .cpp all
com.macromates.TextMate.preview .css all
com.macromates.TextMate.preview .csv all
com.macromates.TextMate.preview .ctp all
com.macromates.TextMate.preview .dat all
com.macromates.TextMate.preview .data all
com.macromates.TextMate.preview .doc all
com.macromates.TextMate.preview .erb all
com.macromates.TextMate.preview .fields all
com.macromates.TextMate.preview .gemspec all
com.macromates.TextMate.preview .h all
com.macromates.TextMate.preview .haml all
com.macromates.TextMate.preview .hotkey all
com.macromates.TextMate.preview .hpp all
com.macromates.TextMate.preview .idx all
com.macromates.TextMate.preview .java all
com.macromates.TextMate.preview .js all
com.macromates.TextMate.preview .json all
com.macromates.TextMate.preview .keylayout all
com.macromates.TextMate.preview .kmlibrary all
com.macromates.TextMate.preview .less all
com.macromates.TextMate.preview .log all
com.macromates.TextMate.preview .m all
com.macromates.TextMate.preview .manifest all
com.macromates.TextMate.preview .md all
com.macromates.TextMate.preview .mm all
com.macromates.TextMate.preview .msass all
com.macromates.TextMate.preview .opml all
com.macromates.TextMate.preview .pg all
com.macromates.TextMate.preview .php all
com.macromates.TextMate.preview .pl all
com.macromates.TextMate.preview .plist all
com.macromates.TextMate.preview .plist all
com.macromates.TextMate.preview .py all
com.macromates.TextMate.preview .rb all
com.macromates.TextMate.preview .rd all
com.macromates.TextMate.preview .rdoc all
com.macromates.TextMate.preview .readme all
com.macromates.TextMate.preview .rhtml all
com.macromates.TextMate.preview .rst all
com.macromates.TextMate.preview .sb all
com.macromates.TextMate.preview .scss all
com.macromates.TextMate.preview .sh all
com.macromates.TextMate.preview .srt all
com.macromates.TextMate.preview .strings all
com.macromates.TextMate.preview .sub all
com.macromates.TextMate.preview .tex all
com.macromates.TextMate.preview .tsv all
com.macromates.TextMate.preview .utf all
com.macromates.TextMate.preview .xml all
com.macromates.TextMate.preview .yaml all

duti unterstützt nicht nur das Hinzufügen von Anwendungen, die mit Menüs geöffnet werden sollen, ohne sie jedoch zum Standard zu machen.

Hier ist eine Anpassung der akzeptierten Antwort von @JamiePatt unter Verwendung der Verbesserung von user48595 mit dem Zusatz, dass TextEdit die Standardanwendung zum Öffnen der Datei wird, bevor sie tatsächlich geöffnet wird. Das bedeutet, dass die Datei in Zukunft ganz normal geöffnet werden kann.

  1. Überprüfen Sie den Hexadezimalcode, indem Sie ausführen xattr -p com.apple.LaunchServices.OpenWith <file>, wobei „file“ eine Datei ist, die Sie manuell so eingestellt haben, dass sie mit TextEdit geöffnet wird.

  2. Öffnen Sie Automator und wählen Sie den Typ „Service“ für Ihr Dokument.

  3. Wählen Sie im Dropdown-Menü „Dienst empfängt ausgewählt“ „Dateien oder Ordner“ aus.

  4. Fügen Sie den Schritt "Hilfsmittel -> Wert der Variablen setzen" hinzu. Sie sollten eine Variable mit dem Namen "Storage" sehen.

  5. Fügen Sie den Schritt "Dienstprogramme -> Shell-Skript ausführen" hinzu. Wählen Sie im Dropdown-Menü „Eingabe übergeben“ „als Argumente“ aus. Ersetzen Sie den Inhalt des Textfelds durch den folgenden und stellen Sie sicher, dass der Hexadezimalcode mit dem übereinstimmt, den Sie im ersten Schritt erhalten haben.

    if [ -f "$1" ] ; then
        xattr -wx com.apple.LaunchServices.OpenWith "62 70 6C 69 73 74 30 30 D3 01 02 03 04 05 06 57 76 65 72 73 69 6F 6E 54 70 61 74 68 5F 10 10 62 75 6E 64 6C 65 69 64 65 6E 74 69 66 69 65 72 10 00 5F 10 1A 2F 41 70 70 6C 69 63 61 74 69 6F 6E 73 2F 54 65 78 74 45 64 69 74 2E 61 70 70 5F 10 12 63 6F 6D 2E 61 70 70 6C 65 2E 54 65 78 74 45 64 69 74 08 0F 17 1C 2F 31 4E 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 63" "$1";
        xattr -d com.apple.quarantine "$1" || true;
    fi
    
  6. Fügen Sie den Schritt "Hilfsmittel -> Variablenwert abrufen" hinzu. Sie sollten eine Variable mit dem Namen "Storage" sehen.

  7. Fügen Sie den Schritt "Dateien & Ordner -> Finder-Elemente öffnen" hinzu. Wählen Sie im Dropdown-Menü "Öffnen mit" die Option "TextEdit".

  8. Speichern Sie mit einem einprägsamen Namen, z. B. TextEditify.

Wenn Sie zum ersten Mal ein Nicht-TextEdit-Dokument öffnen möchten, müssen Sie TextEditify aus dem Rechtsklickmenü auswählen. Nachfolgende Öffnungen können ganz normal erfolgen.

Erklärung zum Skript:

Der erste xattrBefehl fügt das Attribut hinzu, das normalerweise gespeichert wird, wenn Sie "immer öffnen mit" manuell auswählen.

Der zweite xattrBefehl stellt sicher, dass dies mit aus dem Internet heruntergeladenen Dateien funktioniert.

  1. Öffnen Sie die Automator- Anwendung

  2. KlickenNew Document

  3. WählenService

    Geben Sie hier die Bildbeschreibung ein

  4. Ändern Sie das Services receives selectedzu "Dateien oder Ordner"

    Geben Sie hier die Bildbeschreibung ein

  5. Suchen Sie nach Action„Open Finder Items“ und ziehen Sie es in den Workflow-Bereich

    gif

  6. Wechseln Open with:Sie zu "TextEdit" oder einer beliebigen Anwendung (ich bevorzuge "Visual Studio Code")

  7. Speichern Sie Ihren Dienst etwas Logisches, wie "Mit TextEdit öffnen", wenn Sie TextEdit gewählt haben.

Sie können jetzt mit der rechten Maustaste auf ein beliebiges Finder-Objekt klicken und Services-> auswählen Open with TextEdit!

Vielen Dank an user48595 und den in seiner Antwort geposteten Link: http://www.mactricksandtips.com/2013/05/add-open-with-textedit-or-any-other-app-to-right-click-menu-item .html

Sie können einen Service-Menü-Workflow erstellen, wie Influencejamie es beschreibt. Sie können jedoch einfach die Option „Finder-Elemente öffnen“ verwenden und TextEdit als App hinzufügen.

Dazu gibt es hier einen guten Beitrag , der ausführlicher erklärt, wie man den Workflow erstellt.

Antworten auf Ask Different müssen mehr als nur ein Link sein. Es ist in Ordnung, einen Link einzufügen, aber bitte fassen Sie ihn in der Antwort zusammen oder fassen Sie ihn aus. Die Idee ist, die Antwort allein stehen zu lassen.

Verwenden Sie einfach die Option "-e", um mit TextEdit zu öffnen: open -e yourfile.whatever und es wird es in TextEdit öffnen.