Corregit gestor-atajos.sh
This commit is contained in:
@@ -1,20 +1,55 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Ruta del propio script
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
BACKUP="$SCRIPT_DIR/gnome-shortcuts-backup.txt"
|
||||
BACKUP="$SCRIPT_DIR/gnome-shortcuts-backup.dconf"
|
||||
|
||||
SCHEMAS=(
|
||||
"org.gnome.desktop.wm.keybindings"
|
||||
"org.gnome.mutter.keybindings"
|
||||
"org.gnome.mutter.wayland.keybindings"
|
||||
"org.gnome.shell.keybindings"
|
||||
"org.gnome.settings-daemon.plugins.media-keys"
|
||||
"org.gnome.desktop.a11y.keyboard"
|
||||
)
|
||||
|
||||
backup_all() {
|
||||
echo "Guardando todos los atajos en $BACKUP..."
|
||||
> "$BACKUP"
|
||||
for schema in "${SCHEMAS[@]}"; do
|
||||
echo "# $schema" >> "$BACKUP"
|
||||
dconf dump "/$(echo $schema | tr . /)/" >> "$BACKUP"
|
||||
echo "" >> "$BACKUP"
|
||||
done
|
||||
}
|
||||
|
||||
disable_all() {
|
||||
echo "Guardando atajos actuales en $BACKUP..."
|
||||
dconf dump /org/gnome/settings-daemon/plugins/media-keys/ > "$BACKUP"
|
||||
backup_all
|
||||
|
||||
echo "Deshabilitando todos los atajos de GNOME..."
|
||||
dconf reset -f /org/gnome/settings-daemon/plugins/media-keys/
|
||||
echo "Deshabilitando todos los atajos…"
|
||||
|
||||
echo "Deshabilitando la tecla Super para abrir Actividades..."
|
||||
# Reset completo de los esquemas
|
||||
for schema in "${SCHEMAS[@]}"; do
|
||||
echo "→ Reset: $schema"
|
||||
dconf reset -f "/$(echo $schema | tr . /)/"
|
||||
done
|
||||
|
||||
echo "→ Deshabilitando overlay-key (Super)…"
|
||||
gsettings set org.gnome.mutter overlay-key ''
|
||||
|
||||
echo "Todo deshabilitado."
|
||||
echo "→ Forzando a vacío solo las claves que son listas…"
|
||||
for schema in "${SCHEMAS[@]}"; do
|
||||
for key in $(gsettings list-keys "$schema"); do
|
||||
type=$(gsettings range "$schema" "$key" | head -n 1)
|
||||
|
||||
# Solo modificar claves tipo array (listas de atajos)
|
||||
if [[ "$type" == "array" ]]; then
|
||||
echo " $schema.$key → []"
|
||||
gsettings set "$schema" "$key" "[]"
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
echo "Todos los atajos deshabilitados."
|
||||
}
|
||||
|
||||
enable_all() {
|
||||
@@ -23,13 +58,13 @@ enable_all() {
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Restaurando atajos desde $BACKUP..."
|
||||
dconf load /org/gnome/settings-daemon/plugins/media-keys/ < "$BACKUP"
|
||||
echo "Restaurando atajos desde $BACKUP…"
|
||||
dconf load / < "$BACKUP"
|
||||
|
||||
echo "Restaurando la tecla Super..."
|
||||
echo "Restaurando overlay-key…"
|
||||
gsettings reset org.gnome.mutter overlay-key
|
||||
|
||||
echo "Todo restaurado."
|
||||
echo "Atajos restaurados."
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
|
||||
Reference in New Issue
Block a user