未找到自定义键绑定

未找到自定义键绑定

当我尝试使用 gsettings 命令列出可用的自定义键绑定时

gsettings get org.gnome.settings-daemon.plugins.media-keys custom-keybindings

我收到错误消息,

No such key 'custom-keybindings'

我以图形方式检查了我的自定义键盘快捷键,结果它是空的。所以我认为这是正常的。所以我尝试使用

gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/']"

再次出现相同的错误。我在 virtualbox 中使用 Ubuntu 12.04。它不是附带密钥吗custom-keybindings?如何custom-keybinding使用 gsettings 添加新密钥?

答案1

Jacob Vlijm 的 python 脚本非常有用。如果有人觉得有用,我会分享一个 shell 脚本来执行此操作。

#!/bin/sh
ls -d ~/.gconf/desktop/gnome/keybindings/*/
    if [[ `echo $?` == 2 ]]; then
        shortCutNumber=0
        else
        shortCutNumber=$((`ls -d ~/.gconf/desktop/gnome/keybindings/*/ | tail -c 3 | head -c 1`+1))
    fi
    echo -e '<?xml version="1.0"?>' > %gconf.xml 
    echo -e '\t<gconf>' | tee -a %gconf.xml 
    echo -e '\t<entry name="action" mtime="`date +%s`" type="string">' | tee -a %gconf.xml 
    echo -e '\t\t<stringvalue>gnome-terminal -e '`pwd`/LanChat.sh'</stringvalue>' | tee -a %gconf.xml 
    echo -e '\t</entry>' | tee -a %gconf.xml 
    echo -e '\t<entry name="name" mtime="`date +%s`" type="string">' | tee -a %gconf.xml 
    echo -e '\t\t<stringvalue>QryptoChat</stringvalue>' | tee -a %gconf.xml 
    echo -e '\t</entry>' | tee -a %gconf.xml
    echo -e '\t<entry name="binding" mtime="`date +%s`" type="string">' | tee -a %gconf.xml 
    echo -e '\t\t<stringvalue>&lt;Alt&gt;q</stringvalue>' | tee -a %gconf.xml 
    echo -e '\t</entry>' | tee -a %gconf.xml 
    echo -e '</gconf>' | tee -a %gconf.xml 
    mkdir ~/.gconf/desktop/gnome/keybindings/custom$shortCutNumber
    mv %gconf.xml ~/.gconf/desktop/gnome/keybindings/custom$shortCutNumber/

该脚本首先检查是否已存在任何自定义快捷方式。然后%gconf.xml使用必要的设置在新的自定义文件夹中创建该文件。

相关内容