Update 2015: It is a long time since I used Emacs in anger (now days I’m generally in Sublime Text). This is left as a hopefully useful historical curio. If it fails to work I doubt I’ll be able to help.

Simple Time

This is a replacement for the standard display time function in XEmacs. It is main difference is that it is a lot simpler. It uses the default modeline font rather than glyphs: this is nice if you use a smaller than normal modeline size. It also does not include a load meter or mail indicator, both of which I find take up space unnecessarily. Download

Update: Since writing this I’ve switched to using GNU Emacs 21 whose modeline clock has this form anyway, making this redundant.

Date conversion

This gives some simple functions to convert ISO dates (ie. ones of the form 2005-11-24) to English text dates (e.g. 24th November 2005).

Prefix and Postfix functions

A library that provides three functions to add prefixes and postfixes to each line in a region.

Basic Visual Studio Integration

You can set Emacs up to run as a Studio external tool.

Visual Studio External Tools dialog

You can pass the line number and column to Emacs with a bit of shell and Lisp scripting. Put the following script somewhere as start-emacs.bat.

 @rem start-emacs filename line column
 @c:\emacs-21.3\bin\gnuclient.exe -sfq -e (local-gnuserv-open \"%1\" %2 %3)

Put the following in your emacs configuration

(defun local-gnuserv-open (filename lineno colno)
 (let ((buffer (find-file-noselect (file-truename filename)))
       (pop-up-frames nil)
       (display-buffer-reuse-frames t))
   (set-buffer buffer)
   (select-window (display-buffer buffer nil 0))
   (goto-line lineno)
   ;; Add 1 to the column as Studio is 1 based indexing and Emacs is
   ;; 0 based.
   (move-to-column (+ 1 colno))))

And then setup your external tools menu in Studio so that the emacs option invokes Mapslash with

-e d:\bin\start-emacs.bat "\$(ItemPath)" \$(CurLine) \$(CurCol)

as the arguments (putting the correct path to your start-emacs.bat of course).