Emacs Keybindings in Chrome Without Gnome
If you want emacs keybindings in desktop apps on Linux people will tell you to run:
$ gsettings set \
org.gnome.desktop.interface \
gtk-key-theme "Emacs"
If you're running a full desktop environment that's enough, but if you're running something lighter weight like Fluxbox or Awesome you'll also need to run:
$ gnome-settings-daemon
Unlike the gsettings change, this needs to run every time you log in, so put it in your .xsession or your indow-manager-specific startup file.
(I just upgraded my linux desktop to Ubuntu 14 LTS (Trusty) and this broke Unity, the window manager I'd been using. I could probably have fixed this by blowing away the configuration and replacing it, but I never really liked it anyway so I decided to go with fluxbox instead.)
For reference, here's my .xsession contents:
# Replace the 'caps-lock' key with a second 'control' key.
/usr/bin/setxkbmap -option 'ctrl:nocaps'
# We want emacs keybindings, especially in Chrome. Things like Ctrl+d
# to mean "forward delete" instead of "create a bookmark". Fixing
# this has two parts: we need to set a configuration option, and we
# need to run a settings daemon to make it available.
#
# This only needs to be run once, but no harm in running it every
# login:
gsettings set org.gnome.desktop.interface gtk-key-theme "Emacs"
# This needs to run every time:
gnome-settings-daemon &
# Make the background black.
fbsetroot -solid black
# Start and place terminals. 81 columns because code here is limited
# to 80 columns and emacs reserves a column for the wrapping
# indicator. 73 columns because that's what fits in the remaining
# space.
uxterm -geometry 81x90+1428+0 &
uxterm -geometry 81x90+1920+0 &
uxterm -geometry 81x90+2412+0 &
uxterm -geometry 81x90+2904+0 &
uxterm -geometry 73x22+3396+0 &
uxterm -geometry 73x22+3396+310 &
uxterm -geometry 73x22+3396+620 &
uxterm -geometry 73x19+3396+930 &
# Chrome.
google-chrome &
# Start the window manager last, and don't run it in the background.
fluxbox
Comment via: google plus