¿Cómo configurar un ícono para algunos tipos de archivos en todo el sistema?
Por ejemplo, tengo archivos de texto que terminan con la extensión .scala y quiero asociar un ícono para esos archivos a través de todo el sistema y para cualquier archivo recién creado de esta extensión.
Gracias.
macos
mac
osx-snow-leopard
Quirón
fuente
fuente
Respuestas:
Launch Services maneja los iconos para los tipos de archivo (el servicio determina, entre otras cosas, qué aplicación maneja un tipo de archivo). El icono del archivo siempre lo proporciona la aplicación que maneja la apertura de un archivo de forma predeterminada. De esta manera, por ejemplo, Vista previa proporciona íconos PDF por defecto e íconos PNG, pero si cambia todos los archivos PNG para abrirlos usando Pixelmator, estos archivos obtendrán un ícono de estilo Pixelmator después.
Lo que debe hacer es agregar su definición de tipo de archivo a la aplicación que la abre de manera predeterminada, o crear su propia aplicación "ficticia" para el tipo de archivo .
Como ejemplo, mi sistema aún no lo sabe
.scala
y quieroTextMate
manejarlo.Primero, muestro el contenido del paquete
TextMate.app
, navegoContents/
y abroInfo.plist
, ya sea con un editor de texto o comoProperty List Editor
parte de las herramientas de desarrollo de Apple.TextMate usa un formato inusual para
Info.plist
(generalmente es binario o XML), un extracto del cual se ve así:La clave principal
CFBundleDocumentTypes
es lo que queremos. El primer elemento secundario del mismo, encerrado entre llaves, contiene una definición de tipo de archivo, completa con el nombre (para la columna de tipo de archivo en Finder), las extensiones de archivo y el nombre del archivo de icono (ADA
paraTextMate.app/Contents/Resources/ADA.icns
).Para admitir
.scala
, debemos agregar un elemento hermano similar al anterior, debajo del mismo elemento padreCFBundleDocumentTypes
:Por simplicidad, estoy usando el mismo archivo de icono, pero podemos crear uno nosotros mismos, copiarlo
TextMate.app/Contents/Resources/SCALA.icns
y hacer referencia a él comoSCALA
enInfo.plist
.Ahora, cierre TextMate si se está ejecutando, mueva la aplicación
TextMate.app
a una carpeta diferente y ábrala nuevamente. Ciérrelo y muévalo hacia atrás, luego ábralo nuevamente. Esto se hace para que Launch Services recoja los cambiosInfo.plist
que acabamos de realizar.El resultado se ve así (recuerde, reutilizamos el icono de TextMate Ada para
.scala
):Si no desea asociar una aplicación para abrir
.scala
archivos (no puedo imaginar por qué, pero hay una manera de hacerlo): cambie las adiciones al archivo a lo siguiente:Ahora, la aplicación declara el tipo de archivo, pero le dice al sistema que no sabe cómo manejarlo (Apple da el ejemplo de que Finder declara los tipos de fuente, aunque no puede abrirlos).
* Tenga en cuenta que cualquier asignación de aplicación permanente al tipo de archivo anula el icono, probablemente al tipo de "documento desconocido".
Si ya tiene una aplicación asociada
.scala
y solo desea cambiar el icono del archivo sin cambiar la aplicación asociada:Abra la aplicación
Info.plist
, busque la entrada de tipo de archivoCFBundleDocumentTypes
y obtenga elCFBundleTypeIconFile
. Modifique este archivo.../Contents/Resources/
y debería reflejarse en Finder poco después.Información adicional:
Cómo cambiar el ícono de un solo documento o carpeta a un archivo de imagen
Suponga que tiene una imagen
~/Desktop/test.png
que desea usar como un ícono (es la captura de pantalla utilizada anteriormente para ilustrar el.scala
cambio de ícono / TextMate / Ada.Abrir
/Applications/Utilities/Terminal.app
e ingresar:Esto cambiará el
test.png
icono del archivo a su imagen. Como disfruto de la recursividad, intentemos esto:Antes, el
png
ícono de Vista previa simple (la vista previa de la imagen está desactivada):Después, el archivo de imagen en sí es su vista previa:
Ahora podemos abrir el cuadro de diálogo Obtener información del archivo , hacer clic en el icono del documento futuro deseado en la parte superior izquierda,
Cmd-C
para copiarlo, abrir el cuadro de diálogo Obtener información del archivo del documento , hacer clic en el icono del documento actual no deseado en la parte superior izquierda yCmd-V
pegar el icono que queremosAlternativamente, puede abrir el archivo de imagen que desea usar como icono en Vista previa,
Cmd-A
para seleccionar todo,Cmd-C
para copiar la imagen al portapapeles. Luego abra el cuadro de diálogo Obtener información del documento de destino , seleccione el icono para cambiar en la esquina superior izquierda yCmd-V
pegue la imagen sobre él.fuente
codesign --verify --verbose /Applications/TextMate.app
o algo parecido Si se invalida, no lo haga para aplicaciones que necesitan excepciones en el firewall o que necesitan Llavero. No estoy seguro de qué otra cosa podría salir mal al jugar con la firma. (+1 para más detalles)touch
nivel raíz del paquete para actualizar su fecha de modificación. Luego, en el Finder, anule la selección y vuelva a seleccionar la aplicación / paquete / paquete y cuando note que la fecha de modificación es posterior a la de la información almacenada en caché en la base de datos de Launch Services, la volverá a registrar, reconociendo así cualquier cambio usted ha hecho.TextMate.app: code object is not signed
y no quiero volver a pasar por eso. Sin embargo, sospecho que es un problema real, no lo pensé. Editar : Pensándolo bien, los atajos de teclado personalizados también se almacenan enInfo.plist
. Entonces, eso podría no ser realmente un problema, si no lo son. El único problema podría ser la adición de un archivo de icono adicional dentro del paquete de la aplicación.Debe reemplazar el archivo ICNS dentro del programa asignado como programa predeterminado para el tipo de archivo específico.
1 - Cree una imagen para el icono deseado, luego guárdelo como un tipo de archivo png (png admite transparencia).
2 - Convierte el archivo png a un tipo de archivo icns (FastIcns es bastante bueno y es gratis).
3 - Haga clic en CMD o haga clic con el botón derecho en la aplicación que está configurada como la aplicación predeterminada para el tipo de archivo específico, luego seleccione mostrar contenido del paquete.
4 - Busque el archivo icns que la aplicación está designando como el icono para el tipo de archivo específico, probablemente estará en una carpeta llamada Recursos.
5 - Nombra el archivo icns que creaste, exactamente el mismo nombre de archivo que el que deseas reemplazar.
6 - Copie y pegue, o arrastre y suelte el nuevo archivo icns que creó en la carpeta donde se encuentra el que desea reemplazar, y elija reemplazar cuando se le dé la opción.
7 - ¡Ya terminaste! Todos los iconos para ese tipo de archivo han sido reemplazados por el nuevo icono deseado.
fuente
La forma en que siempre hago esto es buscar un archivo con esa extensión, hacer clic derecho en »Obtener información o Comando-i, y eso abrirá el Panel de información. En la parte superior, verá el icono que se usa actualmente para la imagen. Puede arrastrar un archivo de imagen a ese para cambiarlo, o si copió la imagen, puede hacer clic en la imagen que desea cambiar y pegar para cambiarla.
fuente