From fe2628437693733e60772aed25be323ec4b615ae Mon Sep 17 00:00:00 2001 From: maxfl Date: Sat, 30 Jun 2012 10:35:31 +0800 Subject: [PATCH] Doc is updated btw. funced completion is updated --- doc_src/funced.txt | 7 ++++--- share/functions/funced.fish | 12 +++++------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/doc_src/funced.txt b/doc_src/funced.txt index 1d6daf669..46594de74 100644 --- a/doc_src/funced.txt +++ b/doc_src/funced.txt @@ -1,13 +1,14 @@ \section funced funced - edit a function interactively \subsection funced-synopsis Synopsis - funced [-e editor] NAME + funced [OPTIONS] NAME \subsection funced-description Description -Use the funced command to interactively edit the definition of a -function. If there is no function with the name specified, a skeleton function is inserted, if a function exist, the definion will be shown in your editor or on the command line. +Use the funced command to edit the definition of a +function. If there is no function with the name specified, a skeleton function is inserted, if a function exist, the definition will be shown in your editor or on the command line. By default, funced edits functions using the text editor in your $EDITOR variable, if set; otherwise it uses the built-in editor. - -e command or --editor command Open the function body inside the text editor given by the command (for example, "vi"). The command 'fish' will use the built-in editor. +- -i or --interactive Open function body in built-in editor. diff --git a/share/functions/funced.fish b/share/functions/funced.fish index ad56dab0c..cc9db224a 100644 --- a/share/functions/funced.fish +++ b/share/functions/funced.fish @@ -47,7 +47,11 @@ function funced --description 'Edit function definition' set init function $funcname\n\nend end - if begin; test "$editor" = fish; or set -q interactive[1]; end + if not type -f "$editor" >/dev/null + set interactive 1 + end + + if begin; set -q interactive[1]; or test "$editor" = fish; end set -l IFS if functions -q -- $funcname # Shadow IFS here to avoid array splitting in command substitution @@ -65,12 +69,6 @@ function funced --description 'Edit function definition' return 0 end - if not type -f "$editor" >/dev/null - set_color red - printf (_ "%s: Editor %s is not found\n") funced $editor - set_color normal - end - set -q TMPDIR; or set -l TMPDIR /tmp set -l tmpname (printf "$TMPDIR/fish_funced_%d_%d.fish" %self (random)) while test -f $tmpname