[ANN][SHR][Debian] New Emacs interface for FSO

Paul Fertser fercerpav at gmail.com
Fri May 14 23:27:25 CEST 2010


Hi,

http://wiki.github.com/paulfertser/fso-el/
                M-x fso

I'm pleased to announce here my little pet project, something that is
my only phone UI for more than two weeks already and is almost what i
dreamed of when i was ordering a FreeRunner: it's a
console-compatible, flexible and easily extensible, keyboard (and
mouse) friendly Emacs module that enables me to use my cellphone both
locally and remotely via ssh with ease.

For those who haven't tried to use Emacs on FR yet it might seem like
a strange idea: who could have guessed a virtual keyboard is good
enough for emacsing? Well, i've tried that and in fact it works
decently. I used Emacs on device for IRCing and IMing, for occassional
shell commands, for reading manuals and even writing some code. It
works and it rocks, at least i couldn't find anything that felt more
comfortable ;) Furthermore, emacs allows you to have a consistent
experience: you come home, plug your FR to USB, ssh in, do
``emacsclient -c'' (which is another great feature of emacs 23:
multitty) and here you go, having exactly the same environment but
with a larger screen and a real keyboard.

Emacs as a programming environment is also nice and fun, no wonder
there're so many extension modules for it written over the
years. Though elisp might feel constrained and ancient to a modern
programmer, it's still quite enjoyable.

So, enough of Emacs praising, now back to the subject. :) It's already
useable, among the basic functionality only contacts editing is
missing. Please do not be harsh about the code, as this module is my
first elisp (and first FP (though Haskell adpets will disagree elisp
is FP ;) ) experience as well).

Special thanks go to John Sullivan who has written the first emacs
interface for FSO, Michael 'Mickey' Lauer, the main FSO framework
architect and Joerg Reisenweber, the hardware wizard, without his
buzzfix i wouldn't be able to use the device at all.

Of course, i'm open for suggestions, bug-reports, feature-requests,
patches etc., feel free to contact me via e-mail or irc at
#openmoko-cdevel. 


Here goes the copy of the project's main page for your convenience:

This project is an attempt to create an Emacs interface for the most
typical GSM telephony-related usecases: calling, text messages,
contacts management and everything that makes smartphone usage more
productive.

The objectives:

  • make the UI usable directly on the device with touchscreen
  • make the UI usable via ssh
  • integrate well with other Emacs applications (please drop me a
    line with explanations what exactly do you want from 
    BBDB <-> opimd integration, i also need feedback about Linphone
    integration: do you need it, whether the linphone mode
    works for you at all and what modifications are required)
  • provide user with reasonable customisation options

Requirements:

  • FreeSmartphone.org middleware running on host (currently tested
    only with fsogsmd, framework version cfc0a5c3 Apr 21,
    cornucopia version c742460d Apr 21, please take into account i’m
    following FSO HEAD closely so you can expect to find a
    compatible version in SHR unstable, less so in SHR testing or
    Debian)
  • Emacs 23 (with dbus support) (available both from SHR feeds and
    Debian repositories)

Download options:

  • git clone git://github.com/paulfertser/fso-el.git
    or
  • http://github.com/paulfertser/fso-el/raw/HEAD/fso.el

Hints:

  • configuration options can be edited with M-x customize-mode <RET>
  • xterm-mouse-mode enables mouse clicks for the text-mode frames
  • you can open another frame (either text-mode or X11) with
    emacsclient -c thanks to Emacs23’s multitty support
  • you can have FSO running on device and fso.el running in host’s
    Emacs with dbus-daemon-proxy[1] (thanks ZaPPaS for
    testing). Unfortunately, it’s not currently possible for one emacs
    process to use both local and remote dbus message
    buses due to bindings’ limitation.

General Emacs on smartphone hints:

  • Emacs takes very long to start if you have no network connectivity
    and non-empty /etc/resolv.conf
  • ido-mode saves quite some typing when switching buffers and
    opening files
  • in customisation options for erc disable the fill module, it’ll
    save you some precious screen estate, timestamps should
    either be disabled or Erc Insert Timestamp Function set to Left
    (alternatively, activate Hide Timestamps and Echo
    Timestamps and you’ll be able to see the timestamp of any message
    by moving point to it)
  • BitlBee is a nice IRC<->IM (Jabber/XMPP and others supported by
    libpurple) free gateway software and service, you might
    like to use it for your IM’ing needs.

Please send your feedback to:
Smartphones-userland mailing list with Cc to “Paul Fertser <fercerpav at gmail.com>”

Enjoy and happy hacking! :)

[1] http://blog.shr-project.org/2010/05/howto-develop-and-debug-the-shr-phone-stack-on-your-desktop.html
-- 
Be free, use free (http://www.gnu.org/philosophy/free-sw.html) software!
mailto:fercerpav at gmail.com



More information about the community mailing list