mirror of
https://github.com/fish-shell/fish-shell
synced 2024-12-27 05:13:10 +00:00
Fix other usages of \n in sed replacements.
This commit is contained in:
parent
1fa0c4d4d3
commit
01780f19b1
3 changed files with 15 additions and 3 deletions
|
@ -2,7 +2,11 @@ function __fish_complete_command --description 'Complete using all available com
|
||||||
set -l ctoken (commandline -ct)
|
set -l ctoken (commandline -ct)
|
||||||
switch $ctoken
|
switch $ctoken
|
||||||
case '*=*'
|
case '*=*'
|
||||||
set ctoken (echo $ctoken | sed 's/=/\n/')
|
# Some seds (e.g. on Mac OS X), don't support \n in the RHS
|
||||||
|
# Use a literal newline instead
|
||||||
|
# http://sed.sourceforge.net/sedfaq4.html#s4.1
|
||||||
|
set ctoken (echo $ctoken | sed 's/=/\\
|
||||||
|
/')
|
||||||
printf '%s\n' $ctoken[1]=(complete -C$ctoken[2])
|
printf '%s\n' $ctoken[1]=(complete -C$ctoken[2])
|
||||||
case '*'
|
case '*'
|
||||||
complete -C$ctoken
|
complete -C$ctoken
|
||||||
|
|
|
@ -5,7 +5,11 @@ function __fish_complete_lpr_option --description 'Complete lpr option'
|
||||||
set -l IFS =
|
set -l IFS =
|
||||||
echo $optstr | read -l opt val
|
echo $optstr | read -l opt val
|
||||||
set -l descr
|
set -l descr
|
||||||
for l in (lpoptions -l ^ /dev/null | grep $opt | sed 's+\(.*\)/\(.*\):\s*\(.*\)$+\2 \3+; s/ /\n/g;')
|
# Some seds (e.g. on Mac OS X), don't support \n in the RHS
|
||||||
|
# Use a literal newline instead
|
||||||
|
# http://sed.sourceforge.net/sedfaq4.html#s4.1
|
||||||
|
for l in (lpoptions -l ^ /dev/null | grep $opt | sed 's+\(.*\)/\(.*\):\s*\(.*\)$+\2 \3+; s/ /\\
|
||||||
|
/g;')
|
||||||
if not set -q descr[1]
|
if not set -q descr[1]
|
||||||
set descr $l
|
set descr $l
|
||||||
continue
|
continue
|
||||||
|
|
|
@ -1,4 +1,8 @@
|
||||||
function __fish_print_make_targets
|
function __fish_print_make_targets
|
||||||
set files Makefile makefile GNUmakefile
|
set files Makefile makefile GNUmakefile
|
||||||
sgrep -h -E '^[^#%=$[:space:]][^#%=$]*:([^=]|$)' $files | cut -d ":" -f 1 | sed -e 's/^ *//;s/ *$//;s/ */\n/g' ^/dev/null
|
# Some seds (e.g. on Mac OS X), don't support \n in the RHS
|
||||||
|
# Use a literal newline instead
|
||||||
|
# http://sed.sourceforge.net/sedfaq4.html#s4.1
|
||||||
|
sgrep -h -E '^[^#%=$[:space:]][^#%=$]*:([^=]|$)' $files | cut -d ":" -f 1 | sed -e 's/^ *//;s/ *$//;s/ */\\
|
||||||
|
/g' ^/dev/null
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue