Здесь у меня есть папка, содержащая кучу файлов * .mkv (очевидно, видео) и файлов * .srt (очевидно, субтитры). Я хочу держать их в одной папке, но я не хочу, чтобы они смешивались вместе. Похоже, это хорошая идея визуально расположить их в две отдельные группы.
Однако ни одно из расширений не распознается системой, и они по-прежнему помещаются в одну группу «Документы», что явно не то, что я хочу.
Вопрос: как сообщить системе, что весь файл * .mkv должен рассматриваться как «Медиа» (или «Видео», или как там указано название группы файлов для видеофайлов)?
Благодарю.
РЕДАКТИРОВАТЬ:
@Daniel, связанная программа - MPlayerX, и результат этой команды следующий:
imac:Game of Thrones arnold$ mdls "Game of Thrones 1×2.mkv"
kMDItemContentCreationDate = 2011-12-15 10:31:20 +0000
kMDItemContentModificationDate = 2011-12-27 09:09:55 +0000
kMDItemContentType = "dyn.ah62d4rv4ge804450"
kMDItemContentTypeTree = (
"public.data",
"public.item"
)
kMDItemDateAdded = 2011-12-27 09:22:55 +0000
kMDItemDisplayName = "Game Of Thrones 1×2.mkv"
kMDItemFSContentChangeDate = 2011-12-27 09:09:55 +0000
kMDItemFSCreationDate = 2011-12-15 10:31:20 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = 0
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = 0
kMDItemFSLabel = 0
kMDItemFSName = "Game of Thrones 1×2.mkv"
kMDItemFSNodeCount = 220877659
kMDItemFSOwnerGroupID = 99
kMDItemFSOwnerUserID = 99
kMDItemFSSize = 220877659
kMDItemFSTypeCode = ""
kMDItemKind = "Video Media"
kMDItemLogicalSize = 220877659
kMDItemPhysicalSize = 220880896
imac:Game of Thrones arnold$
Как ни странно, «Вид товара» действительно отображается как «Видео Медиа». И для файла субтитров это «Субтитры». Тем не менее, по какой-то причине это не помогает Finder правильно расположить эти файлы ...
источник
mdls
в Terminal для одного из этих файлов, напримерmdls "Game of Thrones episode 2.mkv"
?mdls
выход. Используете ли вы MPlayer OSX или MPlayer OSX Extended ?kMDContentType
. Какой тип контента указан выше?Ответы:
Вам необходимо использовать приложение, которое объявляет правильную ассоциацию типа файла, например,
.mkv
расширение имени файла.Например, определенные в системе типы файлов
/System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist
объявляют следующее в разделе UTIs Exported Type :Это позволяет системе ассоциировать UTI
public.jpeg
с «группой UTI»public.image
, которая (очень вероятно) используется Finder для группы изображений ;public.filename-extensions
эквивалентный тип карты для расширения файла.Это позволяет OS X определять, что у
.jpg
файла есть UTIpublic.jpeg
, и это является суб-UTIpublic.image
(и так далее, сpublic.item
иpublic.data
). Затем Finder берет все файлы (которые также есть)public.image
и помещает их в одну группу изображений .То же самое относится
public.mpeg-4
и кpublic.movie
и к отображению имени файла.К сожалению, автор MPlayerX не удосужился отобразить UTI.
Он даже не удосужился создать надлежащие типы файлов для всех расширений, которые поддерживает программа. Вот почему в Finder в виде списка , все
.mkv
файлы не называются , например , Matroska Video , и иметь соответствующий MKV ярлык на их значок, а просто видеоносителей с общим видео этикеткой. Все поддерживаемые типы файлов перечислены по расширению файла для этого «формата файла», поэтому MPlayerX может открыть их:Это означает, что, например, если вы предпочитаете воспроизводить
.m4a
файлы в MPlayerX, а не в iTunes, вы теряете описательный звук Apple MPEG-4 в столбце « Вид Finder» и вместо этого получаете Audio Media .Вы можете исправить группировку, отредактировав
/Applications/MPlayerX.app/Contents/Info.plist
файл и должным образом объявив, например,mplayerx.video
UTI, который соответствуетpublic.movie
и добавив соответствующее сопоставление расширений файлов.Вы можете исправить столбец « Вид », отредактировав один и тот же файл, правильно объявив типы файлов с лучшим описанием и создав файл значков для каждого из них.
Просто используйте файл Core Types в
Info.plist
качестве шаблона, заменив, например,public.jpeg
свой собственный идентификатор (например,mplayerx.video
если вам не нужны правильные столбцы и значки Kind илиmplayerx.mkv
если вы хотите их). Вам нужен Xcode, чтобы редактировать эти файлы или конвертировать их в XML, редактируемый в любом текстовом редакторе, используяplutil -convert xml1 <filename>
.Ваши изменения, которые довольно легко ошибиться, будут отменены при каждом обновлении приложения.
В качестве альтернативы, по крайней мере, для Finder Arrange By Kind , вы можете редактировать определения основных типов и добавлять свои собственные. Обязательно отредактируйте копию файла и замените ее после редактирования, чтобы обойти проблемы с разрешениями. Имейте в виду, что при этом вы будете редактировать и заменять основные системные файлы (то есть, вызывать проблемы).
Более разумным решением было бы создание нового «фиктивного» приложения, которое просто объявляет UTI типа файла как UTI экспортированного типа . Это будет использоваться базой данных типов файлов OS X, и вы можете обновить как OS X, так и MPlayerX, не теряя связи типов контента. Даже если вы измените, например,
.m4a
на MPlayerX, только вид столбец , он все еще находится в категории Movie из-за объявлений в другом приложении, независимом от связанного приложения.Итак, создайте новое приложение, например, используя Automator, которое на самом деле ничего не делает при запуске, и добавьте в его
Contents/Info.plist
файл следующее:Сохраните
/Applications
или около того, и перезапустите Finder.Частичный
mdls
вывод.mkv
файла, тип содержимого, предоставляемый «вспомогательным приложением», вид элемента, предоставляемый связанным проигрывателем (MPlayerX):Поскольку это просто неаккуратная интеграция с платформой разработчика, вам, вероятно, следует сообщить об ошибке.
источник
kMDItemContentTypeTree
они не добавляют ничего полезного в метаданные?.mp4
есть), и приложение, добавляющее тип файла в систему, не объявляет ни UTI (так оно простоdyn.xyz
), ни отношение (то есть простоpublic.data
). Им нужно будет объявить UTI и связать егоpublic.movie
(например, сpublic.data
)..mkv
в.avi
вздох !!! Я делаю это немного менее ужасным, оставляя комментарий Spotlight (в Get Info) о том, что это действительно mkv. ..это конечно предполагает, что ваш медиаплеер в порядке с неправильным расширением - VLC не работает;).mkv.avi
для наименее злого обходного пути, но с немного менее красивым именем файла.