¿En una sesión o después de reiniciar / cerrar sesión?
Jacob Vlijm
@JacobVlijm preferiblemente incluso persistente durante el reinicio / cierre de sesión.
orschiro
A menos que el enlace de Parto proporcione una solución, las opciones / integración de la línea de comandos de nautilus son bastante limitadas. No hay opción para leer el directorio abierto actualmente, ni para cambiarlo desde la línea de comandos. Recordar lo que no puedes ver me parece imposible. Sin embargo, dentro de una sesión, sería posible una opción de truco y trampa.
Jacob Vlijm
¿@JacobVlijm te explica cómo lograr el recuerdo dentro de una sesión? Para empezar, eso ya sería una gran cosa. :)
orschiro
Respuestas:
7
Opciones de línea de comandos (muy) limitadas de nautilus
Desafortunadamente, nautilus no ofrece opciones de línea de comandos para leer el directorio abierto de sus ventanas, ni tiene ninguna opción para enviar una ventana existente a otro directorio. Como no puede recordar lo que no ve, nos estamos quedando sin opciones a primera vista.
sin embargo
Tenemos que xdotool, no hacer lo nautilusque no, sino al menos fingir el comportamiento que usted describe. Podemos hacerlo de tal manera que "lo creería" si no supiera cómo se hace.
Aunque la solución a continuación no sobrevive a un reinicio, la ventana "recordar" (posiblemente con pestañas) y todos los directorios abiertos es muy posible dentro de una sesión. Como mencionó estar interesado en eso como una "segunda opción", aquí está.
Cómo funciona; el proceso
Aunque no podemos cerrar una ventana y preservar sus pestañas y directorios abiertos, nos podemos hacer una ventana existente en apariencia (y totalmente) desaparece, con la ayuda de xdotool.
Si posteriormente cambiamos el comportamiento del nautilusiniciador de tal manera que primero busque posibles ventanas no asignadas para reasignarlas, antes de abrir una nueva, efectivamente tenemos exactamente el mismo comportamiento como si nautilusrecordara las últimas ventanas utilizadas.
Como instalar
Copie el script a continuación en un archivo vacío, guárdelo como remember.py
#!/usr/bin/env python3import subprocess
import os
app ="nautilus"
wfile = os.environ["HOME"]+"/.unmapped_"+app
def get(cmd):# simply a helper functionreturn subprocess.check_output(cmd).decode("utf-8").strip()def check_windowtype(w_id):# check the type of window; only unmap "NORMAL" windowsreturn"_NET_WM_WINDOW_TYPE_NORMAL"in get(["xprop","-id", w_id])def get_pid(app):# (try to) get the pid of the application try:return get(["pgrep", app])except subprocess.CalledProcessError:passdef get_matches(pid):# get the window list, select the valid (real) app's windows
ws = get(["wmctrl","-lpG"]).splitlines()
matches =[w.split()for w in ws if pid in w]return[w for w in matches if check_windowtype(w[0])==True]try:# try to read the file with unmapped windows
wininf =[l.split()for l in open(wfile).readlines()]exceptFileNotFoundError:# if there are no, unmap the current app's windows
filebrowserwins = get_matches(get_pid(app))if filebrowserwins:
open(wfile,"wt").write(("\n").join((" ").join(l)for l in filebrowserwins))for w in[w[0]for w in filebrowserwins]:
subprocess.Popen(["xdotool","windowunmap", w])else:
arg ="--new-window"if app =="nautilus"else""
subprocess.Popen([app, arg])else:# re- map unmapped windowsfor w in wininf:
wid = w[0]; geo = w[3:7]
subprocess.call(["xdotool","windowmap", wid])
subprocess.Popen(["wmctrl","-ir", wid,"-e","0,"+(",").join(geo)])
os.remove(wfile)
El script necesita ambos wmctrly xdotool:
sudo apt-get install wmctrl xdotool
Copie el nautilusiniciador de /usr/share/applicationsa~/.local/share/applications
y busca la primera línea, comenzando con Exec=. Cámbielo a:
Exec=python3 /path/to/remember.py
Guarde y cierre el archivo.
Cree un método abreviado de teclado con el mismo comando: Elija: Configuración del sistema> "Teclado"> "Métodos abreviados"> "Métodos abreviados personalizados". Haga clic en "+" y agregue el comando:
python3 /path/to/remember.py
Ahora cierre sesión y vuelva a iniciarla
Cómo utilizar
El uso es muy simple:
Para abrir una ventana, haz lo de siempre: haz clic en el iniciador de nautilus. Pestaña la ventana como quieras:
Para cerrar una ventana definitivamente , ciérrela haciendo clic en el cuadro "cerrar" ( x ) de la ventana .
Para preservar la (s) ventana (s) + todas sus pestañas:
presione la tecla de acceso directo. Las ventanas se desvanecerán (aparentemente cerradas).
La próxima vez que haga clic en el iniciador, las ventanas de nautilus aparecerán exactamente como la última vez, incluso se conservarán las posiciones de las ventanas.
Eso es
Nota
En las pruebas que realicé, no pude encontrar ningún inconveniente (14.04). Si te encuentras con alguno, ¡menciónalo!
En la sección Cómo usar , sugerí hacer clic en el icono de nautilus para reasignar posibles ventanas no asignadas. Sin embargo, la tecla de acceso directo hará lo mismo, para que pueda ver lo que le resulte más conveniente. Además, si abrió una carpeta haciendo doble clic después de desasignar en o más carpetas, el acceso directo reasignará las carpetas sin asignar.
EDITAR:
Usuarios de Nemo
Los usuarios de Nemo pueden usar igualmente la solución anterior, pero:
La forma más fácil de acceder a las carpetas es marcar. No mantendrá sus pestañas abiertas, pero al menos puede ver las carpetas que desea rápidamente (y si lo piensa, los marcadores actúan como pestañas).
Simplemente abra una carpeta en Nautilus, vaya al menú Marcador y agregue un marcador.
Respuestas:
Opciones de línea de comandos (muy) limitadas de nautilus
Desafortunadamente, nautilus no ofrece opciones de línea de comandos para leer el directorio abierto de sus ventanas, ni tiene ninguna opción para enviar una ventana existente a otro directorio. Como no puede recordar lo que no ve, nos estamos quedando sin opciones a primera vista.
sin embargo
Tenemos que
xdotool
, no hacer lonautilus
que no, sino al menos fingir el comportamiento que usted describe. Podemos hacerlo de tal manera que "lo creería" si no supiera cómo se hace.Aunque la solución a continuación no sobrevive a un reinicio, la ventana "recordar" (posiblemente con pestañas) y todos los directorios abiertos es muy posible dentro de una sesión. Como mencionó estar interesado en eso como una "segunda opción", aquí está.
Cómo funciona; el proceso
Aunque no podemos cerrar una ventana y preservar sus pestañas y directorios abiertos, nos podemos hacer una ventana existente en apariencia (y totalmente) desaparece, con la ayuda de
xdotool
.Si posteriormente cambiamos el comportamiento del
nautilus
iniciador de tal manera que primero busque posibles ventanas no asignadas para reasignarlas, antes de abrir una nueva, efectivamente tenemos exactamente el mismo comportamiento como sinautilus
recordara las últimas ventanas utilizadas.Como instalar
Copie el script a continuación en un archivo vacío, guárdelo como
remember.py
El script necesita ambos
wmctrl
yxdotool
:Copie el
nautilus
iniciador de/usr/share/applications
a~/.local/share/applications
para 15.04 y posterior:
para versiones anteriores de Ubuntu:
abra la copia local con gedit:
(en caso de
15.04 +
)y busca la primera línea, comenzando con
Exec=
. Cámbielo a:Guarde y cierre el archivo.
Cree un método abreviado de teclado con el mismo comando: Elija: Configuración del sistema> "Teclado"> "Métodos abreviados"> "Métodos abreviados personalizados". Haga clic en "+" y agregue el comando:
Ahora cierre sesión y vuelva a iniciarla
Cómo utilizar
El uso es muy simple:
Para abrir una ventana, haz lo de siempre: haz clic en el iniciador de nautilus. Pestaña la ventana como quieras:
Para cerrar una ventana definitivamente , ciérrela haciendo clic en el cuadro "cerrar" ( x ) de la ventana .
Para preservar la (s) ventana (s) + todas sus pestañas:
presione la tecla de acceso directo. Las ventanas se desvanecerán (aparentemente cerradas).
La próxima vez que haga clic en el iniciador, las ventanas de nautilus aparecerán exactamente como la última vez, incluso se conservarán las posiciones de las ventanas.
Eso es
Nota
EDITAR:
Usuarios de Nemo
Los usuarios de Nemo pueden usar igualmente la solución anterior, pero:
En la sección principal del script, cambie:
dentro:
En el punto 3, use:
En el punto 4, use:
Probado, demostró estar trabajando con nemo
fuente
Recomiendo usar otro administrador de archivos en su lugar si está bien, ya que Nautilus no tiene esa función .
Aquí hay una aplicación alternativa que hace el truco: SpaceFM
Aquí se explica cómo instalarlo.
Tiene características ricas como, por supuesto, volver a abrir las últimas pestañas .
Para convertirlo en el administrador de archivos predeterminado :
xdg-mime default spacefm.desktop inode/directory
fuente
Pruebe estos scripts para guardar y restaurar pestañas del administrador de archivos nautilus. https://github.com/susurri/nautilus_save_tabs/
fuente
La forma más fácil de acceder a las carpetas es marcar. No mantendrá sus pestañas abiertas, pero al menos puede ver las carpetas que desea rápidamente (y si lo piensa, los marcadores actúan como pestañas).
Simplemente abra una carpeta en Nautilus, vaya al menú Marcador y agregue un marcador.
fuente