2 votos

AppleScript para cambiar el tamaño de las columnas del Finder

Cansado del tamaño descuidado y semilegendario de las columnas de la vista de lista del Finder, estoy intentando codificar una solución AppleScript. Las omisiones y los errores en el diccionario del Finder hacen que esto sea (para permitirme un eufemismo) un reto. El objetivo es que cualquier ventana muestre una vista de lista minimalista con una sola pulsación de tecla, con todas las columnas ajustadas a la anchura mínima que evite el truncamiento y la propia ventana dimensionada a su contenido. Algo parecido a esto

minimal finder view

Las principales dificultades que he encontrado hasta ahora están en el columna clase de opciones de vista de lista de Ventana del buscador .

  • visible no refleja con exactitud el estado real de las columnas
  • ajuste visible no tiene ningún efecto
  • ancho se puede leer, pero la configuración no tiene ningún efecto

Tampoco ayuda que el botón de zoom del Finder no haya hecho nada sensato o útil desde que los teléfonos móviles tenían el tamaño de una caja de zapatos.

¿Alguien ha intentado un proyecto similar o que haya superado alguna de las dificultades señaladas? Uno odia tener que recurrir a la poca fiabilidad de los scripts de la GUI.

1voto

Seif Puntos 121

He probado el siguiente script (escrito para responder a otra pregunta aquí esta ¿Es posible cambiar el ancho de una columna de la vista de lista del Finder en AppleScript?

tell application "Finder"
    activate
    set the_window to window 1
    set current view of the_window to list view
    set the_options to list view options of the_window
    set the_name_column to first column of the_options whose name is name column
    set the_items to name of every item of the_window
    -- get the longest name (count of characters)
    set longest_name to 0
    repeat with I from 1 to count of the_items
        --check for invisible files, which we don't need to consider
        if character 1 of item I of the_items is not "." then
            if (count of characters of item I of the_items) > longest_name then
                set longest_name to count of characters of item I of the_items
            end if
        end if
    end repeat
    -- this only works if the text size is 12. The multiplier 7.5 could be changed
    -- if the text size is something else. 
    set desired_width to longest_name * 7.5
    set width of the_name_column to desired_width
    -- we have to close and reopen the window in order to see any changes.
    -- there might be a "refresh window" command but I don't know it.
    set the_target to target of the_window
    close the_target
    open the_target
end tell

Ese script establecerá el ancho de la columna Nombre, en una ventana vista como lista, para que sea tan grande como sea necesario para que quepa el nombre más largo de un elemento en la ventana. Funciona (para mí) en MacOS 10.11.6 y 10.12.6.

La clave es reconocer que no se "establece el ancho de la columna de nombres de la ventana 1". Más bien, usted "establece el ancho de la columna del nombre de las opciones de la vista de lista de la ventana 1". Eso es un pseudocódigo, pero cuenta la historia. Vea el script para más detalles.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X