From 2c648c80c83de50620e4c216a59024398f4e152e Mon Sep 17 00:00:00 2001 From: Fabian Homborg Date: Fri, 11 Sep 2015 11:31:04 +0200 Subject: docs: Improve autoloading/event documentation The thing that says "event handlers can't be autoloaded, put it in config.fish". I make good words. --- doc_src/funcsave.txt | 2 +- doc_src/index.hdr.in | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'doc_src') diff --git a/doc_src/funcsave.txt b/doc_src/funcsave.txt index d47ae8e7..32b3f4f3 100644 --- a/doc_src/funcsave.txt +++ b/doc_src/funcsave.txt @@ -9,4 +9,4 @@ funcsave FUNCTION_NAME `funcsave` saves the current definition of a function to a file in the fish configuration directory. This function will be automatically loaded by current and future fish sessions. This can be useful if you have interactively created a new function and wish to save it for later use. -Note that event handlers will not be executed before they are loaded. +Note that because fish loads functions on-demand, saved functions will not function as event handlers until they are run or sourced otherwise. To activate an event handler for every new shell, add the function to your shell initialization file instead of using `funcsave`. diff --git a/doc_src/index.hdr.in b/doc_src/index.hdr.in index 978a9845..b3f0db92 100644 --- a/doc_src/index.hdr.in +++ b/doc_src/index.hdr.in @@ -251,7 +251,7 @@ The default value for `$fish_function_path` is `~/.config/fish/functions` `/etc/ It is very important that function definition files only contain the definition for the specified function and nothing else. Otherwise, it is possible that autoloading a function files requires that the function already be loaded, which creates a circular dependency. -Autoloading also won't work for event handlers, since fish cannot know that a function is supposed to be executed when an event occurs when it hasn't yet loaded the function. +Autoloading also won't work for event handlers, since fish cannot know that a function is supposed to be executed when an event occurs when it hasn't yet loaded the function. See there for details. \subsubsection syntax-conditional Conditional execution of code and flow control @@ -1115,7 +1115,7 @@ function --on-signal WINCH my_signal_handler end \endfish -Please note that event handlers only become active when a function is loaded which means you might need to manually source a function's file instead of relying on autoloading. +Please note that event handlers only become active when a function is loaded, which means you might need to otherwise source or execute a function instead of relying on autoloading. One approach is to put it into your initialization file. For more information on how to define new event handlers, see the documentation for the function command. -- cgit v1.2.3