| FUNCSAVE(1) | fish-shell | FUNCSAVE(1) |
NAME
funcsave - save the definition of a function to the user's autoload directory
SYNOPSIS
funcsave FUNCTION_NAME funcsave [-q | --quiet] [(-d | --directory) DIR] FUNCTION_NAME
DESCRIPTION
funcsave saves a function to a file in the fish configuration directory. This function will be automatically loaded <#syntax-function-autoloading> by current and future fish sessions. This can be useful to commit functions created interactively for permanent use.
If you have erased a function using functions <>'s --erase option, funcsave will remove the saved function definition.
Because fish loads functions on-demand, saved functions cannot serve as event handlers <#event> until they are run or otherwise sourced. To activate an event handler for every new shell, add the function to the configuration file <#configuration> instead of using funcsave.
This is often used after funced <>, which opens the function in $EDITOR or $VISUAL and loads it into the current session afterwards.
To view a function's current definition, use functions <> or type <>.
Copyright
fish-shell developers
| October 15, 2026 | 4.9 |