Variable: so-long-file-local-mode-function
so-long-file-local-mode-function is a customizable and buffer-local
variable defined in so-long.el.gz.
Documentation
Function to call during set-auto-mode when a file-local mode is set.
This affects the behavior of global-so-long-mode(var)/global-so-long-mode(fun).
The specified function will be called with a single argument, being the file-local mode which was established.
This happens before so-long is called, and so this function can modify the
subsequent action.
The value so-long-mode-downgrade means so-long-minor-mode(var)/so-long-minor-mode(fun) will be used in
place of so-long-mode -- therefore respecting the file-local mode value, yet
still overriding minor modes and variables (as if so-long-action had been set
to so-long-minor-mode(var)/so-long-minor-mode(fun)).
The value so-long-inhibit means that global-so-long-mode(var)/global-so-long-mode(fun) will not take any
action at all for this file.
If nil, then do not treat files with file-local modes any differently to other files.
Note that this function is called if a file-local mode is set even if so-long
will not be called, and also if the file-local mode is so-long-mode. Custom
functions may need to test for these cases -- see so-long-mode-downgrade for
an example.
This variable was added, or its default value changed, in so-long version 1.0.
Source Code
;; Defined in /usr/src/emacs/lisp/so-long.el.gz
(defcustom so-long-file-local-mode-function 'so-long-mode-downgrade
"Function to call during `set-auto-mode' when a file-local mode is set.
This affects the behavior of `global-so-long-mode'.
The specified function will be called with a single argument, being the
file-local mode which was established.
This happens before `so-long' is called, and so this function can modify the
subsequent action.
The value `so-long-mode-downgrade' means `so-long-minor-mode' will be used in
place of `so-long-mode' -- therefore respecting the file-local mode value, yet
still overriding minor modes and variables (as if `so-long-action' had been set
to `so-long-minor-mode').
The value `so-long-inhibit' means that `global-so-long-mode' will not take any
action at all for this file.
If nil, then do not treat files with file-local modes any differently to other
files.
Note that this function is called if a file-local mode is set even if `so-long'
will not be called, and also if the file-local mode is `so-long-mode'. Custom
functions may need to test for these cases -- see `so-long-mode-downgrade' for
an example."
:type '(radio (const so-long-mode-downgrade)
(const so-long-inhibit)
(const :tag "nil: Use so-long-function as normal" nil)
(function :tag "Custom function"))
:package-version '(so-long . "1.0"))