Редактор по умолчанию для файлов без расширения имени файла в Mac OS X

25

Я хочу, чтобы открыть файлы без расширения имени файла, в том числе .dotsystemfiles (например, .htaccessили .vimrc) с редактором, отличным от TextEdit. Выполнение обычной команды « Изменить все ...» на панели « Информация» не поможет, так как выдает следующую ошибку:

альтернативный текст

jasonkuhrt
источник

Ответы:

26

Вам нужно изменить редактор для text/plainтипа MIME или public.plain-textUTI. Регулярное Get Info диалог изменяет ассоциацию для расширения имени файла, который эти файлы не имеют.


Получите RCDefaultApp и установите его.

Откройте Системные настройки »Стандартные приложения» Приложения . Выберите нужный редактор по умолчанию и найдите любой из вышеперечисленных в списке поддерживаемых типов приложения.

альтернативный текст альтернативный текст альтернативный текст

Выберите запись и нажмите « Установить по умолчанию» . Вы сделали Как открытие из Finder, так и из командной строки openоткроет ваш новый редактор по умолчанию.


Это также меняет все .txtфайлы и тому подобное. Я не думаю, что это может быть предотвращено, так как OS X думает, что оба эти и файлы без расширения являются public.plain-text/ text/plain.


Чтобы сделать это без RCDefaultApp , отредактируйте Edit ~/Library/Preferences/com.apple.LaunchServices.plist.

Добавьте запись LSHandlers, содержащую UTI (ключ LSHandlerContentType, например public.plain-text) и идентификатор пакета приложения ( LSHandlerRoleAllнапример, com.macromates.textmate).

В редакторе списка свойств это выглядит так :

альтернативный текст альтернативный текст

Даниэль Бек
источник
1
Или выберите вкладку Mime types и выберите, какой текст приложения / обычный текст открывается (это позволяет использовать Aquamacs.app, который не имеет типов Mime, показанных в его списке
user151019
Это сработало для меня. Большое спасибо, Даниэль. Пара вещей, которые нужно добавить: мне нужно было выйти из ОС и затем снова войти. Также, что любопытно, файлы .DS_STORE по-прежнему открываются в TextEdit по умолчанию, но все другие файлы .dotsystem теперь открываются в моем нужном редакторе.
jasonkuhrt
Есть ли способ сделать это defaults writeвместо загрузки стороннего программного обеспечения?
ma11hew28
@Matt Смотрите мой отредактированный пост.
Даниэль Бек
Какая разница между text/plainа public.plain-text? Есть ли какая-либо другая причина, кроме примера @ Марка, выбрать один из них?
Orion751
2

Вы также можете запустить plutil -convert xml1 ~/Library/Preferences/com.apple.LaunchServices.plistи добавить что-то вроде этого:

<dict>
    <key>LSHandlerContentType</key>
    <string>public.plain-text</string>
    <key>LSHandlerRoleAll</key>
    <string>com.macromates.textmate</string>
</dict>
<dict>
    <key>LSHandlerContentType</key>
    <string>public.unix-executable</string>
    <key>LSHandlerRoleAll</key>
    <string>com.macromates.textmate</string>
</dict>

Вы можете применить изменения, перезапустив или перестроив базу данных Launch Services. Выйти и вернуться недостаточно.

Или добавьте это в файл конфигурации duti :

com.macromates.textmate public.plain-text all
com.macromates.textmate public.unix-executable all

public.plain-textтакже включает файлы с расширением .txtили .text. Я не знаю, как изменить приложение по умолчанию для файлов с произвольными расширениями .

public.unix-exexutableвключает в себя исполняемые скрипты без расширения имени файла. Если вы попытаетесь изменить приложение по умолчанию для них из Finder, возникает ошибка, подобная этой:

Операция не может быть завершена.

Произошла непредвиденная ошибка (код ошибки -50).

LRI
источник