rich@wiley.UUCP (11/12/87)
Monkey.el does not correctly mark symbolic links with '@' under Sun UNIX version 4.3. Monkey uses the file-symlink-p standard function, but gives it a relative pathname instead of a full path name. Unfortunately, file-symlink-p calls readlink(2), which expects a full path name. This is probably a gunemacs documentation bug, since the documentation string for file-symlink-p does not make this distinction. Fix: stuff the path name onto the front of the file name before calling file-symlink-p. My fix also checks for symbolic links before directories -- this is a personal preference, making a symbolic link to a directory show up as '@' instead of '/'. Context diff follows: ---------------------------------------------------------------------- *** monkey.el Thu Nov 12 12:53:35 1987 --- monkey.el.fixed Thu Nov 12 12:47:20 1987 *************** *** 450,457 **** (insert " " (cond (monkey-be-fast ??) ((file-directory-p name) ?/) - ((file-symlink-p name) ?@) ((file-readable-p name) " ") (t ??))) (insert-char 32 indent-spaces) --- 450,457 ---- (insert " " (cond (monkey-be-fast ??) + ((file-symlink-p (concat default-directory name)) ?@) ((file-directory-p name) ?/) ((file-readable-p name) " ") (t ??))) (insert-char 32 indent-spaces) -- ... Rich Messenger {cit-vax,trwrb}!wiley!rich wiley!rich@csvax.caltech.edu