[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
classification indicator for character-special files
From: |
Eric Blake |
Subject: |
classification indicator for character-special files |
Date: |
Thu, 19 May 2005 21:36:13 -0600 |
User-agent: |
Mozilla Thunderbird 1.0.2 (Windows/20050317) |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Configuration Information:
Machine: i686
OS: cygwin
Compiler: gcc
Compilation CFLAGS: -DPROGRAM='bash.exe' -DCONF_HOSTTYPE='i686'
- -DCONF_OSTYPE='cygwin' -DCONF_MACHTYPE='i686-pc-cygwin' -DCONF_VENDOR='pc'
- -DLOCALEDIR='/usr/local/share/locale' -DPACKAGE='bash' -DSHELL
- -DHAVE_CONFIG_H -DRECYCLES_PIDS -I. -I. -I./include -I./lib -g -O2
uname output: CYGWIN_NT-5.1 LOUNGE 1.5.16(0.128/4/2) 2005-04-25 20:26 i686
unknown unknown Cygwin
Machine Type: i686-pc-cygwin
Bash Version: 3.0
Patch Level: 16
Release Status: release
Description:
POSIX allows `ls -F' to use other characters for file types beyond
directories, executables, fifos, and symlinks. I recently proposed
changing coreutils by copying bash's use of '%' and '#' for character- and
block-special files when .inputrc contains 'set visible-stats on'. But
Paul Eggert pointed out that FreeBSD already uses '%' to indicate
whiteouts on union mounts. Further discussion proposed using '^' for
character-special files (since caret serves as a good mnemonic for
character, and looks somewhat like a rotated 'c'). Read the thread at:
http://lists.gnu.org/archive/html/bug-coreutils/2005-05/msg00006.html
Could you please change bash's indicator for character-special files to be
unambiguous with whiteouts, and so that coreutils and bash can be
consistent even on systems with union mounts and whiteout files? While
you are at it, notice that the spacing of completion output is not as
uniform as the spacing from `ls -F'.
Repeat-By:
$ cat ~/.inputrc
set visible-stats on
$ touch file
$ touch exe
$ chmod +x exe
$ mknod -m 666 null c 1 3
$ mknod -m 666 scd0 b 11 0
$ mkfifo fifo
$ mkdir dir
$ ln -s dir link
$ ls -F [TAB]
dir/ exe* fifo| file link@ null% scd0#
$ ls -F [RETURN]
dir/ exe* fifo| file link@ null scd0
Note that the yet unreleased coreutils 5.3.1 will only include the patch
to use '^' and '#' if it will match a future version of bash.
Fix:
- --- lib/readline/complete.c~ 2004-07-01 11:57:58.000000000 -0600
+++ lib/readline/complete.c 2005-05-19 21:11:13.729625000 -0600
@@ -492,7 +492,7 @@
character = '/';
#if defined (S_ISCHR)
else if (S_ISCHR (finfo.st_mode))
- - character = '%';
+ character = '^';
#endif /* S_ISCHR */
#if defined (S_ISBLK)
else if (S_ISBLK (finfo.st_mode))
- --
Life is short - so eat dessert first!
Eric Blake ebb9@byu.net
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFCjVst84KuGfSFAYARAmG+AJ92NpTL067dPCcraJZa0/G9CdLhYQCgw4CA
lY0bkn1m0o3f4h34jk0tjgQ=
=LO0J
-----END PGP SIGNATURE-----
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- classification indicator for character-special files,
Eric Blake <=