OS Manuals

funcsave(1)

funcsave - save the definition of a function to the user's autoload directory

FUNCSAVE(1) fish-shell FUNCSAVE(1)

funcsave - save the definition of a function to the user's autoload directory

funcsave FUNCTION_NAME
funcsave [-q | --quiet] [(-d | --directory) DIR] FUNCTION_NAME

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 <>.

fish-shell developers

October 12, 2026 4.9

fish 4.9.3-r2 · os · ingested 2026-10-13