На OS X, как вы меняете «Вид» файла?

16

На OS X я хотел бы изменить ярлык «Вид», связанный с файлами. Многие из моих файлов отображаются как «Простой текстовый файл», когда они на самом деле являются файлами javascript, php, css и других типов.

У меня нет проблем с их открытием в приложении, которое я хочу, это легко сделать - здесь много тем.

Меня беспокоит то, что когда у меня есть большая папка с большим количеством файлов, я бы хотел иметь возможность сортировать по Kind и иметь все css, все php и все js файлы вместе.

введите описание изображения здесь

Я видел тип файла, который падает на OSX, и я увидел quickchange, но я не уверен, действительно ли это то, что мне нужно.

Может быть, кто-то еще имел дело с этим раньше и знает, как это исправить?

УХО
источник
Интересный. Это не похоже, связано с утилитой командной строки настоящую file.
dmckee --- котенок экс-модератора
Конечно, вы можете просто установить что-то вроде TextWrangler в качестве обработчика файлов по умолчанию для файлов JS, PHP и CSS? Затем он перечислит их как файлы TextWrangler.
Я думаю, что проблема могла быть с Coda. Даниэль Бек помог решить эту проблему ниже. Последующий вопрос, однако: Так для чего используется утилита quickchange, которую я нашел (выше)? Есть что-то для 4-х буквенного «типа» и 4-х буквенного «создателя» ...
cwd

Ответы:

8

Файл рода обычно устанавливается приложение , которое обрабатывает этот тип файла в Launch Services. Для большинства из них это приложение, открывающее тип файла по умолчанию, в вашем случае Coda.

Приложения указывают типы файлов в своих Contents/Info.plistфайлах. Вы можете просмотреть и изменить его, щелкнув правой кнопкой мыши по комплекту приложений и выбрав « Показать содержимое пакета» .

Похоже, что панические люди что-то напутали. Все типы файлов, которые они определяют PlainTextType:

введите описание изображения здесь

Вы можете изменить имя типа файла, отредактировав все Document Type Nameзаписи в редакторе списка свойств или все CFBundleTypeNameзаписи при редактировании файла в обычном текстовом редакторе. Просто замените то, что вы хотите, чтобы появиться в качестве описания.

введите описание изображения здесь

Отредактируйте, сохраните и убедитесь, что Launch Services уведомляет (перезапустите, выйдите из системы или просто переместите приложение в другую папку и вернитесь обратно), и результат будет выглядеть следующим образом:

введите описание изображения здесь


Вы должны повторять это всякий раз, когда происходит обновление приложения, так как они заменяют Info.plistфайл, который вы редактировали. Лучше всего сообщить об ошибке разработчикам в Panic.

Даниэль Бек
источник
и люди из Panic (вероятно) сообщат, что файл .php, .js или .css по-прежнему представляет собой простой текстовый файл. его семантика, и это не цель UTI. это не новая дискуссия; UTI были неправильно поняты и неправильно использовались с момента их создания, отчасти из-за этой самой проблемы, которую Apple в своей бесконечной мудрости пока не сделала для решения.
Пилман
@peelman Apple не делает это в TextEdit Info.plist. Они действительно способны предоставить правильные имена типов документов. И пользователи больше заботятся о столбце Finder Kind, чем о технических аспектах UTI.
Даниэль Бек
@db - PListEdit Pro - это то же самое, что и редактор списков свойств? У меня первый и мой экран выглядит немного иначе. Спасибо за довольно полный ответ :)
cwd
nm, только что нашел редактор списка свойств в /Developer/Applications/Utilitiesпапке. У меня не было QS, каталогизировавшей эту папку. упс.
cwd
Я искал что-то в этих строках, но можно ли изменить способ поиска, как это делается ?
Конрад
2

Это произошло, когда я обновился до Office 2016 и удалил Office 2011 - Finder решил, что .dotфайлы (шаблоны MS Word 97-2004) были файлами DOT GraphViz , хотя у меня не было установлено GraphViz, и решил, что Nisus Writer должен быть приложение по умолчанию.

Мне удалось исправить приложение по умолчанию простым способом в Finder (Получить информацию / Открыть с помощью: / Изменить все ...), но тип файла все еще был неправильным. За ответ Даниэля Бека я проверил Info.plistsWord 2016 и Nisus Writer, но оба они были верны.

Мне пришлось перестроить реестр Launch Services с помощью

/System/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -kill -r -domain local -domain system -domain user

(из Терминала), и это наконец исправило это.

Дэвид Моулз
источник
1

Это до программы сохранения, чтобы установить UTI (универсальный идентификатор типа) для данного файла. если вам удастся изменить их, а затем отредактируйте файл в любой программе, в которой вы их создали, и задайте их как обычный текст, при повторном сохранении они, вероятно, будут преобразованы в обычный текст.

технически эти файлы представляют собой обычный текст, они могут быть открыты любым редактором, который поддерживает простой текстовый UTI, что и является целью UTI, так что это не неточность, это упражнение семантики. Я лично избегаю таких проблем, помещая свои изображения, таблицы стилей и файлы JavaScript в подпапки.

независимо от того, вам, вероятно, нужно просмотреть выбранный вами редактор и посмотреть, поддерживает ли он способ определения отношений UTI-> расширение файла или способ определения того, с помощью какого файла UTI сохраняется файл.

PeelMan
источник
1

Описания основных типов OS X можно изменить, отредактировав InfoPlist.strings в CoreTypes.bundle.

Список свойств представляет собой скомпилированный двоичный файл, поэтому на всякий случай сделайте резервную копию перед его редактированием. Обновления системы, вероятно, перезапишут его, поэтому сохраните копию или (что я рекомендую) свяжите отредактированную версию с местоположением оригинала - при условии, что ваша копия named InfoPlist.strings.customи находится в том же каталоге, что и оригинал:

cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj

cp InfoPlist.strings InfoPlist.strings.custom - ваша пользовательская копия

mv InfoPlist.strings InfoPlist.strings.backup - движущийся оригинал

открыть InfoPlist.strings.customс TextMate, так как он хорошо разбирает списки двоичных свойств, если вы mateустановили:

mate /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings.custom

как только вы закончите редактирование, свяжите оригинальный файл на месте:

sudo ln -s /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings.custom /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/English.lproj/InfoPlist.strings

и перезапустите Finder с killall Finder- вы должны увидеть изменения в Finder после этого.

например, я изменился "Portable Document Format (PDF)" = "Portable Document Format (PDF)";на "Portable Document Format (PDF)" = "PDF";и ... скажем пока, пока надоедливые длинные «добрые» строки в Finder :-)

До послевведите описание изображения здесь введите описание изображения здесь

ПРИМЕЧАНИЕ: я использую английский как системный язык - если у вас есть какой-либо другой язык, вам нужно изменить имя директора на соответствующий язык:

cd /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Немецкий.lproj/ <- например, скажем, немецкий

Обновление 1 (узнал о плутиле):

Вы можете использовать plutilдля преобразования из двоичного формата в XML или JSON

sudo plutil -convert json InfoPlist.strings -o InfoPlist.strings.json

после редактирования .json преобразуйте (скомпилируйте?) обратно в двоичный формат:

sudo plutil -convert binary1 InfoPlist.strings.json -o InfoPlist.strings

ОБНОВЛЕНИЕ 2

Хотите узнать, где эти раздражающие строки?

sudo find ./ -name '*.plist' -o -name '*.strings' -exec plutil -p {} \; | grep"annoying"где annoyingэто вещь , которая раздражает с ** т из дня

PJJ
источник
0

Посмотрите на дути

Инструмент командной строки для выбора приложений по умолчанию для типов файлов в OS X

ocodo
источник