🧠 Abrir LibreOffice en un nuevo workspace con Hyprland.
Si usas Hyprland como compositor en GNU/Linux, sabrás lo útil que es mantener tus aplicaciones organizadas por workspaces (espacios de trebajo). En esta entrada te muestro cómo abrir documentos de LibreOffice automáticamente en un workspace nuevo, usando un script personalizado y un archivo .desktop
📁 Paso 1: El script inteligente.
Guarda el siguiente script como ~/scripts/abrir_libreoffice.sh y dale permisos de ejecución (chmod +x ~/scripts/abrir_libreoffice.sh). Este script detecta el último workspace activo, lanza LibreOffice y mueve su ventana al siguiente workspace disponible.
#!/bin/bash
# Script para abrir LibreOffice en un nuevo workspace
# Obtener el último workspace usado
last_ws=$(hyprctl workspaces | awk '/workspace ID/ {print $3}' | sort -n | tail -1)
# Calcular nuevo workspace (siguiente al último existente)
if [[ -z "$last_ws" ]]; then
new_ws=1
else
new_ws=$((last_ws + 1))
fi
# Registrar actividad
echo "$(date) - Abriendo $1 en workspace $new_ws" >> /tmp/hypr-libreoffice.log
# Abrir LibreOffice con el archivo
libreoffice --nologo --norestore "$@" &
# Esperar a que la ventana aparezca
for i in {1..10}; do
window_pid=$(pgrep -n soffice.bin)
if [[ -n "$window_pid" ]]; then
break
fi
sleep 0.2
done
# Mover y enfocar la ventana
hyprctl dispatch movetoworkspacesilent $new_ws,pid:$window_pid
sleep 0.2
hyprctl dispatch focuswindow pid:$window_pid
🖥️ Paso 2: El archivo .desktop
Para que puedas lanzar LibreOffice desde el menú de aplicaciones con este comportamiento, crea el siguiente archivo en ~/.local/share/applications/libreoffice-workspace.desktop:
[Desktop Entry]
Name=LibreOffice (Nuevo Workspace)
Comment=Abre documentos en un nuevo workspace de Hyprland
Exec=~/scripts/abrir_libreoffice.sh %U
Icon=libreoffice-main
Terminal=false
Type=Application
MimeType=application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.spreadsheet;application/vnd.oasis.opendocument.presentation;
Categories=Office;
StartupNotify=true
🎯 Resultado.
Cada vez que abras un documento con esta entrada, LibreOffice se lanzará en un workspace nuevo, manteniendo tu entorno limpio y enfocado. Ideal para quienes trabajan con múltiples documentos o quieren separar tareas por espacio.
🔗 Asociar documentos al script personalizado en tu gestor de archivos.
Una vez que tienes el archivo .desktop creado, el siguiente paso es decirle a tu gestor de archivos que lo use como aplicación predeterminada para abrir documentos de LibreOffice.
Aquí te explico cómo hacerlo en Nautilus, PCManFM y Thunar:
🐚 Nautilus (GNOME).
1. Haz clic derecho sobre un archivo .odt, .ods, o .odp.
2. Selecciona Propiedades → pestaña Abrir con.
3. Si ves “LibreOffice (Nuevo Workspace)” en la lista, selecciónalo y pulsa Establecer como predeterminado.
4. Si no aparece, pulsa Mostrar otras aplicaciones → Añadir aplicación personalizada.
5. Navega a ~/.local/share/applications/ y selecciona libreoffice-workspace.desktop.
🧮 PCManFM (LXDE/LXQt).
1. Haz clic derecho sobre el archivo → Propiedades.
2. Ve a la pestaña Abrir con.
3. Pulsa Añadir y escribe el nombre exacto del archivo .desktop: libreoffice-workspace.desktop
4. Asegúrate de marcarlo como predeterminado.
🗂️ Thunar (XFCE).
1. Haz clic derecho sobre el archivo → Propiedades.
2. Ve a la pestaña Abrir con.
3. Pulsa Añadir → Usar un comando personalizado.
4. Escribe: gtk-launch libreoffice-workspace
5. Pulsa Añadir y luego Establecer como predeterminado.
🧪 Verifica que funciona.
Una vez hecho esto, al abrir cualquier documento compatible, tu script se ejecutará y LibreOffice se abrirá en un nuevo workspace automáticamente. Puedes verificarlo mirando el log en /tmp/hypr-libreoffice.log o simplemente observando cómo Hyprland organiza la ventana.
¿Qué te parece? Si lo pruebas, dinos si te funciona en los comentarios.
No hay comentarios:
Publicar un comentario