runtime(less.sh): Fix reading from stdin.

Problem:  less.sh can't read from stdin; it will try to read from a file named "-" instead (after 515da6ecdb).
Solution: Do not prepend "-" with "--" in the arguments list for vim.

The following were checked manually and worked as expected:
    echo Test | less.sh
    echo Test | less.sh -
    less.sh some_file
    less.sh --cmd some_file  # vim will try to load "--cmd" and "some_file".
    less.sh                  # script outputs "No input."
    # All of the above repeated with the output piped to 'cat'.

closes: #19462

Signed-off-by: Shane Harper <shane@shaneharper.net>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Shane Harper
2026-02-18 22:28:21 +00:00
committed by Christian Brabandt
parent 47eb32fc92
commit ac4ccb8e53
+2 -1
View File
@@ -9,7 +9,8 @@ fi
if [ -t 1 ]; then
[ $# -eq 0 ] && set -- "-"
exec vim --cmd 'let no_plugin_maps=1' -c 'runtime! macros/less.vim' --not-a-term -- "$@"
[ "$*" != "-" ] && set -- -- "$@"
exec vim --cmd 'let no_plugin_maps=1' -c 'runtime! macros/less.vim' --not-a-term "$@"
else # Output is not a terminal.
exec cat -- "$@"
fi