Emacs integration - an overview

Dan Christensen jdc at uwo.ca
Wed Aug 31 09:36:59 CDT 2005


Dan Christensen <jdc at uwo.ca> writes:

> I'm trying to get the emacs mercurial support working for me in 
> Gnu Emacs.  I'm using hg tip from a few minutes ago (version
> 31dcaf9123ba), and I get either 
>
>   abort: /home/jdc/math/me/CayleyDickson/ not under repository root
>
> if I do a global command, or
>
>   vc-ensure-vc-buffer: File /home/jdc/math/me/CayleyDickson/python/todo is not under version control
>
> if I do a local command.  The repository directory is in
> /home/jdc/math/me/CayleyDickson/.hg and the file .../python/todo
> *is* under hg's control...

After updating to Matt's tip, the global commands now work.
And I think I know what the problem is with local commands:

I have a symlink from ~/CayleyDickson to ~/math/me/CayleyDickson.
If I do:

  cd ~/math/me/CayleyDickson
  emacs python/todo

then local commands work.  But if I do:

  cd ~/CayleyDickson
  emacs python/todo

then they don't.  This is because:

  cd /home/jdc/CayleyDickson
  hg status python/todo
  hg status /home/jdc/CayleyDickson/python/todo
  abort: /home/jdc/CayleyDickson/python/todo not under root
  hg status /home/jdc/math/me/CayleyDickson/python/todo

  cd /home/jdc/math/me/CayleyDickson/
  hg status python/todo
  hg status /home/jdc/CayleyDickson/python/todo
  abort: /home/jdc/CayleyDickson/python/todo not under root
  hg status /home/jdc/math/me/CayleyDickson/python/todo

The status command seems to always fail when the file is referenced
via the symlink, whether or not the current directory is through the
symlink.  Maybe hg should uniformly decide whether to expand symlinks
for all file names (at least, for symlinks above the repo root)?

Dan


More information about the Mercurial mailing list