Next: Customization Types, Previous: Group Definitions, Up: Customization [Contents][Index]
defcustom
¤ò»È¤Ã¤Æ¡¢¥æ¡¼¥¶¡¼¤¬ÊÔ½¸²Äǽ¤ÊÊÑ¿ô¤òÀë¸À¤·¤Þ¤¹¡£
¥«¥¹¥¿¥Þ¥¤¥º²Äǽ¤Ê¥æ¡¼¥¶¡¼¥ª¥×¥·¥ç¥óÊÑ¿ô¤È¤·¤Æoption¤òÀë¸À¤¹¤ë¡£ option¤ò¥¯¥©¡¼¥È¤·¤Ê¤¤¤³¤È¡£ °ú¿ôdoc¤ÏÊÑ¿ô¤ÎÀâÌÀʸ»úÎó¤ò»ØÄꤹ¤ë¡£
option¤¬¶õ¤Ç¤¢¤ë¤È¡¢defcustom
¤Ïdefault¤Ç½é´ü²½¤¹¤ë¡£
default¤ÏÃͤò·×»»¤¹¤ë¼°¤Ç¤¢¤ë¤³¤È¡£
¤³¤ì¤ÏÊ£¿ô²óɾ²Á¤µ¤ì¤ë²ÄǽÀ¤¬¤¢¤ë¤Î¤Ç¡¢½ñ¤Êý¤Ë¤ÏÃí°Õ¤¹¤ë¤³¤È¡£
defcustom
¤Ç¤Ï¡¢¤Ä¤®¤ÎÄɲ塼¥ï¡¼¥É¤â»È¤¨¤Þ¤¹¡£
:type type
¤³¤Î¥ª¥×¥·¥ç¥ó¤Î¥Ç¡¼¥¿·¿¤È¤·¤Ætype¤ò»È¤¦¡£ ¤³¤ì¤Ï¡¢Àµ¤·¤¤ÃͤȤ½¤Îɽ¼¨ÊýË¡¤ò»ØÄꤹ¤ë¡£ ¾Ü¤·¤¯¤Ï¡¢see Customization Types¡£
:options list
¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë»È¤¨¤ë¹çÍýŪ¤ÊÃͤΥꥹ¥È¤È¤·¤Ælist¤ò»ØÄꤹ¤ë¡£
¤³¤ì¤Ï¡¢¸½»þÅÀ¤Ç¤Ï¡¢·¿¤¬hook
¤Î¤È¤¤À¤±°ÕÌ£¤ò»ý¤Ä¡£
¤½¤Î¾ì¹ç¡¢list¤ÎÍ×ÁǤϡ¢¥Õ¥Ã¥¯¤ÎÃͤÎÍ×ÁǤȤ·¤Æ»È¤¨¤ë´Ø¿ô¤Ç¤¢¤ë¤³¤È¡£
¥æ¡¼¥¶¡¼¤Ï¤³¤ì¤é¤Î´Ø¿ô°Ê³°¤â»È¤¨¤ë¤¬¡¢ÊØÍø¤ÊÁªÂò»è¤È¤·¤ÆÄ󼨤¹¤ë¡£
:version version
¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢ÊÑ¿ô¤òºÇ½é¤ËƳÆþ¤·¤¿¤ê¡¢¥Ç¥Õ¥©¥ë¥ÈÃͤòÊѹ¹¤·¤¿¤ê¤·¤¿ Emacs¤ÎÈÇversion¤ò»ØÄꤹ¤ë¡£ ÃÍversion¤Ï¡¢Ê¸»úÎó¤Ç¤¢¤ë¤³¤È¡£ ¤¿¤È¤¨¤Ð¡¢¤Ä¤®¤Î¤È¤ª¤ê¡£
(defcustom foo-max 34 "*Maximum number of foo's allowed." :type 'integer :group 'foo :version "20.3")
:set setfunction
¤³¤Î¥ª¥×¥·¥ç¥ó¤ÎÃͤòÊѹ¹¤¹¤ëÊýË¡¤È¤·¤Æsetfunction¤ò»ØÄꤹ¤ë¡£
´Ø¿ôsetfunction¤Ï¡¢2¤Ä¤Î°ú¿ô¡¢¤Ä¤Þ¤ê¡¢¥·¥ó¥Ü¥ë¤È¿·¤·¤¤Ãͤò¼è¤ê¡¢
¤³¤Î¥ª¥×¥·¥ç¥ó¤ÎÃͤò¡ÊLispÊÑ¿ô¤È¤·¤Æ¥ª¥×¥·¥ç¥ó¤òÀßÄꤹ¤ë¤À¤±¤Ç¤Ê¤¯¡Ë
ŬÀڤ˹¹¿·¤¹¤ë¤¿¤á¤ËɬÍפʤ³¤È¤ò¹Ô¤¦¤³¤È¡£
setfunction¤Î¥Ç¥Õ¥©¥ë¥È¤Ïset-default
¡£
:get getfunction
¤³¤Î¥ª¥×¥·¥ç¥ó¤ÎÃͤò¼è¤ê½Ð¤¹ÊýË¡¤È¤·¤Ægetfunction¤ò»ØÄꤹ¤ë¡£
´Ø¿ôgetfunction¤Ï¡¢1¤Ä¤Î°ú¿ô¡¢¤Ä¤Þ¤ê¡¢¥·¥ó¥Ü¥ë¤ò¼è¤ê¡¢
¤½¤Î¥·¥ó¥Ü¥ë¡Ê¤ÎLispÃͤȤÏɬ¤º¤·¤â¸Â¤é¤Ê¤¤¡Ë¤Î¡Ø¸½ºßÃ͡٤òÊÖ¤¹¤³¤È¡£
¥Ç¥Õ¥©¥ë¥È¤Ïdefault-value
¡£
:initialize function
function¤Ï¡¢defcustom
¤òɾ²Á¤·¤¿¤È¤¤ËÊÑ¿ô¤Î½é´ü²½¤Ë»È¤¦´Ø¿ô¡£
¤³¤Î´Ø¿ô¤Ï¡¢2¤Ä¤Î°ú¿ô¡¢¤Ä¤Þ¤ê¡¢¥·¥ó¥Ü¥ë¤ÈÃͤò¼è¤ë¤³¤È¡£
¤³¤Î¤è¤¦¤Ë»È¤¦¤³¤È¤ò°Õ¿Þ¤·¤¿ÄêµÁºÑ¤ß¤Î´Ø¿ô¤¬¤¤¤¯¤Ä¤«¤¢¤ë¡£
custom-initialize-set
ÊÑ¿ô¤Î:set
´Ø¿ô¤ò»È¤Ã¤ÆÊÑ¿ô¤ò½é´ü²½¤¹¤ë¤¬¡¢
ÊÑ¿ô¤ÎÃͤ¬¶õ¤Ç¤Ê¤¤¤È¤¤Ë¤ÏºÆ½é´ü²½¤·¤Ê¤¤¡£
¤³¤ì¤Ï:initialize
¤Î¥Ç¥Õ¥©¥ë¥È¡£
custom-initialize-default
custom-initialize-set
¤Ë»÷¤Æ¤¤¤ë¤¬¡¢
ÊÑ¿ô¤Î:set
´Ø¿ô¤Î¤«¤ï¤ê¤Ë´Ø¿ôset-default
¤ò»È¤Ã¤ÆÊÑ¿ô¤òÀßÄꤹ¤ë¡£
ÊÑ¿ô¤Î:set
´Ø¿ô¤¬¥Þ¥¤¥Ê¥â¡¼¥É¤ò¥ª¥ó¡¿¥ª¥Õ¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢
ÉáÄ̤Ϥ³¤ì¤òÁª¤Ö¡£
¤³¤ì¤òÁª¤Ö¤È¡¢ÊÑ¿ô¤òÄêµÁ¤·¤Æ¤â¥Þ¥¤¥Ê¥â¡¼¥É´Ø¿ô¤ò¸Æ¤Ó½Ð¤µ¤Ê¤¤¤¬¡¢
ÊÑ¿ô¤ò¥«¥¹¥¿¥Þ¥¤¥º¤¹¤ë¤È¥Þ¥¤¥Ê¥â¡¼¥É´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹¡£
custom-initialize-reset
ÊÑ¿ô¤ò½é´ü²½¤¹¤ë¤Ë¤Ï¤Ä¤Í¤Ë:set
´Ø¿ô¤ò»È¤¦¡£
ÊÑ¿ô¤ÎÃͤ¬¶õ¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢¡Ê:get
¤ÇÆÀ¤é¤ì¤ë¡Ë¸½ºßÃͤÇ
:set
´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢ÊÑ¿ô¤ò¥ê¥»¥Ã¥È¤¹¤ë¡£
custom-initialize-changed
ÊÑ¿ô¤¬¤¹¤Ç¤ËÀßÄꤵ¤ì¤Æ¤¤¤¿¤ê¥«¥¹¥¿¥Þ¥¤¥º¤·¤Æ¤¢¤ë¤È¤¤Ë¡¢
ÊÑ¿ô¤ò½é´ü²½¤¹¤ë¤¿¤á¤Ë:set
´Ø¿ô¤ò»È¤¦¡£
¤µ¤â¤Ê¤±¤ì¤Ð¡¢set-default
¤ò»È¤¦¡£
:require
¥ª¥×¥·¥ç¥ó¤Ï¡¢
ÆÃÄê¤Îµ¡Ç½¤ò¥ª¥ó¤Ë¤¹¤ë¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤Ë¤ÏÊØÍø¤Ç¤¹¡£
¥Ñ¥Ã¥±¡¼¥¸¤¬¥ª¥×¥·¥ç¥óÊÑ¿ô¤ÎÃͤò¸¡ºº¤¹¤ë¤è¤¦¤Ë½ñ¤«¤ì¤Æ¤¤¤¿¤È¤·¤Æ¤â¡¢
¥Ñ¥Ã¥±¡¼¥¸¤ò¥í¡¼¥É¤¹¤ë¤è¤¦¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¤³¤ì¤ò:require
¤Ç¹Ô¤¨¤ë¤Î¤Ç¤¹¡£
See Common Keywords¡£
¥é¥¤¥Ö¥é¥êparen.el¤«¤é¤È¤Ã¤¿Îã¤ò¤Ä¤®¤Ë¼¨¤·¤Þ¤¹¡£
(defcustom show-paren-mode nil "Toggle Show Paren mode..." :set (lambda (symbol value) (show-paren-mode (or value 0))) :initialize 'custom-initialize-default :type 'boolean :group 'paren-showing :require 'paren)
ÆâÉôŪ¤Ë¤Ï¡¢defcustom
¤Ï¡¢
¥Ç¥Õ¥©¥ë¥ÈÃͤòÍ¿¤¨¤ë¼°¤Ï°Àstandard-value
¤ò»È¤Ã¤ÆµÏ¿¤·¡¢
¥æ¡¼¥¶¡¼¤¬¥«¥¹¥¿¥Þ¥¤¥º¥Ð¥Ã¥Õ¥¡¤ÇÊݸ¤·¤¿ÃͤÏ
°Àsaved-value
¤ò»È¤Ã¤ÆµÏ¿¤·¤Æ¤¤¤Þ¤¹¡£
°Àsaved-value
¤Ï¼ÂºÝ¤Ë¤Ï¥ê¥¹¥È¤Ç¤¢¤ê¡¢
¤½¤ÎCAR¤¬ÃͤËɾ²Á¤µ¤ì¤ë¼°¤Ç¤¹¡£