diff --git a/docs/build-manual.py b/docs/build-manual.py index c0fd62f..979df64 100644 --- a/docs/build-manual.py +++ b/docs/build-manual.py @@ -416,7 +416,12 @@ def prettify(body: str, entry_name: str | None = None) -> str: return "\n".join(out) -ENTRY_HEADS = {"ARGUMENTS": "Arguments:", "RETURNS": "Returns:", "NOTES": "Notes:"} +ENTRY_HEADS = { + "ARGUMENTS": "Arguments:", + "EXIT STATUS": "Exit Status:", + "RETURNS": "Returns:", + "NOTES": "Notes:", +} def render_entry(fn: dict[str, list[str]], used_by: list[str], link=None) -> str: diff --git a/docs/fish-config.md b/docs/fish-config.md index 423ff57..3b4b169 100644 --- a/docs/fish-config.md +++ b/docs/fish-config.md @@ -708,7 +708,7 @@ Add -i (interactive confirmation) to destructive commands: -s, --silent Suppress directory creation output Directory to create and enter - Returns: + Exit Status: 0 Directory created (or already existed) and entered successfully 1 Directory creation or cd failed @@ -741,7 +741,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: file One or more file paths to create - Returns: + Exit Status: 0 Files created 1 No file argument provided @@ -785,7 +785,7 @@ Add -i (interactive confirmation) to destructive commands: -r, -R, --recursive Forwarded to trash put alongside path arguments args... Files or paths to trash or remove - Returns: + Exit Status: 0 Operation succeeded 1 trash put failed or file not found @@ -812,7 +812,7 @@ Add -i (interactive confirmation) to destructive commands: -d, --dry-run Show targets without deleting -h, --help Show usage help - Returns: + Exit Status: 0 Sweep completed (or dry run shown) 1 fd not found, or unknown argument provided @@ -846,7 +846,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Arguments forwarded to clone-in-kitty (typically a repo URL) - Returns: + Exit Status: 0 Repository cloned 1 Not running inside Kitty terminal @@ -863,7 +863,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Arguments forwarded to clone-in-kitty (typically a repo URL) - Returns: + Exit Status: 0 Repository cloned 1 Not running inside Kitty terminal @@ -899,7 +899,7 @@ Add -i (interactive confirmation) to destructive commands: -s, --silent Suppress all output, including the editor's -h, --help Show this help message - Returns: + Exit Status: 0 Editor launched successfully 1 Conflicting flags, no editor found, or clipboard read failed @@ -922,7 +922,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: command_prefix Search history for the newest command matching this - Returns: + Exit Status: The edited command's exit status, or a message when history lookup found nothing. @@ -996,7 +996,7 @@ Add -i (interactive confirmation) to destructive commands: status Show enabled/disabled state, repo count, and registry path -h, --help Show this help message - Returns: + Exit Status: 0 Subcommand succeeded 1 Bad usage, target is not a git repo, or target not registered @@ -1016,7 +1016,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: branch_name Branch to switch to or create - Returns: + Exit Status: 0 Branch checked out or created 1 Not inside a git work tree @@ -1041,10 +1041,14 @@ Add -i (interactive confirmation) to destructive commands: -s, --stdout Print API output to stdout instead of .gitignore targets Comma- or space-separated list of language/tool names - Returns: - 0 Patterns appended or printed + Exit Status: + 0 Patterns appended, or resolved with -s/--stdout or -l/--list 1 Not in a git repository or API fetch failed + Returns: + With -s/--stdout, the fetched .gitignore pattern text, printed to stdout. + With -l/--list, the supported target list, printed to stdout. + Example: gi python,venv gi -b -p @@ -1062,7 +1066,7 @@ Add -i (interactive confirmation) to destructive commands: -h, --help Show help message -f, --force Force-delete unmerged orphaned branches (git branch -D) - Returns: + Exit Status: 0 Cleanup complete 1 Argument parsing failed @@ -1093,7 +1097,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Forwarded verbatim to git fetch - Returns: + Exit Status: 0 Fetch and status succeeded 1 Not inside a git work tree @@ -1131,7 +1135,7 @@ Add -i (interactive confirmation) to destructive commands: pacman -Qi previews, then removes the selected packages using paru or yay. Arch Linux only. - Returns: + Exit Status: 0 Packages removed or none selected 1 No AUR helper (paru or yay) found @@ -1161,7 +1165,7 @@ Add -i (interactive confirmation) to destructive commands: -u, --uninstall Force uninstall mode package One or more package names to install or remove - Returns: + Exit Status: 0 Operation completed 1 No supported package manager found, unknown flag, or package operation failed @@ -1180,7 +1184,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Arguments forwarded to paru or yay - Returns: + Exit Status: 0 AUR helper ran successfully 1 No AUR helper (paru or yay) found @@ -1194,7 +1198,7 @@ Add -i (interactive confirmation) to destructive commands: Runs a full system upgrade via paru or yay with --noconfirm. Falls back to yay if paru is not installed. Arch Linux only. - Returns: + Exit Status: 0 Upgrade completed successfully 1 No AUR helper (paru or yay) found @@ -1244,7 +1248,7 @@ Add -i (interactive confirmation) to destructive commands: update Update all installed deps sync Install missing deps, then update all - Returns: + Exit Status: 0 Subcommand completed 1 Unknown subcommand @@ -1309,7 +1313,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: --brief Suppress per-file output; show only the final summary - Returns: + Exit Status: 0 All binaries verified (or summary shown) 1 sbctl is not installed @@ -1336,7 +1340,7 @@ Add -i (interactive confirmation) to destructive commands: otherwise require a password entry. Clears the sudo credential cache when re-enabling, so the lockdown takes effect immediately. - Returns: + Exit Status: 0 Rule toggled Example: @@ -1380,7 +1384,7 @@ Add -i (interactive confirmation) to destructive commands: command The command to run detached args... Additional arguments for the command - Returns: + Exit Status: 0 Command launched successfully 1 No command provided @@ -1401,7 +1405,7 @@ Add -i (interactive confirmation) to destructive commands: command The command to run detached args... Additional arguments for the command - Returns: + Exit Status: 0 Command launched or help/version shown 1 No command provided or unknown option @@ -1422,7 +1426,7 @@ Add -i (interactive confirmation) to destructive commands: command... Command to run in the new pane; opens a bare fish shell if omitted - Returns: + Exit Status: 0 Pane opened successfully 1 Not running inside Kitty or WezTerm @@ -1440,7 +1444,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Arguments forwarded to the spawn command - Returns: + Exit Status: 0 Window opened successfully 1 Not running inside Kitty or WezTerm @@ -1473,7 +1477,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Arguments forwarded to the terminal's launch command - Returns: + Exit Status: 0 Tab opened successfully 1 No supported terminal found @@ -1493,10 +1497,13 @@ Add -i (interactive confirmation) to destructive commands: -h, --help Show usage help args... Arguments forwarded to the clipboard tool - Returns: - 0 Clipboard contents printed successfully + Exit Status: + 0 Clipboard contents read successfully 1 No supported clipboard tool found + Returns: + The clipboard contents, printed to stdout + Example: p | grep foo p > file.txt @@ -1511,10 +1518,13 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Arguments forwarded to the clipboard tool - Returns: - 0 Clipboard contents printed successfully + Exit Status: + 0 Clipboard contents read successfully 1 No supported clipboard tool found + Returns: + The clipboard contents, printed to stdout + Example: paste > file.txt @@ -1528,7 +1538,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: text Text to copy; reads from stdin if omitted - Returns: + Exit Status: 0 Text copied to clipboard 1 No clipboard provider found @@ -1565,10 +1575,13 @@ Add -i (interactive confirmation) to destructive commands: Fetches and prints the machine's public IPv6 address using icanhazip.com. Prints an error message if IPv6 is unavailable on the current network. - Returns: - 0 IPv6 address printed + Exit Status: + 0 IPv6 address resolved 1 IPv6 unavailable or not supported on this network + Returns: + The machine's public IPv6 address, printed to stdout + Example: gip6 @@ -1626,7 +1639,7 @@ Add -i (interactive confirmation) to destructive commands: -h, --help Show help message -c, --category cat Filter to one category: scrollback, paru, or yay - Returns: + Exit Status: 0 File viewed or no file selected 1 No log files found @@ -1648,7 +1661,7 @@ Add -i (interactive confirmation) to destructive commands: -h, --help Show help message -n, --no-log Exit without saving a scrollback log - Returns: + Exit Status: 0 Shell session exited 1 Argument parsing failed @@ -1724,7 +1737,7 @@ Add -i (interactive confirmation) to destructive commands: -s, --silent Suppress all output; errors only (standard UNIX convention) -h, --help Show this help message and exit - Returns: + Exit Status: 0 Setup completed successfully 1 Fatal error (git init failed, move failed, etc.) @@ -1754,7 +1767,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: ARGS Any arguments forwarded verbatim to the underlying agy binary - Returns: + Exit Status: Exit status of the underlying agy binary Example: @@ -1795,7 +1808,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: ARGS Any arguments forwarded verbatim to the underlying claude binary - Returns: + Exit Status: Exit status of the underlying claude binary Example: @@ -1860,7 +1873,7 @@ Add -i (interactive confirmation) to destructive commands: prompt... Prompt forwarded to aichat -h, --help Show usage help - Returns: + Exit Status: aichat's exit status. Example: @@ -1882,7 +1895,7 @@ Add -i (interactive confirmation) to destructive commands: -g, --global Apply at user/global scope instead of workspace/project -h, --help Show usage help - Returns: + Exit Status: 0 Mode applied successfully 1 No on/off mode specified @@ -1907,7 +1920,7 @@ Add -i (interactive confirmation) to destructive commands: -s, --speed N Encoder speed 0-10 (default: 3, 0 = slowest) -h, --help Show help message - Returns: + Exit Status: 0 Conversion complete 1 File not found, missing dependency, or encode step failed @@ -1995,7 +2008,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: owner/repo The repository path in owner/name format - Returns: + Exit Status: 0 Issues linked and synced (or no unlinked issues found) 1 Missing required argument or environment variables @@ -2059,10 +2072,14 @@ Add -i (interactive confirmation) to destructive commands: -m, --man Open the compiled man page via man -l -h, --help Print usage and navigation reference, then exit - Returns: - 0 Manual displayed (or --help printed) + Exit Status: + 0 Manual displayed 1 Documentation file not found, or required tool not available + Returns: + With -h/--help, the usage and navigation reference, printed to stdout. + Otherwise, the manual is shown via the resolved pager (not captured stdout). + Notes: The preferred invocation is `help config [...]` — this function is registered as a handler in the help wrapper so that syntax works @@ -2131,7 +2148,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: -h, --help Print usage and exit - Returns: + Exit Status: 0 Exited normally (q or Escape pressed) 1 Unknown flag passed @@ -2150,7 +2167,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args Passed through verbatim to config-settings - Returns: + Exit Status: Same as config-settings Example: @@ -2172,7 +2189,7 @@ Add -i (interactive confirmation) to destructive commands: -f, --force Stash local changes before pulling, then pop the stash -n, --dry-run Check for upstream changes without applying them - Returns: + Exit Status: 0 Config updated (or already up to date) 1 Update failed (network error, merge conflict, or not a git repo) @@ -2192,7 +2209,7 @@ Add -i (interactive confirmation) to destructive commands: -h, --help Show help message directory Path to the compose project (defaults to current directory) - Returns: + Exit Status: 0 Services updated and running 1 Directory not found or no docker-compose.yml present @@ -2222,7 +2239,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: args... Arguments forwarded to the joplin command - Returns: + Exit Status: 0 Joplin ran successfully 1 joplin binary not found in PATH @@ -2252,7 +2269,7 @@ Add -i (interactive confirmation) to destructive commands: dismiss Stop the per-session reminder -h, --help Show this help - Returns: + Exit Status: 0 Success 1 Unknown subcommand/flag, kitty missing, or a write failure @@ -2296,7 +2313,7 @@ Add -i (interactive confirmation) to destructive commands: -v, --verbose Print which browser is being launched -h, --help Print usage and exit - Returns: + Exit Status: 0 Browser launched 1 No URL given, invalid $BROWSER, or no browser found @@ -2320,7 +2337,7 @@ Add -i (interactive confirmation) to destructive commands: Arguments: commands Bash command string to execute and replay - Returns: + Exit Status: 0 Commands ran successfully and changes were replayed 1 Bash command exited with a non-zero status @@ -2358,10 +2375,13 @@ Add -i (interactive confirmation) to destructive commands: -r, --root Ignore the current sub-directory; link to the repo root -h, --help Print usage and exit - Returns: - 0 URL opened (or printed) + Exit Status: + 0 URL opened, or resolved with -p/--print 1 Not a git repo, no origin remote, or browser launch failed + Returns: + With -p/--print, the resolved repository URL, printed to stdout + Notes: Typo abbreviation: open-repo (expands to repo-open on space/enter). @@ -2393,7 +2413,7 @@ Add -i (interactive confirmation) to destructive commands: command Command to run with sleep inhibition active args... Arguments forwarded to the command - Returns: + Exit Status: 0 Command ran and completed 1 No command provided diff --git a/docs/manualtools.py b/docs/manualtools.py index 793c543..df0b51c 100644 --- a/docs/manualtools.py +++ b/docs/manualtools.py @@ -66,6 +66,7 @@ SECTIONS = ( "SYNOPSIS", "DESCRIPTION", "ARGUMENTS", + "EXIT STATUS", "RETURNS", "EXAMPLE", "NOTES", diff --git a/docs/verify-manual.py b/docs/verify-manual.py index 33f14fd..32d1985 100644 --- a/docs/verify-manual.py +++ b/docs/verify-manual.py @@ -572,6 +572,43 @@ def test_sidebar_has_no_duplicate_functions_entry(): assert len(labels) == 15, f"expected Overview + 14 categories, got {len(labels)}" +def test_exit_status_never_describes_stdout_content(): + """EXIT STATUS documents $status; stdout/printed content belongs in RETURNS. + + Regression guard for the RETURNS -> EXIT STATUS split: a row like + "0 Patterns appended, or the requested content printed" re-introduces + the exact ambiguity (exit code vs. printed output) the split exists to + remove. A `--stdout`-style flag name is not itself an offense — only + "stdout" used as a bare word (not part of a flag) counts. + """ + offenders = [] + for name, fn in _parsed_functions().items(): + for line in fn.get("EXIT STATUS", []): + if re.search(r"(? any other single printable character -# "" nothing decodable was read +# EXIT STATUS +# 0 A key was read # 1 The terminal could not be put into raw mode (stdin is not a TTY) # +# RETURNS +# One token, printed to stdout: +# up down left right arrow keys +# space tab backtab enter escape backspace +# quit Ctrl-C (byte 3) in raw mode +# any other single printable character +# "" nothing decodable was read +# # EXAMPLE # set -l key (__config_settings_read_key) # or return # not a TTY — bail diff --git a/functions/__config_settings_set_value.fish b/functions/__config_settings_set_value.fish index 46ddfd1..3de0f28 100644 --- a/functions/__config_settings_set_value.fish +++ b/functions/__config_settings_set_value.fish @@ -17,7 +17,7 @@ # type "list" (whitespace-split) or any other tag (single value) # value The new value; empty string erases (reset to default) # -# RETURNS +# EXIT STATUS # 0 Always # # EXAMPLE diff --git a/functions/__fish_config_op_enabled.fish b/functions/__fish_config_op_enabled.fish index 6eeb5b4..80b1d76 100644 --- a/functions/__fish_config_op_enabled.fish +++ b/functions/__fish_config_op_enabled.fish @@ -23,7 +23,7 @@ # __fish_config_op_logging, or # __fish_config_op_greeting # -# RETURNS +# EXIT STATUS # 0 Component enabled (category explicitly truthy; or category unset and master not falsy) # 1 Component disabled (category explicitly falsy; or category unset and master falsy; or no argument with falsy master) # diff --git a/functions/__fish_config_sync_logging.fish b/functions/__fish_config_sync_logging.fish index efc9f41..431a793 100644 --- a/functions/__fish_config_sync_logging.fish +++ b/functions/__fish_config_sync_logging.fish @@ -14,7 +14,7 @@ # Safe to call at any time; wrapper removal only affects files bearing # the generated version-marker comment. # -# RETURNS +# EXIT STATUS # 0 Always # # EXAMPLE diff --git a/functions/__fish_real_command.fish b/functions/__fish_real_command.fish index 743c7b7..d515c8b 100644 --- a/functions/__fish_real_command.fish +++ b/functions/__fish_real_command.fish @@ -18,9 +18,12 @@ # ARGUMENTS # name Command name to resolve (e.g. paru, yay) # +# EXIT STATUS +# 0 A non-wrapper binary was found +# 1 No non-wrapper binary found on PATH +# # RETURNS -# 0 Real binary path printed to stdout -# 1 No non-wrapper binary found on PATH (nothing printed) +# The resolved binary's real path, printed to stdout (nothing on failure) # # EXAMPLE # set -l real (__fish_real_command paru) # -> /usr/bin/paru, not the shim diff --git a/functions/__fish_user_dots_link.fish b/functions/__fish_user_dots_link.fish index 6873671..e61bb2f 100644 --- a/functions/__fish_user_dots_link.fish +++ b/functions/__fish_user_dots_link.fish @@ -23,7 +23,7 @@ # ARGUMENTS # (none) # -# RETURNS +# EXIT STATUS # 0 Always # # EXAMPLE diff --git a/functions/__fish_variable_check.fish b/functions/__fish_variable_check.fish index 0a00a9e..e601244 100644 --- a/functions/__fish_variable_check.fish +++ b/functions/__fish_variable_check.fish @@ -12,7 +12,7 @@ # ARGUMENTS # variable_name Name of the variable to check (without $ prefix) # -# RETURNS +# EXIT STATUS # 0 True (opt-in): value matches 1, true, yes, on, or y # 1 False (opt-out): value matches 0, false, no, off, or n # 2 Empty: variable is unset or empty diff --git a/functions/__fzf_inline_picker.fish b/functions/__fzf_inline_picker.fish index 7b40345..7913d45 100644 --- a/functions/__fzf_inline_picker.fish +++ b/functions/__fzf_inline_picker.fish @@ -9,7 +9,7 @@ # into the command line at the cursor position. Bound to @@ by default. # Repaints the prompt after selection or cancellation. # -# RETURNS +# EXIT STATUS # 0 Always; no-op if fzf is cancelled # # EXAMPLE diff --git a/functions/__kitty_logging_dir.fish b/functions/__kitty_logging_dir.fish index adc6b5b..475e8ff 100644 --- a/functions/__kitty_logging_dir.fish +++ b/functions/__kitty_logging_dir.fish @@ -9,8 +9,11 @@ # order: $KITTY_CONFIG_DIRECTORY, else $XDG_CONFIG_HOME/kitty, else # ~/.config/kitty. # +# EXIT STATUS +# 0 Always +# # RETURNS -# 0 Always (path printed to stdout) +# The Kitty configuration directory path, printed to stdout # # EXAMPLE # set -l dir (__kitty_logging_dir) diff --git a/functions/__kitty_logging_has_watcher.fish b/functions/__kitty_logging_has_watcher.fish index 7c4d00f..a49d0eb 100644 --- a/functions/__kitty_logging_has_watcher.fish +++ b/functions/__kitty_logging_has_watcher.fish @@ -9,7 +9,7 @@ # (non-commented) `watcher` directive — whether the fish-config managed one or # a user's own. Used to suppress the setup reminder and to inform status. # -# RETURNS +# EXIT STATUS # 0 An active watcher directive is present # 1 None present, or kitty.conf does not exist # diff --git a/functions/__kitty_logging_version.fish b/functions/__kitty_logging_version.fish index 1911d9e..863d8ac 100644 --- a/functions/__kitty_logging_version.fish +++ b/functions/__kitty_logging_version.fish @@ -11,8 +11,11 @@ # ARGUMENTS # file Path to a watcher script # +# EXIT STATUS +# 0 Always +# # RETURNS -# 0 Always (integer printed to stdout) +# The watcher version as an integer (0 if absent), printed to stdout # # EXAMPLE # __kitty_logging_version ~/.config/kitty/fish-config-watcher.py diff --git a/functions/_agents_init_ensure_gitignore.fish b/functions/_agents_init_ensure_gitignore.fish index f4f411a..3df0fd3 100644 --- a/functions/_agents_init_ensure_gitignore.fish +++ b/functions/_agents_init_ensure_gitignore.fish @@ -24,7 +24,7 @@ # label Short description used in the block comment header # pattern One or more gitignore patterns to ensure are present # -# RETURNS +# EXIT STATUS # 0 All patterns already ignored or successfully appended # 1 Could not write to .gitignore # diff --git a/functions/_agents_init_install_tools.fish b/functions/_agents_init_install_tools.fish index c9f7c08..3c544af 100644 --- a/functions/_agents_init_install_tools.fish +++ b/functions/_agents_init_install_tools.fish @@ -15,7 +15,7 @@ # ARGUMENTS # agents_dir Absolute path to the AGENTS/ sub-repo root # -# RETURNS +# EXIT STATUS # 0 Tooling is current or was installed/updated successfully # 1 Canonical source missing or a copy failed # diff --git a/functions/_auto_pull_sync.fish b/functions/_auto_pull_sync.fish index d03be5e..fd76468 100644 --- a/functions/_auto_pull_sync.fish +++ b/functions/_auto_pull_sync.fish @@ -19,7 +19,7 @@ # ARGUMENTS # dir Absolute path to the git repository to fast-forward # -# RETURNS +# EXIT STATUS # 0 Fast-forward applied (or already up to date) # 1 A precondition failed; nothing was changed # diff --git a/functions/_fish_deps_catalog.fish b/functions/_fish_deps_catalog.fish index c9742f9..bf63cfd 100644 --- a/functions/_fish_deps_catalog.fish +++ b/functions/_fish_deps_catalog.fish @@ -49,9 +49,12 @@ end # ARGUMENTS # bin The binary name to look up in the catalog # +# EXIT STATUS +# 0 Binary found in the catalog +# 1 Binary not found +# # RETURNS -# 0 Index printed to stdout -# 1 Binary not found (empty output) +# The binary's 1-based catalog index, printed to stdout (nothing on failure) # # EXAMPLE # _fish_deps_catalog_idx fzf diff --git a/functions/_fish_deps_pm_install.fish b/functions/_fish_deps_pm_install.fish index e60d725..0f5b287 100644 --- a/functions/_fish_deps_pm_install.fish +++ b/functions/_fish_deps_pm_install.fish @@ -12,7 +12,7 @@ # ARGUMENTS # pkg The package name to install # -# RETURNS +# EXIT STATUS # 0 Package installed successfully # 1 No supported package manager found # diff --git a/functions/_fish_deps_pm_upgrade.fish b/functions/_fish_deps_pm_upgrade.fish index d6e98c1..6596fdf 100644 --- a/functions/_fish_deps_pm_upgrade.fish +++ b/functions/_fish_deps_pm_upgrade.fish @@ -12,7 +12,7 @@ # ARGUMENTS # pkg The package name to upgrade # -# RETURNS +# EXIT STATUS # 0 Package upgraded successfully # 1 No supported package manager found # diff --git a/functions/_fish_mkdir_p.fish b/functions/_fish_mkdir_p.fish index 5b42ea9..835ab5c 100644 --- a/functions/_fish_mkdir_p.fish +++ b/functions/_fish_mkdir_p.fish @@ -14,7 +14,7 @@ # -s, --silent Suppress all output # dir The directory path to create # -# RETURNS +# EXIT STATUS # 0 Directory created or already exists # 1 No target directory specified or mkdir failed # diff --git a/functions/_prune_terminal_logs.fish b/functions/_prune_terminal_logs.fish index f121fbb..f5c4b41 100644 --- a/functions/_prune_terminal_logs.fish +++ b/functions/_prune_terminal_logs.fish @@ -20,7 +20,7 @@ # ARGUMENTS # prefix Log-name prefix to prune (e.g. tmux, zellij) # -# RETURNS +# EXIT STATUS # 0 Always # # EXAMPLE diff --git a/functions/_qalc_eval.fish b/functions/_qalc_eval.fish index abe6de2..c54b625 100644 --- a/functions/_qalc_eval.fish +++ b/functions/_qalc_eval.fish @@ -10,7 +10,7 @@ # after evaluation. No-ops if qalc is not installed or the buffer # is empty. Intended to be bound to a key in key_bindings.fish. # -# RETURNS +# EXIT STATUS # 1 qalc not found in PATH # # EXAMPLE diff --git a/functions/_tmux_pipe_log.fish b/functions/_tmux_pipe_log.fish index feb3594..e4ed18a 100644 --- a/functions/_tmux_pipe_log.fish +++ b/functions/_tmux_pipe_log.fish @@ -12,7 +12,7 @@ # unset) or tmux is missing. Shared by conf.d/tmux-logging.fish (shell # startup) and __fish_config_sync_logging (C5 re-enable) so both stay in sync. # -# RETURNS +# EXIT STATUS # 0 Always # # EXAMPLE diff --git a/functions/_zellij_dump_log.fish b/functions/_zellij_dump_log.fish index 05bd1f7..ab036c7 100644 --- a/functions/_zellij_dump_log.fish +++ b/functions/_zellij_dump_log.fish @@ -17,7 +17,7 @@ # No-op when logging is disabled, not inside Zellij ($ZELLIJ unset), or the # zellij binary is missing. # -# RETURNS +# EXIT STATUS # 0 Always # # EXAMPLE diff --git a/functions/agents-init.fish b/functions/agents-init.fish index c730954..ff002fa 100644 --- a/functions/agents-init.fish +++ b/functions/agents-init.fish @@ -66,7 +66,7 @@ # -s, --silent Suppress all output; errors only (standard UNIX convention) # -h, --help Show this help message and exit # -# RETURNS +# EXIT STATUS # 0 Setup completed successfully # 1 Fatal error (git init failed, move failed, etc.) # diff --git a/functions/agy.fish b/functions/agy.fish index 2b4dd56..bfe90b4 100644 --- a/functions/agy.fish +++ b/functions/agy.fish @@ -25,7 +25,7 @@ # ARGUMENTS # ARGS Any arguments forwarded verbatim to the underlying agy binary # -# RETURNS +# EXIT STATUS # Exit status of the underlying agy binary # # EXAMPLE diff --git a/functions/auto-pull.fish b/functions/auto-pull.fish index 1d52ffe..6527fb6 100644 --- a/functions/auto-pull.fish +++ b/functions/auto-pull.fish @@ -29,7 +29,7 @@ # status Show enabled/disabled state, repo count, and registry path # -h, --help Show this help message # -# RETURNS +# EXIT STATUS # 0 Subcommand succeeded # 1 Bad usage, target is not a git repo, or target not registered # diff --git a/functions/bd-pull.fish b/functions/bd-pull.fish index c634429..87b60de 100644 --- a/functions/bd-pull.fish +++ b/functions/bd-pull.fish @@ -15,7 +15,7 @@ # ARGUMENTS # owner/repo The repository path in owner/name format # -# RETURNS +# EXIT STATUS # 0 Issues linked and synced (or no unlinked issues found) # 1 Missing required argument or environment variables # diff --git a/functions/bkg.fish b/functions/bkg.fish index 927db5b..979da98 100644 --- a/functions/bkg.fish +++ b/functions/bkg.fish @@ -16,7 +16,7 @@ # command The command to run detached # args... Additional arguments for the command # -# RETURNS +# EXIT STATUS # 0 Command launched successfully # 1 No command provided # diff --git a/functions/branch.fish b/functions/branch.fish index 0380f29..836320d 100644 --- a/functions/branch.fish +++ b/functions/branch.fish @@ -14,7 +14,7 @@ # ARGUMENTS # branch_name Branch to switch to or create # -# RETURNS +# EXIT STATUS # 0 Branch checked out or created # 1 Not inside a git work tree # diff --git a/functions/claude.fish b/functions/claude.fish index b393cf9..3b981d7 100644 --- a/functions/claude.fish +++ b/functions/claude.fish @@ -25,7 +25,7 @@ # ARGUMENTS # ARGS Any arguments forwarded verbatim to the underlying claude binary # -# RETURNS +# EXIT STATUS # Exit status of the underlying claude binary # # EXAMPLE diff --git a/functions/clone.fish b/functions/clone.fish index 56775f3..338476a 100644 --- a/functions/clone.fish +++ b/functions/clone.fish @@ -14,7 +14,7 @@ # ARGUMENTS # args... Arguments forwarded to clone-in-kitty (typically a repo URL) # -# RETURNS +# EXIT STATUS # 0 Repository cloned # 1 Not running inside Kitty terminal # diff --git a/functions/clonet.fish b/functions/clonet.fish index 0709b3a..f9bac1b 100644 --- a/functions/clonet.fish +++ b/functions/clonet.fish @@ -14,7 +14,7 @@ # ARGUMENTS # args... Arguments forwarded to clone-in-kitty (typically a repo URL) # -# RETURNS +# EXIT STATUS # 0 Repository cloned # 1 Not running inside Kitty terminal # diff --git a/functions/config-help.fish b/functions/config-help.fish index 3df064a..af65341 100644 --- a/functions/config-help.fish +++ b/functions/config-help.fish @@ -32,10 +32,14 @@ # -m, --man Open the compiled man page via man -l # -h, --help Print usage and navigation reference, then exit # -# RETURNS -# 0 Manual displayed (or --help printed) +# EXIT STATUS +# 0 Manual displayed # 1 Documentation file not found, or required tool not available # +# RETURNS +# With -h/--help, the usage and navigation reference, printed to stdout. +# Otherwise, the manual is shown via the resolved pager (not captured stdout). +# # EXAMPLE # config-help # config-help keybindings diff --git a/functions/config-settings.fish b/functions/config-settings.fish index 2668897..5730306 100644 --- a/functions/config-settings.fish +++ b/functions/config-settings.fish @@ -56,7 +56,7 @@ # ARGUMENTS # -h, --help Print usage and exit # -# RETURNS +# EXIT STATUS # 0 Exited normally (q or Escape pressed) # 1 Unknown flag passed # diff --git a/functions/config-toggle.fish b/functions/config-toggle.fish index e8e329a..e4e3923 100644 --- a/functions/config-toggle.fish +++ b/functions/config-toggle.fish @@ -17,7 +17,7 @@ # ARGUMENTS # args Passed through verbatim to config-settings # -# RETURNS +# EXIT STATUS # Same as config-settings # # EXAMPLE diff --git a/functions/config-update.fish b/functions/config-update.fish index ff79803..b4de9be 100644 --- a/functions/config-update.fish +++ b/functions/config-update.fish @@ -18,7 +18,7 @@ # -f, --force Stash local changes before pulling, then pop the stash # -n, --dry-run Check for upstream changes without applying them # -# RETURNS +# EXIT STATUS # 0 Config updated (or already up to date) # 1 Update failed (network error, merge conflict, or not a git repo) # diff --git a/functions/detach.fish b/functions/detach.fish index d18c612..e824239 100644 --- a/functions/detach.fish +++ b/functions/detach.fish @@ -18,7 +18,7 @@ # command The command to run detached # args... Additional arguments for the command # -# RETURNS +# EXIT STATUS # 0 Command launched or help/version shown # 1 No command provided or unknown option # diff --git a/functions/dng2avif.fish b/functions/dng2avif.fish index 97d98b4..828895c 100644 --- a/functions/dng2avif.fish +++ b/functions/dng2avif.fish @@ -19,7 +19,7 @@ # -s, --speed N Encoder speed 0-10 (default: 3, 0 = slowest) # -h, --help Show help message # -# RETURNS +# EXIT STATUS # 0 Conversion complete # 1 File not found, missing dependency, or encode step failed # diff --git a/functions/dockup.fish b/functions/dockup.fish index 3d16935..22a4751 100644 --- a/functions/dockup.fish +++ b/functions/dockup.fish @@ -15,7 +15,7 @@ # -h, --help Show help message # directory Path to the compose project (defaults to current directory) # -# RETURNS +# EXIT STATUS # 0 Services updated and running # 1 Directory not found or no docker-compose.yml present # diff --git a/functions/edit.fish b/functions/edit.fish index 5bb66c4..b02e3ab 100644 --- a/functions/edit.fish +++ b/functions/edit.fish @@ -31,7 +31,7 @@ # -s, --silent Suppress all output, including the editor's # -h, --help Show this help message # -# RETURNS +# EXIT STATUS # 0 Editor launched successfully # 1 Conflicting flags, no editor found, or clipboard read failed # diff --git a/functions/fc.fish b/functions/fc.fish index 72490bb..5abb0a1 100644 --- a/functions/fc.fish +++ b/functions/fc.fish @@ -16,7 +16,7 @@ # ARGUMENTS # command_prefix Search history for the newest command matching this # -# RETURNS +# EXIT STATUS # The edited command's exit status, or a message when history lookup # found nothing. # diff --git a/functions/fish-deps.fish b/functions/fish-deps.fish index 90449f2..3012adf 100644 --- a/functions/fish-deps.fish +++ b/functions/fish-deps.fish @@ -35,7 +35,7 @@ # update Update all installed deps # sync Install missing deps, then update all # -# RETURNS +# EXIT STATUS # 0 Subcommand completed # 1 Unknown subcommand # diff --git a/functions/fish_mode_prompt.fish b/functions/fish_mode_prompt.fish index 01065f8..ef47dd9 100644 --- a/functions/fish_mode_prompt.fish +++ b/functions/fish_mode_prompt.fish @@ -9,7 +9,7 @@ # that would prepend to the prompt line and break the two-line nim layout. # Vi-mode display is handled inside fish_prompt itself. # -# RETURNS +# EXIT STATUS # 0 Always (function body is empty) # # EXAMPLE diff --git a/functions/fish_prompt.fish b/functions/fish_prompt.fish index 1a13912..fd48fa7 100644 --- a/functions/fish_prompt.fish +++ b/functions/fish_prompt.fish @@ -10,8 +10,11 @@ # C3 overrides are disabled. Has no external dependencies; uses only fish-provided functions # (set_color, fish_git_prompt, prompt_pwd, prompt_hostname). # +# EXIT STATUS +# 0 Always +# # RETURNS -# 0 Always; outputs the prompt to stdout +# The rendered two-line prompt, printed to stdout # # EXAMPLE # # Rendered automatically by fish; not called directly. diff --git a/functions/fish_right_prompt.fish b/functions/fish_right_prompt.fish index 9b8c3f0..bacba6d 100644 --- a/functions/fish_right_prompt.fish +++ b/functions/fish_right_prompt.fish @@ -11,7 +11,7 @@ # context (if non-default) — that block is paired with the starship prompt # which already guards on both conditions. # -# RETURNS +# EXIT STATUS # 0 Always # # EXAMPLE diff --git a/functions/fzf_configure_bindings.fish b/functions/fzf_configure_bindings.fish index e20a8e7..f0c5209 100644 --- a/functions/fzf_configure_bindings.fish +++ b/functions/fzf_configure_bindings.fish @@ -19,7 +19,7 @@ # --variables=key Override the variables search binding (default: Ctrl-V) # -h, --help Show help message # -# RETURNS +# EXIT STATUS # 0 Bindings installed or help shown # 22 Invalid option or positional argument provided # diff --git a/functions/gi.fish b/functions/gi.fish index e10d96f..d655f9e 100644 --- a/functions/gi.fish +++ b/functions/gi.fish @@ -22,10 +22,14 @@ # -s, --stdout Print API output to stdout instead of .gitignore # targets Comma- or space-separated list of language/tool names # -# RETURNS -# 0 Patterns appended or printed +# EXIT STATUS +# 0 Patterns appended, or resolved with -s/--stdout or -l/--list # 1 Not in a git repository or API fetch failed # +# RETURNS +# With -s/--stdout, the fetched .gitignore pattern text, printed to stdout. +# With -l/--list, the supported target list, printed to stdout. +# # EXAMPLE # gi python,venv # gi -b -p diff --git a/functions/gip6.fish b/functions/gip6.fish index 4ddc195..735ffc6 100644 --- a/functions/gip6.fish +++ b/functions/gip6.fish @@ -11,10 +11,13 @@ # Fetches and prints the machine's public IPv6 address using icanhazip.com. # Prints an error message if IPv6 is unavailable on the current network. # -# RETURNS -# 0 IPv6 address printed +# EXIT STATUS +# 0 IPv6 address resolved # 1 IPv6 unavailable or not supported on this network # +# RETURNS +# The machine's public IPv6 address, printed to stdout +# # EXAMPLE # gip6 function gip6 --description 'Get public IPv6 address' diff --git a/functions/git-clean.fish b/functions/git-clean.fish index 91ee5f2..c2dbe35 100644 --- a/functions/git-clean.fish +++ b/functions/git-clean.fish @@ -16,7 +16,7 @@ # -h, --help Show help message # -f, --force Force-delete unmerged orphaned branches (git branch -D) # -# RETURNS +# EXIT STATUS # 0 Cleanup complete # 1 Argument parsing failed # diff --git a/functions/gitup.fish b/functions/gitup.fish index 5bff81f..ae2c831 100644 --- a/functions/gitup.fish +++ b/functions/gitup.fish @@ -14,7 +14,7 @@ # ARGUMENTS # args... Forwarded verbatim to git fetch # -# RETURNS +# EXIT STATUS # 0 Fetch and status succeeded # 1 Not inside a git work tree # diff --git a/functions/joplin.fish b/functions/joplin.fish index cb6881a..92eb222 100644 --- a/functions/joplin.fish +++ b/functions/joplin.fish @@ -14,7 +14,7 @@ # ARGUMENTS # args... Arguments forwarded to the joplin command # -# RETURNS +# EXIT STATUS # 0 Joplin ran successfully # 1 joplin binary not found in PATH # diff --git a/functions/kitty-logging.fish b/functions/kitty-logging.fish index a0fb79e..3c56241 100644 --- a/functions/kitty-logging.fish +++ b/functions/kitty-logging.fish @@ -27,7 +27,7 @@ # dismiss Stop the per-session reminder # -h, --help Show this help # -# RETURNS +# EXIT STATUS # 0 Success # 1 Unknown subcommand/flag, kitty missing, or a write failure # diff --git a/functions/logs.fish b/functions/logs.fish index 14f2825..3474ed1 100644 --- a/functions/logs.fish +++ b/functions/logs.fish @@ -25,7 +25,7 @@ # -h, --help Show help message # -c, --category cat Filter to one category: scrollback, paru, or yay # -# RETURNS +# EXIT STATUS # 0 File viewed or no file selected # 1 No log files found # diff --git a/functions/mkcd.fish b/functions/mkcd.fish index b944419..24bd165 100644 --- a/functions/mkcd.fish +++ b/functions/mkcd.fish @@ -18,7 +18,7 @@ # -s, --silent Suppress directory creation output # Directory to create and enter # -# RETURNS +# EXIT STATUS # 0 Directory created (or already existed) and entered successfully # 1 Directory creation or cd failed # diff --git a/functions/open-url.fish b/functions/open-url.fish index d7043b5..007e9dd 100644 --- a/functions/open-url.fish +++ b/functions/open-url.fish @@ -30,7 +30,7 @@ # -v, --verbose Print which browser is being launched # -h, --help Print usage and exit # -# RETURNS +# EXIT STATUS # 0 Browser launched # 1 No URL given, invalid $BROWSER, or no browser found # diff --git a/functions/p.fish b/functions/p.fish index c78a111..0d83760 100644 --- a/functions/p.fish +++ b/functions/p.fish @@ -15,10 +15,13 @@ # -h, --help Show usage help # args... Arguments forwarded to the clipboard tool # -# RETURNS -# 0 Clipboard contents printed successfully +# EXIT STATUS +# 0 Clipboard contents read successfully # 1 No supported clipboard tool found # +# RETURNS +# The clipboard contents, printed to stdout +# # EXAMPLE # p | grep foo # p > file.txt diff --git a/functions/parur.fish b/functions/parur.fish index 22bf1e2..62a65e1 100644 --- a/functions/parur.fish +++ b/functions/parur.fish @@ -12,7 +12,7 @@ # pacman -Qi previews, then removes the selected packages using paru or yay. # Arch Linux only. # -# RETURNS +# EXIT STATUS # 0 Packages removed or none selected # 1 No AUR helper (paru or yay) found # diff --git a/functions/paste.fish b/functions/paste.fish index f88d22e..33f6e45 100644 --- a/functions/paste.fish +++ b/functions/paste.fish @@ -14,10 +14,13 @@ # ARGUMENTS # args... Arguments forwarded to the clipboard tool # -# RETURNS -# 0 Clipboard contents printed successfully +# EXIT STATUS +# 0 Clipboard contents read successfully # 1 No supported clipboard tool found # +# RETURNS +# The clipboard contents, printed to stdout +# # EXAMPLE # paste > file.txt function paste --description 'Paste from clipboard' diff --git a/functions/pkg.fish b/functions/pkg.fish index c11549c..2b3f255 100644 --- a/functions/pkg.fish +++ b/functions/pkg.fish @@ -27,7 +27,7 @@ # -u, --uninstall Force uninstall mode # package One or more package names to install or remove # -# RETURNS +# EXIT STATUS # 0 Operation completed # 1 No supported package manager found, unknown flag, or package operation failed # diff --git a/functions/poke.fish b/functions/poke.fish index 8f901c7..8cff1c5 100644 --- a/functions/poke.fish +++ b/functions/poke.fish @@ -14,7 +14,7 @@ # ARGUMENTS # file One or more file paths to create # -# RETURNS +# EXIT STATUS # 0 Files created # 1 No file argument provided # diff --git a/functions/qc.fish b/functions/qc.fish index 55d0639..5c8ed89 100644 --- a/functions/qc.fish +++ b/functions/qc.fish @@ -22,7 +22,7 @@ # prompt... Prompt forwarded to aichat # -h, --help Show usage help # -# RETURNS +# EXIT STATUS # aichat's exit status. # # EXAMPLE diff --git a/functions/replay.fish b/functions/replay.fish index f559f00..cf529d9 100644 --- a/functions/replay.fish +++ b/functions/replay.fish @@ -15,7 +15,7 @@ # ARGUMENTS # commands Bash command string to execute and replay # -# RETURNS +# EXIT STATUS # 0 Commands ran successfully and changes were replayed # 1 Bash command exited with a non-zero status # diff --git a/functions/repo-open.fish b/functions/repo-open.fish index 99cc2fe..9f5d3a8 100644 --- a/functions/repo-open.fish +++ b/functions/repo-open.fish @@ -37,10 +37,13 @@ # -r, --root Ignore the current sub-directory; link to the repo root # -h, --help Print usage and exit # -# RETURNS -# 0 URL opened (or printed) +# EXIT STATUS +# 0 URL opened, or resolved with -p/--print # 1 Not a git repo, no origin remote, or browser launch failed # +# RETURNS +# With -p/--print, the resolved repository URL, printed to stdout +# # EXAMPLE # repo-open # open current branch (+ subdir) in browser # repo-open --print # just print the URL diff --git a/functions/rm.fish b/functions/rm.fish index 2e18c2c..965e0e8 100644 --- a/functions/rm.fish +++ b/functions/rm.fish @@ -25,7 +25,7 @@ # -r, -R, --recursive Forwarded to trash put alongside path arguments # args... Files or paths to trash or remove # -# RETURNS +# EXIT STATUS # 0 Operation succeeded # 1 trash put failed or file not found # diff --git a/functions/sbver.fish b/functions/sbver.fish index 9803eec..b9a807d 100644 --- a/functions/sbver.fish +++ b/functions/sbver.fish @@ -16,7 +16,7 @@ # ARGUMENTS # --brief Suppress per-file output; show only the final summary # -# RETURNS +# EXIT STATUS # 0 All binaries verified (or summary shown) # 1 sbctl is not installed # diff --git a/functions/scrub.fish b/functions/scrub.fish index c528ab8..7ec50f0 100644 --- a/functions/scrub.fish +++ b/functions/scrub.fish @@ -19,7 +19,7 @@ # -d, --dry-run Show targets without deleting # -h, --help Show usage help # -# RETURNS +# EXIT STATUS # 0 Sweep completed (or dry run shown) # 1 fd not found, or unknown argument provided # diff --git a/functions/search.fish b/functions/search.fish index 2494fb8..e6a69c1 100644 --- a/functions/search.fish +++ b/functions/search.fish @@ -14,7 +14,7 @@ # ARGUMENTS # args... Arguments forwarded to paru or yay # -# RETURNS +# EXIT STATUS # 0 AUR helper ran successfully # 1 No AUR helper (paru or yay) found # diff --git a/functions/smart_exit.fish b/functions/smart_exit.fish index 86118c9..732103b 100644 --- a/functions/smart_exit.fish +++ b/functions/smart_exit.fish @@ -17,7 +17,7 @@ # -h, --help Show help message # -n, --no-log Exit without saving a scrollback log # -# RETURNS +# EXIT STATUS # 0 Shell session exited # 1 Argument parsing failed # diff --git a/functions/split.fish b/functions/split.fish index 498d18d..9317d8a 100644 --- a/functions/split.fish +++ b/functions/split.fish @@ -18,7 +18,7 @@ # command... Command to run in the new pane; opens a bare fish # shell if omitted # -# RETURNS +# EXIT STATUS # 0 Pane opened successfully # 1 Not running inside Kitty or WezTerm # diff --git a/functions/sponge_filter_secrets.fish b/functions/sponge_filter_secrets.fish index 66ffa76..37aaef8 100644 --- a/functions/sponge_filter_secrets.fish +++ b/functions/sponge_filter_secrets.fish @@ -21,7 +21,7 @@ # exit_code Exit code of the command (unused) # previously_in_history "true"/"false" flag (unused) # -# RETURNS +# EXIT STATUS # 0 Command contains a secret value — filter out of history # 1 No secret value found — keep in history # diff --git a/functions/spwin.fish b/functions/spwin.fish index 4467343..54bbd04 100644 --- a/functions/spwin.fish +++ b/functions/spwin.fish @@ -14,7 +14,7 @@ # ARGUMENTS # args... Arguments forwarded to the spawn command # -# RETURNS +# EXIT STATUS # 0 Window opened successfully # 1 Not running inside Kitty or WezTerm # diff --git a/functions/sudo-toggle.fish b/functions/sudo-toggle.fish index af52653..e46547f 100644 --- a/functions/sudo-toggle.fish +++ b/functions/sudo-toggle.fish @@ -13,7 +13,7 @@ # otherwise require a password entry. Clears the sudo credential cache # when re-enabling, so the lockdown takes effect immediately. # -# RETURNS +# EXIT STATUS # 0 Rule toggled # # EXAMPLE diff --git a/functions/superpowers.fish b/functions/superpowers.fish index 2e8429e..dbd3781 100644 --- a/functions/superpowers.fish +++ b/functions/superpowers.fish @@ -18,7 +18,7 @@ # -g, --global Apply at user/global scope instead of workspace/project # -h, --help Show usage help # -# RETURNS +# EXIT STATUS # 0 Mode applied successfully # 1 No on/off mode specified # diff --git a/functions/tab.fish b/functions/tab.fish index d0f17a6..9b77440 100644 --- a/functions/tab.fish +++ b/functions/tab.fish @@ -15,7 +15,7 @@ # ARGUMENTS # args... Arguments forwarded to the terminal's launch command # -# RETURNS +# EXIT STATUS # 0 Tab opened successfully # 1 No supported terminal found # diff --git a/functions/upgrade.fish b/functions/upgrade.fish index 9c9974e..296f56d 100644 --- a/functions/upgrade.fish +++ b/functions/upgrade.fish @@ -11,7 +11,7 @@ # Runs a full system upgrade via paru or yay with --noconfirm. Falls # back to yay if paru is not installed. Arch Linux only. # -# RETURNS +# EXIT STATUS # 0 Upgrade completed successfully # 1 No AUR helper (paru or yay) found # diff --git a/functions/wake-lock.fish b/functions/wake-lock.fish index 22db62b..7fdd018 100644 --- a/functions/wake-lock.fish +++ b/functions/wake-lock.fish @@ -15,7 +15,7 @@ # command Command to run with sleep inhibition active # args... Arguments forwarded to the command # -# RETURNS +# EXIT STATUS # 0 Command ran and completed # 1 No command provided # diff --git a/functions/y.fish b/functions/y.fish index b965c3f..10444f9 100644 --- a/functions/y.fish +++ b/functions/y.fish @@ -14,7 +14,7 @@ # ARGUMENTS # text Text to copy; reads from stdin if omitted # -# RETURNS +# EXIT STATUS # 0 Text copied to clipboard # 1 No clipboard provider found # diff --git a/functions/zoxide.fish b/functions/zoxide.fish index 349083f..618755a 100644 --- a/functions/zoxide.fish +++ b/functions/zoxide.fish @@ -60,7 +60,7 @@ end # ARGUMENTS # check The string to compare against the first non-switch token # -# RETURNS +# EXIT STATUS # 0 First token equals check # 1 No token or token does not match #