feat: allow inline comments in fishfile

pull/531/head
Jorge Bucaran 6 years ago
parent 975aa989c9
commit 3a13ba9d68
No known key found for this signature in database
GPG Key ID: E54BA3C0E646DB30

@ -242,13 +242,13 @@ end
function _fisher_parse -a mode cmd function _fisher_parse -a mode cmd
set -e argv[1..2] set -e argv[1..2]
command awk -v FS="[[:space:]]*#" -v MODE="$mode" -v CMD="$cmd" -v ARGSTR="$argv" ' command awk -v FS="[[:space:]]*#+" -v MODE="$mode" -v CMD="$cmd" -v ARGSTR="$argv" '
BEGIN { BEGIN {
for (n = split(ARGSTR, a, " "); i++ < n;) pkgs[getkey(a[i])] = a[i] for (n = split(ARGSTR, a, " "); i++ < n;) pkgs[getkey(a[i])] = a[i]
} }
{ k = getkey($1) } { k = getkey($1) }
MODE == "-R" && !(k in pkgs) && $0 = $1 MODE == "-R" && !(k in pkgs) && $0 = $1
MODE == "-W" && (/^#/ || !NF || (k in pkgs && $0 = pkgs[k]) || CMD != "rm") MODE == "-W" && (/^#/ || k in pkgs || CMD != "rm") { print pkgs[k] (sub($1, "") ? $0 : "") }
MODE == "-W" || CMD == "rm" { delete pkgs[k] } MODE == "-W" || CMD == "rm" { delete pkgs[k] }
END { END {
for (k in pkgs) { for (k in pkgs) {

Loading…
Cancel
Save