diff --git a/misc/quitcd/quitcd.nu b/misc/quitcd/quitcd.nu index b04b09ec..77bc1fb7 100644 --- a/misc/quitcd/quitcd.nu +++ b/misc/quitcd/quitcd.nu @@ -7,8 +7,8 @@ def-env n [...x] { ^nnn ($x | str join) let newpath = ( if ($env.NNN_TMPFILE | path exists) { - # FIXME: fails if path contains single-quote - let newpath = (open $env.NNN_TMPFILE | parse "cd '{nnnpath}'").0.nnnpath + let rawpath = (open $env.NNN_TMPFILE | parse --regex 'cd (?P.+)').0.dir + let newpath = ($rawpath | $"echo ($in)" | /bin/bash -s) ^rm -f $env.NNN_TMPFILE echo $newpath } else {