Averigüe el identificador de la aplicación (generalmente una cadena DNS inversa) para el comando "predeterminado"

Me gustaría deshabilitar mantener y presionar para Hyper Terminal. Ya lo hice con éxito para VS Code usando la siguiente receta:

defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false

de https://stackoverflow.com/a/44010683/7483211

Mi problema es que no sé el identificador de la aplicación que debo ingresar en lugar de com.microsoft.VSCode.

¿Cómo puedo averiguar esto para una aplicación?

Gracias @jaume por hacer que el título sea más preciso, si hubiera sabido que esto se llama el identificador de la aplicación, es posible que no hubiera tenido que responder la pregunta.

Respuestas (2)

En realidad, no se llama "identificador de aplicación" (eso es algo ligeramente diferente); el nombre correcto es "identificador de paquete".

Puede encontrarlo buscando en el Info.plistarchivo en la Contentscarpeta de cualquier aplicación de macOS. Por ejemplo, para Visual Studio Code, normalmente se ubicaría en:

/Applications/Visual Studio Code.app/Contents/Info.plist

Debe buscar la clave nombrada CFBundleIdentifier; se verá así:

<key>CFBundleIdentifier</key>
<string>com.microsoft.VSCode</string>
Tenga en cuenta que el contenido de las aplicaciones normalmente está oculto en el Finder. Para profundizar en ellos, haga clic con el botón derecho (/control-clic/cualquier-clic-secundario-que-esté-configurado-como-en-su-Mac) en la aplicación y seleccione Mostrar contenido del paquete en el menú contextual. Además, la forma más sencilla de ver archivos .plist en el Finder es con Vista rápida: seleccione el archivo .plist y presione Comando-Y o elija el menú Archivo > Vista rápida [nombre de la aplicación] (o simplemente presione la barra espaciadora, pero si tiene el nombre de archivo seleccionado que intentará cambiarle el nombre).

Descubrí una forma consultando defaultsla ayuda:

defaults read | grep hyper

Esto da como resultado:

   "co.zeit.hyper" =     {
                "bundle-id" = "co.zeit.hyper";

Así que en mi caso la respuesta es co.zeit.hyper.

Puede haber una mejor manera, pero esto funciona si puede adivinar parte del nombre de la aplicación correctamente.