Haga que las carpetas abiertas por aplicaciones externas se abran en una nueva pestaña del buscador en lugar de una ventana

13

Tengo la configuración de "abrir carpetas en nuevas pestañas" (en lugar de ventanas nuevas) en el buscador de encendido, pero esto no parece influir en lo que mis otras aplicaciones hacen cuando se abra una carpeta. Launchbar y un script de shell que ejecuto desde emacs todavía abre carpetas en pequeñas ventanas del buscador. ¿Cómo puedo hacer que todas las carpetas abiertas desde aplicaciones externas aparezcan en una ventana del buscador con pestañas?

Editar: Bmike en el comentario tiene razón en que esto probablemente podría hacerse a través de un applecript. Algo como esto:

  1. Tiene algún script que le proporciona la ruta de la carpeta que desea abrir.
  2. Pasa esto como una variable a un applecript.
  3. Este applecript guarda el nombre de ruta como una variable
  4. Activa el buscador o abre una carpeta particular con el buscador.
  5. Envía el comando de pulsación de teclas + t para abrir una nueva pestaña (o hace lo mismo con un comando para buscar).
  6. Envía el comando de pulsación de teclas + shift + g al buscador abriendo la carpeta ir a con ruta x menú / ventana.
  7. Escribe (eventos del sistema) o lo pega (establece el portapapeles en la variable que es la ruta de la carpeta) en este menú / ventana.
  8. Haga clic en enter. La carpeta está abierta.

fuente
3
Quiero lo mismo.
iCode
1
Tengo el mismo problema, pregunta sobre Super Usuario: superuser.com/questions/688439/…
Nick
Parece que esto está bajo la configuración de la aplicación, no solo de Finder.
Rajiv
1
¿Puedes compartir el script de shell o los detalles de la barra de inicio? Es posible incrustar una llamada AppleScript en ellos para indicarle al buscador que abra una nueva pestaña.
bmike
La barra de inicio solo abre cosas automáticamente, en los scripts de shell utilizo el comando open developer.apple.com/librarY/mac/documentation/Darwin/Reference/… , para abrir a través de emacs en dired uso este script apple.stackexchange.com/questions/ 106131 /…

Respuestas:

1

Hice esto, no estoy seguro si responderá por usted.

Preferencias del Finder> General> marque "abrir carpetas en pestañas en lugar de nuevas ventanas"

David Corbin
fuente
1

Gracias por la idea Tengo el applecript terminado.

Pon lo siguiente en tu ~/.bashrco~/.zshrc

# open the current folder in Finder's tab
function oft() {
    # if no arguments are given, we use the current folder
    oft_absolute_path=$(cd ${1:-.}; pwd)

    # execute the applescirpt
    osascript 2>/dev/null <<EOF

        # Finder returns a path with trailing slash
        # But PWD doesn't have one, so we add one for it
        set new_tab_path to "$oft_absolute_path" & "/"

        tell application "Finder"
            activate

            if not (exists window 1) then
                make new Finder window
            end if

            try
                set finder_path to POSIX path of (target of window 1 as alias)
            on error
                # the finder's window doesn't contain any folders
                set target of front window to (new_tab_path as POSIX file)
                return
            end try
        end tell

        if new_tab_path = finder_path then
            # the finder's tab is already there
            return
        end if

        # open new tab in Finder
        tell application "System Events" to keystroke "t" using command down

        # set the Finder's path
        tell application "Finder"
            set target of front window to (new_tab_path as POSIX file)
        end tell

        return
    EOF
    # clear the tempory veriable
    unset oft_absolute_path
}

En terminal, escriba

oft .

para abrir la carpeta actual en la nueva pestaña del Finder.

El script bash se usa para recuperar la ruta absoluta, lo que me pareció difícil de hacer en appplescript.

ACTUALIZAR

He creado una versión más extensa (y complicada) que abrirá la misma pestaña para la misma carpeta. Consiguelo aqui

Hai Feng Kao
fuente