Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <015b01c2266f$2b44f500$3a50258a@maths.qmul.ac.uk> From: "Dr Francis J. Wright" To: "Underwood, Jonathan" , "Matt Swift" Cc: , References: <4ECDBDADC86CD311AEA20004AC4CA503015DDA52 AT nrcssxex1 DOT imsb DOT nrc DOT ca> Subject: Re: [h-e-w] Re: new-style Cygwin symlinks, NTEmacs' dired mode, and ls-lisp.el Date: Mon, 8 Jul 2002 12:04:01 +0100 Organization: Mathematical Sciences, Queen Mary, University of London MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 From: "Underwood, Jonathan" To: "'Dr Francis J. Wright'" ; "Matt Swift" Cc: ; Sent: Thursday, July 04, 2002 11:47 PM Subject: RE: [h-e-w] Re: new-style Cygwin symlinks, NTEmacs' dired mode, and ls-lisp.el > I've not really tried hard using it, but doesn't something like > > (setq ls-lisp-use-insert-directory-program t) > > make emacs use cygwin ls for dired, which by it's nature would understand > cygwin symlinks? > (as long as emacs knows where to find ls) > > No doubt i'm missing lots of subtelties with this though :) > > I have for some time thought that, given the large number of people using > cygwin in conjunction with ntemacs, a package should be put together to > seemlessly integrate the two, incorporating cygwin-mount.el and other stuff. > I've been putting some stuff together, but i'm sure i'm not the most > qualified for the job. Anyway, if anyone is interested in this, i'd be happy > to help. > > jonathan. I recommend using the ls-lisp customization group rather than directly setting variables. However, using Cygwin ls in dired does not fully support Cygwin symlinks and does not support normal Windows shortcuts at all, because Cygwin ls treats Cygwin and non-Cygwin shortcuts differently. Also, the dired S (make symlink) command will not work. The symlink code that I originally added to ls-lisp was primarily intended to parse Windows shortcuts generated by Windows. At that time, Cygwin used a different symlink format that was trivial to parse, so I added support for that also. The symlink code was excluded when my version of ls-lisp was included in Emacs 21, but I left a hook (in the form of a function stub), so that symlink support could be easily added. When I have finished testing support for the new-style Cygwin shortcut files I will release the separate symlink package. It has proved tricky to make the dired S command work properly because of the .lnk extension that Emacs does not expect, but I think I have now fixed it. The .lnk extension, which Cygwin ls hides for Cygwin shortcuts only, is probably why dired cannot follow Cygwin shortcuts even when using Cygwin ls (which I have only just noticed). So dired requires some hacking whichever ls is used. I'll think about adding support for Cygwin ls to my symlink package; the .lnk problems are very similar to those with ls-lisp. It would probably be better to do all this at the C level via the Microsoft shortcut APIs, and I thought that such support was going to be added to NTEmacs, but it doesn't seem to have happened. So, for now, I'll try to provide support in Lisp. Francis -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/