diff --git a/docs/fish-config.1 b/docs/fish-config.1 index bbb5b6b..8a4a50d 100644 --- a/docs/fish-config.1 +++ b/docs/fish-config.1 @@ -208,7 +208,8 @@ WAKATIME_HOME $XDG_CONFIG_HOME/wakatime .nf \f[C] EDITOR nvim (falls back to vi if nvim is absent) -VISUAL same as EDITOR +VISUAL unset by default; set a GUI editor via local.fish (the edit + function falls back to a GUI chain when VISUAL is empty) SUDO_EDITOR same as EDITOR PAGER ov (falls back to less) \f[R] @@ -901,10 +902,35 @@ clonet https://github.com/user/repo.git .IP .nf \f[C] -Synopsis: edit [args...] -Opens files in nvim. Falls back to $EDITOR, nano, vi. +Synopsis: edit [-V|-t] [-e EDITOR] [-c] [-x TEXT] [-n] [-v|-s] [FILE...] + +Opens files in a text editor, choosing a terminal or GUI editor and +resolving a rich chain of fallbacks. With no --visual/--terminal flag the +mode is auto-detected: interactive terminals use the terminal editor +($EDITOR), while detached invocations (e.g. desktop shortcuts) use the GUI +editor ($VISUAL). Clipboard contents and literal strings can be opened as +throwaway temp files. Editor output is suppressed unless --verbose. + +GUI fallback chain: zed → antigravity-ide → code → kate → kwrite → + gnome-text-editor → gedit +Terminal fallback chain: nvim → vim → micro → nano → vi + +Options: + -V, --visual Force the GUI editor ($VISUAL or fallbacks) + -t, --terminal Force the terminal editor ($EDITOR or fallbacks) + -e, --editor=X Use a specific editor binary X + -c, --clipboard Open the clipboard contents (as a temp file) + -x, --text=STR Open STR as the contents of a new temp file + -n, --new Force a new window/instance (best-effort) + -v, --verbose Print the launch command and editor output + -s, --silent Suppress all output, including the editor\[aq]s + -h, --help Show this help message edit \[ti]/.config/fish/config.fish +edit --visual notes.txt +edit --terminal --new todo.md +edit --editor=code --clipboard +edit --text=\[dq]hello world\[dq] \f[R] .fi .SS fc @@ -2055,6 +2081,7 @@ grep/fgrep/egrep forced --color=auto system grep variants dir / vdir forced --color=auto system dir / vdir help config intercepts \[dq]help config\[dq] → config-help fish builtin help claude auto-links AGENTS.md as CLAUDE.md before launch command claude +edit multi-editor launcher (GUI/term + fallbacks) $EDITOR/nvim/nano/vi \f[R] .fi .PP diff --git a/docs/html/11-7-customization.html b/docs/html/11-7-customization.html index 4c6ba38..b50b39e 100644 --- a/docs/html/11-7-customization.html +++ b/docs/html/11-7-customization.html @@ -621,7 +621,8 @@ wget forced --continue (resume downloads) system wget grep/fgrep/egrep forced --color=auto system grep variants dir / vdir forced --color=auto system dir / vdir help config intercepts "help config" → config-help fish builtin help -claude auto-links AGENTS.md as CLAUDE.md before launch command claude +claude auto-links AGENTS.md as CLAUDE.md before launch command claude +edit multi-editor launcher (GUI/term + fallbacks) $EDITOR/nvim/nano/vi
When C1 is disabled, rm uses bare
command rm with no wrapper — files are permanently deleted,
not trashed. There is no intermediate safety net.
EDITOR nvim (falls back to vi if nvim is absent)
-VISUAL same as EDITOR
+VISUAL unset by default; set a GUI editor via local.fish (the edit
+ function falls back to a GUI chain when VISUAL is empty)
SUDO_EDITOR same as EDITOR
PAGER ov (falls back to less)
Synopsis: edit [args...]
-Opens files in nvim. Falls back to $EDITOR, nano, vi.
+Synopsis: edit [-V|-t] [-e EDITOR] [-c] [-x TEXT] [-n] [-v|-s] [FILE...]
-edit ~/.config/fish/config.fish
+Opens files in a text editor, choosing a terminal or GUI editor and
+resolving a rich chain of fallbacks. With no --visual/--terminal flag the
+mode is auto-detected: interactive terminals use the terminal editor
+($EDITOR), while detached invocations (e.g. desktop shortcuts) use the GUI
+editor ($VISUAL). Clipboard contents and literal strings can be opened as
+throwaway temp files. Editor output is suppressed unless --verbose.
+
+GUI fallback chain: zed → antigravity-ide → code → kate → kwrite →
+ gnome-text-editor → gedit
+Terminal fallback chain: nvim → vim → micro → nano → vi
+
+Options:
+ -V, --visual Force the GUI editor ($VISUAL or fallbacks)
+ -t, --terminal Force the terminal editor ($EDITOR or fallbacks)
+ -e, --editor=X Use a specific editor binary X
+ -c, --clipboard Open the clipboard contents (as a temp file)
+ -x, --text=STR Open STR as the contents of a new temp file
+ -n, --new Force a new window/instance (best-effort)
+ -v, --verbose Print the launch command and editor output
+ -s, --silent Suppress all output, including the editor's
+ -h, --help Show this help message
+
+edit ~/.config/fish/config.fish
+edit --visual notes.txt
+edit --terminal --new todo.md
+edit --editor=code --clipboard
+edit --text="hello world"
Synopsis: fc [command_prefix]
Edit the last shell command (or one matching a prefix) in $EDITOR,
diff --git a/docs/wiki/1-configuration-variables.md b/docs/wiki/1-configuration-variables.md
index 9377c63..f388e56 100644
--- a/docs/wiki/1-configuration-variables.md
+++ b/docs/wiki/1-configuration-variables.md
@@ -29,7 +29,8 @@ Tools that respect XDG are directed to these paths rather than polluting $HOME.
## Editor and Pager
EDITOR nvim (falls back to vi if nvim is absent)
- VISUAL same as EDITOR
+ VISUAL unset by default; set a GUI editor via local.fish (the edit
+ function falls back to a GUI chain when VISUAL is empty)
SUDO_EDITOR same as EDITOR
PAGER ov (falls back to less)
diff --git a/docs/wiki/5-functions-reference.md b/docs/wiki/5-functions-reference.md
index 65a9c33..eaa3965 100644
--- a/docs/wiki/5-functions-reference.md
+++ b/docs/wiki/5-functions-reference.md
@@ -192,10 +192,35 @@
### edit
- Synopsis: edit [args...]
- Opens files in nvim. Falls back to $EDITOR, nano, vi.
+ Synopsis: edit [-V|-t] [-e EDITOR] [-c] [-x TEXT] [-n] [-v|-s] [FILE...]
+
+ Opens files in a text editor, choosing a terminal or GUI editor and
+ resolving a rich chain of fallbacks. With no --visual/--terminal flag the
+ mode is auto-detected: interactive terminals use the terminal editor
+ ($EDITOR), while detached invocations (e.g. desktop shortcuts) use the GUI
+ editor ($VISUAL). Clipboard contents and literal strings can be opened as
+ throwaway temp files. Editor output is suppressed unless --verbose.
+
+ GUI fallback chain: zed → antigravity-ide → code → kate → kwrite →
+ gnome-text-editor → gedit
+ Terminal fallback chain: nvim → vim → micro → nano → vi
+
+ Options:
+ -V, --visual Force the GUI editor ($VISUAL or fallbacks)
+ -t, --terminal Force the terminal editor ($EDITOR or fallbacks)
+ -e, --editor=X Use a specific editor binary X
+ -c, --clipboard Open the clipboard contents (as a temp file)
+ -x, --text=STR Open STR as the contents of a new temp file
+ -n, --new Force a new window/instance (best-effort)
+ -v, --verbose Print the launch command and editor output
+ -s, --silent Suppress all output, including the editor's
+ -h, --help Show this help message
edit ~/.config/fish/config.fish
+ edit --visual notes.txt
+ edit --terminal --new todo.md
+ edit --editor=code --clipboard
+ edit --text="hello world"
### fc
diff --git a/docs/wiki/7-customization.md b/docs/wiki/7-customization.md
index 9218384..0f90950 100644
--- a/docs/wiki/7-customization.md
+++ b/docs/wiki/7-customization.md
@@ -149,6 +149,7 @@ all of these commands.
dir / vdir forced --color=auto system dir / vdir
help config intercepts "help config" → config-help fish builtin help
claude auto-links AGENTS.md as CLAUDE.md before launch command claude
+ edit multi-editor launcher (GUI/term + fallbacks) $EDITOR/nvim/nano/vi
When C1 is disabled, `rm` uses bare `command rm` with no wrapper — files
are permanently deleted, not trashed. There is no intermediate safety net.