Function: emerge-defvar-local
emerge-defvar-local is a macro defined in emerge.el.gz.
Signature
(emerge-defvar-local SYMBOL VALUE &optional DOC)
Documentation
Define SYMBOL as an advertised buffer-local variable.
Run defvar-local, setting the value of the variable to VALUE
and its docstring to DOC.
Then set the permanent-local property, so that
kill-all-local-variables (called by major-mode setting
commands) won't destroy Emerge control variables.
Source Code
;; Defined in /usr/src/emacs/lisp/vc/emerge.el.gz
;;; emerge.el --- merge diffs under Emacs control -*- lexical-binding:t -*-
;; The author has placed this file in the public domain.
;; This file is part of GNU Emacs.
;; Author: Dale R. Worley <worley@world.std.com>
;; Keywords: unix, vc, tools
;; This software was created by Dale R. Worley and is
;; distributed free of charge. It is placed in the public domain and
;; permission is granted to anyone to use, duplicate, modify and redistribute
;; it provided that this notice is attached.
;; Dale R. Worley provides absolutely NO WARRANTY OF ANY KIND
;; with respect to this software. The entire risk as to the quality and
;; performance of this software is with the user. IN NO EVENT WILL DALE
;; R. WORLEY BE LIABLE TO ANYONE FOR ANY DAMAGES ARISING OUT THE
;; USE OF THIS SOFTWARE, INCLUDING, WITHOUT LIMITATION, DAMAGES RESULTING FROM
;; LOST DATA OR LOST PROFITS, OR FOR ANY SPECIAL, INCIDENTAL OR CONSEQUENTIAL
;; DAMAGES.
;;; Commentary:
;;; Code:
;;; Macros
(defmacro emerge-defvar-local (symbol value &optional doc)
"Define SYMBOL as an advertised buffer-local variable.
Run `defvar-local', setting the value of the variable to VALUE
and its docstring to DOC.
Then set the `permanent-local' property, so that
`kill-all-local-variables' (called by major-mode setting
commands) won't destroy Emerge control variables."
(declare (indent defun) (doc-string 3))
`(progn
(defvar-local ,symbol ,value ,doc)
(put ',symbol 'permanent-local t)))