Wählen Sie eine Standard-App zum Öffnen von Dateien ohne Erweiterung?

27

Ist es möglich, eine Standardanwendung zum Öffnen von Dateien ohne Erweiterung festzulegen? Ich beziehe mich nicht mit versteckten Erweiterungen Dateien, aber die vollständig eine Verlängerung fehlt - zum Beispiel README, CHANGELOG, mboxetc.

"Öffnen mit" => "Alle ändern" für diese Dateien funktioniert nicht und gibt den folgenden Fehler zurück:

Öffnen mit / Alle ändern - Fehler

Idealerweise möchte ich, dass das System versucht, alle diese Dateien in TextMate zu öffnen. Ich weiß, dass ich Dateien auf Dock-Symbole ziehen kann, um sie in bestimmten Apps zu öffnen, aber ich suche nach einer nahtloseren Lösung (insbesondere, da mein Dock automatisch ausgeblendet wird, was es sehr viel umständlicher macht).

Ich bin mit dem QLStephen QuickLook- Plugin vertraut, mit dem QuickLook für einige dieser Dateien aktiviert werden kann. Ich würde jedoch eine Lösung mit Auswahl- / Kopier- / Bearbeitungsfunktionen bevorzugen.

Austin
quelle

Antworten:

12

Sie können eine Standardanwendung für public.plain-text in ~ / Library / Preferences / com.apple.LaunchServices.plist hinzufügen.

defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.apple.textedit;}' '{LSHandlerContentType=public.unix-executable;LSHandlerRoleAll=com.apple.textedit;}'

Starten Sie neu, um die Änderungen zu übernehmen (Abmelden und erneutes Anmelden reichen nicht aus).

Ich habe dies zu einer DUTI- Konfigurationsdatei hinzugefügt :

com.apple.textedit public.plain-text all
com.macromates.textmate public.unix-executable all
Lri
quelle
5
Das sieht gut aus, mehr Details über das, was hier auf höchstem Niveau vor sich geht, wären nett. Ein Intro, was in Schritt 1 vor sich geht usw.
MrDaniel
4

Sie können dies mit Magic Launch tun. Nach der Installation können Sie Regeln erstellen, die nach verschiedenen Kriterien gestartet werden. Sie müssen eine Regel für Text-Apps erstellen, bei denen die Erweiterung leer ist. Sie können bei Bedarf eine komplexere Logik einrichten.

http://michelf.com/software/magic-launch/

barryj
quelle
Sie haben Recht - ich musste eine benutzerdefinierte Regel erstellen, um Dateien mit leeren Erweiterungen zu verarbeiten ... aber es scheint funktioniert zu haben - danke! Der einzige Nachteil ist, dass es 13 $ ist. Ich habe kein Problem damit, für gute Apps zu bezahlen, aber das ist ein bisschen steil, wenn man bedenkt, dass ich nur nach dieser einen Funktion suche.
Austin
0

Schauen Sie sich RCDefaultApp (Freeware) an.

RCDefaultApp ist ein Einstellungsbereich für Mac OS X 10.2 oder höher, in dem ein Benutzer die Standardanwendung festlegen kann, die für verschiedene URL-Schemata, Dateierweiterungen, Dateitypen, MIME-Typen und Uniform Type Identifiers (oder UTIs; nur MacOS 10.4) verwendet wird.

Hagelin
quelle
1
Ich mag, dass es kostenlos ist, aber es gibt keine Möglichkeit, eine Standard-App für Dateien ohne Erweiterung festzulegen. Die Verwendung von MIME-Typen kann eine Annäherung darstellen, ändert dann jedoch die Standardanwendung aller Textdateien, nicht nur der Dateien ohne Erweiterung. Trotzdem danke für den Vorschlag - vielleicht hilft es jemand anderem.
Austin
0

Etwas zu spät ist die Frage "Wie vermeide ich, dass sich typenlose Dateien im Terminal öffnen" schon etwas in die Jahre gekommen. Jedoch:

Die obigen Lösungen beinhalten die Änderung der bestehenden Regeln, die unerwünschte Nebenwirkungen haben können. Am einfachsten finde ich es, die vorhandenen Regeln für typenlose Dateien auszunutzen und die Dateiberechtigungen zu ändern, um das gewünschte Ergebnis zu erzielen.

Insbesondere: Schalten Sie das ausführbare Bit in der Datei aus, da dies den Dateidienst anweist, mit Terminal mit "chmod -x Dateiname" zu öffnen, wobei Dateiname ... der Dateiname ist.

Dies kann zu einem gewissen Grad (mit Vorsicht) automatisiert werden: In meinem Fall habe ich viele README-Dateien auf einem Computer. Ich kann "find" verwenden, um alle "README" -Dateien zu finden. Verwenden Sie dann "awk", um einen Befehl zu erstellen, mit dem das ausführbare Bit für alle wie folgt entfernt wird:

find /$HOME -iname 'README' | awk '{ print "chmod -x " $0 }'

Geben Sie das in das Terminal ein, wenn Sie prüfen möchten, welche Dateien geändert werden: Die Ausgabe besteht aus einer Auflistung aller gefundenen README-Dateien, die ungefähr so ​​aussehen:

chmod -x //Users/jimpsmith/things/README

Um alle diese Berechtigungen zu ändern, führen Sie alle diese Zeilen aus, indem Sie sie wie folgt für die Bash-Aktion berechnen:

find /$HOME -iname 'README' | awk '{ print "chmod -x " $0 }' | bash

Achten Sie einfach darauf, dass Sie die Platzhalter nicht zu großzügig verwenden, und stellen Sie fest, dass Sie versehentlich das ausführbare Bit von einigen ausführbaren Dateien entfernt haben, die fälschlicherweise übereinstimmen.


Ein einfacher Weg wäre, einfach zu rennen

find /$HOME -iname 'README' -exec chmod -x '{}' \;`

oder (um zu sehen, was passieren würde)

find /$HOME -iname 'README' -exec echo chmod -x '{}' \;`
JamesConnolly
quelle
1
Ich verstehe irgendwie nicht, wie dies das in der Frage angegebene Problem löst. README, ChangeLog usw. haben normalerweise nicht das gesetzte x-Bit, um mit irgendwie zu beginnen. Das Problem ist, dass OS X Suffixe verwendet, um die Anwendung zu identifizieren, mit der die Datei geöffnet werden soll. Diese Dateien haben kein Suffix.
Nohillside