numfmt options like --suffix no longer have an arbitrary 127-byte limit.
[bug introduced with numfmt in coreutils-8.21]
+** Changes in behavior
+
+ ls --dired now implies long format output without hyperlinks enabled,
+ and will take precedence over previously specified formats or hyperlink mode.
+
* Noteworthy changes in release 9.4 (2023-08-29) [stable]
(@option{-N}) option on the command line, or else be
prepared to parse the escaped names.
-The @option{--dired} (@option{-D}) option has well-defined behavior
-only when long format is in effect and hyperlinks are disabled (e.g.,
-@option{--hyperlink=none}).
+The @option{--dired} (@option{-D}) option implies long format output
+with hyperlinks disabled, and takes precedence over previously specified
+output formats or hyperlink mode.
@item --full-time
@opindex --full-time
break;
case 'D':
+ format_opt = long_format;
+ print_hyperlink = false;
dired = true;
break;
dirname_quoting_options = clone_quoting_options (nullptr);
set_char_quoting (dirname_quoting_options, ':', 1);
- /* --dired is meaningful only with --format=long (-l) and sans --hyperlink.
- Otherwise, ignore it. FIXME: warn about this?
- Alternatively, make --dired imply --format=long? */
+ /* --dired implies --format=long (-l) and sans --hyperlink.
+ So ignore it if those overridden. */
dired &= (format == long_format) & !print_hyperlink;
if (eolbyte < dired)
. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
print_ver_ ls
+
# Check with constant positions
mkdir dir || framework_failure_
-LC_MESSAGES=C ls -lR --dired dir > out || fail=1
cat <<EOF > exp
dir:
total 0
//SUBDIRED// 2 5
//DIRED-OPTIONS// --quoting-style=literal
EOF
-
-compare exp out || fail=1
+for opt in '-l' '' '--hyperlink' '-x'; do
+ LC_MESSAGES=C ls $opt -R --dired dir > out || fail=1
+ compare exp out || fail=1
+done
# Check with varying positions (due to usernames etc.)