Emacs integration - an overview
Bryan O'Sullivan
bos at serpentine.com
Tue Aug 23 16:36:48 CDT 2005
Someone asked on IRC yesterday what my Emacs integration code does.
Here's a short writeup of its capabilities. This may be useful for
people contemplating vim support and whatnot.
If you're already familiar with Emacs, mercurial.el is similar to vc and
other packages that help with SCM tasks.
The code is already fully functional for local editing and SCM tasks.
What this means is that you can do the following:
* See at a glance whether a file is under Mercurial control or
not. This is displayed in the modeline (think "status bar" if
you don't use Emacs).
* For a Mercurial-controlled file, tell whether it has been
modified relative to the tip revision or is unchanged. Also
displayed in the modeline.
* View and modify interesting properties of files and directories:
* add
* diff
* forget
* log
* revert
* status
* Commit your changes. Helps you to enter a commit message, use
the mouse to pick files to include in or exclude from the
commit, and view the diffs of the files you are about to commit.
All of these features currently work with both XEmacs and GNU Emacs on
Linux. I have a patch from Jari Aalto that helps with Windows support,
which I'll cherry-pick bits from soon.
The documentation is already fairly decent. Run `M-x hg-help-overview'
after you load the code to get an idea of how to interact with it.
Remaining features to implement are mostly the distributed features:
* addremove
* annotate
* clone
* incoming
* init
* outgoing
* pull
* push
* update / merge
* view specific revisions of files
More information about the Mercurial
mailing list