# HG changeset patch # User Richard M. Stallman # Date 1121629676 0 # Node ID c8d5956c919bc4cd7902c3609a85dd06f66580c3 # Parent 2ef3675bf3a928e9ed530cea5eb595a50567d9b2 (Init Examples): Clean up text about conditionals. diff -r 2ef3675bf3a9 -r c8d5956c919b man/custom.texi --- a/man/custom.texi Sun Jul 17 07:44:34 2005 +0000 +++ b/man/custom.texi Sun Jul 17 19:47:56 2005 +0000 @@ -2313,42 +2313,37 @@ @end example @item -Adjusting the configuration to various contexts. - -In most of the cases, people want their Emacs to behave the same on -all their machines, so their configuration should be the same, no -matter whether it's GNU/Linux or not, under X11 or on a tty, with one -version of Emacs or another, ... +Adjusting the configuration to various platforms and Emacs versions. -What can happen, tho, is that depending on the circumstance some -features may or may not be available. In that case just prepend each -such customization with a little test that ensures that the feature -can be used. The best tests are usually checking that the feature is -available, rather than checking what kind of environment is -being used. +Users typically want Emacs to behave the same on all systems, so the +same init file is right for all platforms. However, sometimes it +happens that a function you use for customizing Emacs is not available +on some platforms or in older Emacs versions. To deal with that +situation, put the customization inside a conditional that tests whether +the function or facility is available, like this: @example -(if (fboundp 'blinking-cursor-mode) - (blinking-cursor-mode 0)) +(if (fboundp 'blink-cursor-mode) + (blink-cursor-mode 0)) + +(if (boundp 'coding-category-utf-8) + (set-coding-priority '(coding-category-utf-8))) @end example -@example -(if (boundp 'coding-category-utf-8) - (set-coding-priority '(coding-category-utf-8))) -@end example +@noindent +You can also simply disregard the errors that occur if the +function is not defined. @example -(require 'cl) ; To define `ignore-errors'. -(ignore-errors (set-face-background 'region "grey75")) +(condition case () + (set-face-background 'region "grey75") + (error nil)) @end example -Note also that a @code{setq} on a variable which does not exist is -generally harmless, so those usually do not need to be made -conditional on any kind of test. - +A @code{setq} on a variable which does not exist is generally +harmless, so those do not need a conditional. @end itemize - @node Terminal Init @subsection Terminal-specific Initialization