¿Cómo enumerar todas las claves disponibles de .plist en una determinada aplicación de dominio por comando predeterminado?

14

Quiero conocer todas las claves (lista de propiedades) que están disponibles en ciertas aplicaciones de dominio, como ejemplo, podría listar la clave disponible para com.apple.dock ingresando este comando:

$ defaults read com.apple.dock

pero de alguna manera, la salida de este comando solo mostró la clave de la lista de propiedades activa y, sin embargo, no todas las claves disponibles para com.apple.dock figuran allí.

¿Alguien puede ayudarme en esto?

    
pregunta wongacid 03.08.2011 - 06:59

6 respuestas

7

Esta no es una tarea trivial, si recuerdo correctamente, la gente ejecuta la utilidad strings en la línea de comandos en una Aplicación y busca elementos que coincidan con una estructura similar a com.domain.FeatureName. (com.apple.iTunes, ch.cyberduck.CyberDuck, com.panic.Coda, etc.)

La forma más fácil de administrar estas anulaciones es mediante un Panel de Preferencias del Sistema con el nombre de Secrets . Al usar esto, se instala un Panel de Preferencias en las Preferencias del Sistema, y le brinda una interfaz para elegir una aplicación y cambiar su configuración según sus preferencias particulares.

    
respondido por el Jason Salaz 16.08.2011 - 23:00
5

Realmente no hay una noción de teclas "disponibles". La aplicación es gratuita para leer las claves que quiera. La mayoría de las personas descubren las claves "secretas" predeterminadas utilizando strings para ver el binario de la aplicación para ver qué claves intentará leer.

    
respondido por el jtbandes 03.08.2011 - 09:24
4

Encontré un sitio web dedicado a estos comandos de escritura predeterminados de Mac OS X, algunos comandos útiles para Mac OS X Lion & León de montaña.

enlace

    
respondido por el Brandon West 26.08.2012 - 18:12
4

La mayoría de las personas aquí quieren hacer todo a través de la línea de comandos, pero tengo una sugerencia más práctica.

Estos dos programas que se describen a continuación enumeran una gran cantidad de las características personalizadas conocidas de la línea de comandos de las aplicaciones de Mac OS X, clasificadas por aplicación o función. La ventaja es que la lista de funciones se proporciona para usted; no tienes que buscar en Google para averiguar cuáles son las funciones y las secuencias de línea de comandos necesarias para modificar cada una.

Hay varias aplicaciones gratuitas o comerciales que proporcionan una interfaz gráfica de usuario que enumera la mayoría de las opciones de personalización que se pueden modificar a través de la Terminal. Para activar cualquiera de estas funciones, utilizando estos programas que describo, lo hace dentro de la GUI de la aplicación y no tiene necesidad de usar la línea de comandos. No necesita saber nada sobre los archivos defaults write o .plist .

Dos de estas aplicaciones son:

TinkerTool

que es gratis, y

MacPilot

que se acaba de actualizar con las nuevas funciones de Lion y cuesta US $ 20.00.

Estos son programas que poseo y uso.

Descargue la herramienta gratuita TinkerTool y la versión de prueba de MacPilot y haga clic en todas las pestañas para ver todas las innumerables funciones que puede personalizar. Hay demasiados para enumerarlos aquí.

Actualizar

El desarrollador Frederik Wiker ha lanzado aplicaciones de software gratuito (se aceptan donaciones) para crear valores predeterminados de escritura personalizaciones específicas para Lion y Mountain Lion; muchos de ellos también funcionan bien para Mavericks (Mac OS X 10.9) también.

Descargue estos y vea qué personalizaciones están disponibles para usted.

Lion Tweaks

Ajustes de montaña

    
respondido por el user9290 17.08.2011 - 01:20
3

Quizás una explicación bastante larga de cómo funcionan las cosas podría aclarar su búsqueda y la de otros para estas preferencias "ocultas".

La mayoría de las aplicaciones leerán sus archivos de preferencias una vez que se inicien y exista la herramienta defaults para garantizar que los archivos de preferencias sean una estructura válida y no contengan errores de sintaxis. (También permite que el sistema cambie la forma en que se almacenan las claves y las personas no tienen que conocer los detalles de la implementación y pueden usar defaults comando para hacer toda la lectura y escritura.)

El estilo del idioma inglés y las guías gramaticales aseguran que las palabras que escribo aquí sean significativas para el hablante de inglés promedio, y la estandarización del sistema predeterminado establece un marco para que todos sepan qué esperar. El formato de la lista de preferencias es mucho más rígido y matemático que un lenguaje humano, pero los conceptos son similares.

El sistema predeterminado de usuario de Mac OS X es un almacén de valores clave (o base de datos, si lo prefiere).

Puede escribir cualquier cosa en estos almacenes de valores de clave de preferencia, un soneto de Shakespeare, números, una lista de compras. Si el programa está codificado para buscar una clave específica, leerá el valor almacenado. Si no está buscando esa clave, su valor permanece allí sin usar y sin leer.

Esto muestra cómo saber qué valores puede estar buscando un programa específico cuando se inician. Todo se reduce a que usted tiene que saber el valor o realizar una ingeniería inversa del programa.

Existen muchas herramientas para examinar un programa e intentar averiguar qué cadenas (las claves) están incrustadas, como strings y dbx / lldb, así como vincularlas en su propia biblioteca para volcar la estructura interna de un determinado programa.

En la práctica, algunas cosas que son necesarias para las pruebas se agregan de esta manera "oculta" para que no pueda mirar por encima del panel de preferencias del programa y ver estas nuevas funciones que no están listas para su uso general. En cierto modo, no es nada sencillo obtener una lista completa a menos que el autor de ese programa publique el código fuente o documente esta configuración públicamente.

Cuando lees el almacén de valores predeterminados para una aplicación en particular, solo estás leyendo el "libro" que se escribió cuando la aplicación creó su conjunto predeterminado o la configuración que se envió con Mac OS X. Por eso no lo haces. reciba la lista exhaustiva de cosas que son realísticamente posibles de cambiar con esa aplicación.

    
respondido por el bmike 17.08.2011 - 19:18
2

Por lo que sé, una aplicación solo almacenará una nueva clave si difiere de sus valores predeterminados, al menos eso es lo que hacen mis aplicaciones. Esto no es algo que pueda controlarse fácilmente, ya que forma parte del marco de Valores predeterminados del usuario, ya que la aplicación solo le dice a los valores predeterminados del usuario lo que necesita almacenarse y se encarga del resto. Lamentablemente, no creo que la información que está buscando se obtenga fácilmente. Puede ser bueno tener acceso a esto.

    
respondido por el Fred 03.08.2011 - 07:42

Lea otras preguntas en las etiquetas