Enumere las extensiones instaladas en Safari para Mac OS X, e indique si cada una está habilitada

3

Me gustaría una lista, desde la cual se puede copiar el texto.

(No es una captura de pantalla de preferencias.)

Esta información no aparece en ninguno de los siguientes:

  • Safari
  • Perfil del sistema en Snow Leopard
  • Información del sistema en Lion.

Me pregunté si existe una extensión para enumerar otras extensiones, pero cuando busqué no encontré nada adecuado.

Si no es un comando o una extensión, quizás haya una aplicación, pero nuevamente: no pude encontrar nada adecuado.

(en vez de eso, podría haber publicado esta pregunta de inicio para el Superusuario, donde un gurú de canalización de comandos podría intensificar, pero prefiero Preguntar por la posibilidad de que alguien conozca una extensión o aplicación).

Background

Con el interruptor maestro de extensiones apagado, la simple presencia de extensiones instaladas puede hacer que algunas versiones de Safari demoren más de lo esperado en iniciarse.

Por esa y otras razones, a veces es necesario tener una lista completa de las extensiones instaladas, incluidas aquellas que están deshabilitadas.

    
pregunta Graham Perrin 04.02.2012 - 10:51

4 respuestas

5

Es principalmente una cuestión de analizar la salida de defaults read ~/Library/Safari/Extensions/extensions y formatearla de forma fácil para el usuario. El resultado en realidad responde a sus dos preguntas:

defaults read ~/Library/Safari/Extensions/extensions | awk '
/Bundle Directory/ {
    split($0, t, /\"/);
    sub(".safariextension", "", t[4]);
    sub("-1", "", t[4]);
    bundle=t[4]
    e="disabled"
}
/Enabled/ {
    e="enabled";
}
/Hidden Bars/ {
    print bundle, "...", e
}' | sort --ignore-case

La creación de un script de shell a partir de él se deja como un ejercicio para el lector.

Tenga en cuenta que esto probablemente dejará de funcionar si Apple decide cambiar el formato de ~/Library/Safari/Extensions/extensions

    
respondido por el nohillside 04.02.2012 - 14:10
0

Para la posteridad, otro punto de partida simple que se originó de lo que alguna vez fue una pregunta diferente:

Lista de extensiones habilitadas, sin clasificar

defaults read ~/Library/Safari/Extensions/extensions | grep -B 1 "Enabled = 1"

El resultado es rápido, pero sucio:

  • para cada elemento encontrado hay tres líneas, una debería ser suficiente
  • en la línea de interés, el "Bundle Directory Name" = " y el "; final son innecesarios
  • algunos de los nombres de directorio del paquete incluyen -1 , esto tampoco es necesario.

Para Safari en la versión preliminar 16A319 de macOS Sierra (Mac OS X 10.12)

defaults read ~/Library/Safari/Extensions/extensions | grep -B 5 "Enabled = 1"
    
respondido por el Graham Perrin 06.02.2012 - 22:16
-1
touch ~/Library/Safari/Extensions/extensions
defaults read ~/Library/Safari/Extensions/extensions | awk '
/Bundle Directory/ {
    split($0, t, /\"/);
    sub(".safariextension", "", t[4]);
    sub("-1", "", t[4]);
    bundle=t[4]
    e=""
}
/Enabled/ {
    e="... enabled";
}
/Hidden Bars/ {
    print bundle, e
}' | sort --ignore-case

Esta variación en la respuesta aceptada incluye extensiones que están deshabilitadas sin etiquetarlas como tales . Una preferencia personal : el espacio en blanco resultante me ayuda a ver, de un vistazo, a los que están habilitados.

    
respondido por el Graham Perrin 07.02.2012 - 00:27
-1

Un simple punto de partida, publicado al mismo tiempo que la pregunta inicial:

Lista simple de extensiones instaladas, ordenadas alfabéticamente

defaults read ~/Library/Safari/Extensions/extensions | grep "Bundle Directory Name" | sort --ignore-case

El resultado es rápido, pero sucio:

  • en la línea de interés, el "Bundle Directory Name" = " y el "; final son innecesarios
  • algunos de los nombres de directorio del paquete incluyen -1 , esto tampoco es necesario.
respondido por el Graham Perrin 04.02.2012 - 10:53

Lea otras preguntas en las etiquetas