Я видел много связанных вопросов / ответов, но кажется, что до сих пор нет работающего решения. Итак, я суммировал всю связанную информацию, которую нашел, и, возможно, мы сможем найти решение.
Таким образом, один из способов сделать это - как в плагине SIMBL для цветных значков (google it), и как это сделано в Dropbox - ввести код в mach_kernel. Но мне не нравится эта идея с внедрением кода, и кажется, что может быть более простой способ с модификацией системных ресурсов.
Таким образом, все данные для записей боковой панели хранятся в ~ / Library / Preferences / com.apple.sidebarlists.plist (это бинарный plist, откройте его с помощью Xcode / PlistEditPro / etc) избранное -> VolumesList
Значок для записи определяется парой данных: Icon и CustomItemProperties -> com.apple.LSSharedFileList.TemplateSystemSelector
это означает, что можно изменить псевдоним на пользовательский для записей по умолчанию или добавить Icon и CustomItemProperties -> com.apple.LSSharedFileList.TemplateSystemSelector к пользовательской записи с данными, скопированными из записей по умолчанию, и это будет работать.
Вы должны выйти -> войти, чтобы увидеть изменения.
Но при этом вы можете изменить только входное изображение, которое уже есть в системе. Поэтому я посмотрел более подробно на поля Icon и CustomItemProperties -> com.apple.LSSharedFileList.TemplateSystemSelector
Поле Icon имеет шестнадцатеричное кодирование и декодирование, это выглядит так:
ImgR��4����FBIL��(����������������ћЊщ��H+�����ю≤�€\��ћCW���� €ю��������€€€€���ю≤�юD�юC�з�^~�^{��@��T�o�o�l�b�a�r�D�o�c�u�m�e�n�t�s�F�o�l�d�e�r�I�c�o�n�.�i�c�n�s����M�a�c�H�D��_System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarDocumentsFolderIcon.icns���/�€€
(поле Документы по умолчанию)
Так что он указывает на нормальный, цветной файл значков документов. При изменении данных для другого файла .icns (даже действительного или другого значка по умолчанию) в записи отображается значок стандартной папки. Но если изменить его на другой значок по умолчанию, а затем изменить com.apple.LSSharedFileList.TemplateSystemSelector, как в этом значке, то он покажет этот другой значок по умолчанию.
com.apple.LSSharedFileList.TemplateSystemSelector выглядит следующим образом:
1935819875
(поле Документы по умолчанию)
Это означает, что данные Icon и номер com.apple.LSSharedFileList.TemplateSystemSelector связаны между собой, и пара из них определяет значок входа. Я еще не понял, что это за число и что оно означает, но для записей по умолчанию оно всегда начинается с 19358 * * . Я думаю, что он связан с заголовком CoreServices.framework LSSharedFileList.h и номером записи в каком-то списке системных ресурсов.
Кто-нибудь знает, что делать дальше? Буду признателен, если вы поможете мне с этим.
Вот список данных записей по умолчанию http://www.mediafire.com/view/?l5sqalslbcxj2dl. Это поможет вам, если вы хотите изменить значки вашей стоковой папки на боковой панели на значки из записей по умолчанию.