• Posts
  • RSS
  • ◂◂RSS
  • Contact

  • Emacs Keybindings in Chrome Without Gnome

    November 4th, 2014
    tech, ubuntu  [html]
    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

    Recent posts on blogs I like:

    Collections: The Queen’s Latin or Who Were the Romans, Part V: Saving And Losing an Empire

    This is the fifth and final part (I, II, III, IV) of our series asking the question ‘Who were the Romans?’ How did they understand themselves as a people and the idea of ‘Roman’ as an identity? Was this a homogeneous, ethnically defined group, as some ver…

    via A Collection of Unmitigated Pedantry July 30, 2021

    Modernizing Rail 2021 Announcement

    We are happy to announce that on Sunday the 29th of August we will hold this year’s Modernizing Rail conference, on the heels of the success last year. Please register using this form. And please give details on what you’d like to see, and if you’re willi…

    via Pedestrian Observations July 29, 2021

    Songs about terrible relationships

    [Spoilers for several old musicals.] TV Tropes lists dozens of examples of the “I want” song (where the hero of a musical sings about their dream of escaping their small surroundings). After watching a bunch of musicals on maternity leave, I’m wondering h…

    via The whole sky July 17, 2021

    more     (via openring)


  • Posts
  • RSS
  • ◂◂RSS
  • Contact