;;; allout.el --- extensive outline mode for use alone and with other modes
-;; Copyright (C) 1992-1994, 2001-2015 Free Software Foundation, Inc.
+;; Copyright (C) 1992-1994, 2001-2016 Free Software Foundation, Inc.
;; Author: Ken Manheimer <ken dot manheimer at gmail...>
;; Maintainer: Ken Manheimer <ken dot manheimer at gmail...>
See `allout-plain-bullets-string' for the standard, alternating
bullets.
-You must run `set-allout-regexp' in order for outline mode to
+You must run `allout-set-regexp' in order for outline mode to
adopt changes of this value.
DO NOT include the close-square-bracket, `]', on either of the bullet
:group 'allout)
;;;_ - allout-title
(defcustom allout-title '(or buffer-file-name (buffer-name))
- "Expression to be evaluated to determine the title for LaTeX
-formatted copy."
+ "Expression to evaluate to determine the title for LaTeX formatted copy."
:type 'sexp
+ :risky t
:group 'allout)
;;;_ - allout-line-skip
(defcustom allout-line-skip ".05cm"
automatically activated. The layout dictated by the value will be used to
set the initial exposure when `allout-mode' is activated.
-\*You should not setq-default this variable non-nil unless you want every
+*You should not setq-default this variable non-nil unless you want every
visited file to be treated as an allout file.*
The value would typically be set by a file local variable. For
Any line whose beginning matches this regexp is considered a
heading. This var is set according to the user configuration vars
-by `set-allout-regexp'.")
+by `allout-set-regexp'.")
(make-variable-buffer-local 'allout-regexp)
;;;_ = allout-bullets-string
(defvar allout-bullets-string ""
"A string dictating the valid set of outline topic bullets.
-This var should *not* be set by the user -- it is set by `set-allout-regexp',
+This var should *not* be set by the user -- it is set by `allout-set-regexp',
and is produced from the elements of `allout-plain-bullets-string'
and `allout-distinctive-bullets-string'.")
(make-variable-buffer-local 'allout-bullets-string)
for to seek topics at depth one.
This var is set according to the user configuration vars by
-`set-allout-regexp'. It is prepared with format strings for two
+`allout-set-regexp'. It is prepared with format strings for two
decimal numbers, which should each be one less than the depth of the
topic prefix to be matched.")
(make-variable-buffer-local 'allout-depth-specific-regexp)
"Regular expression to match a heading line prefix for depth one.
This var is set according to the user configuration vars by
-`set-allout-regexp'. It is prepared with format strings for two
+`allout-set-regexp'. It is prepared with format strings for two
decimal numbers, which should each be one less than the depth of the
topic prefix to be matched.")
(make-variable-buffer-local 'allout-depth-one-regexp)
(defvar allout-line-boundary-regexp ()
"`allout-regexp' prepended with a newline for the search target.
-This is properly set by `set-allout-regexp'.")
+This is properly set by `allout-set-regexp'.")
(make-variable-buffer-local 'allout-line-boundary-regexp)
;;;_ = allout-bob-regexp
(defvar allout-bob-regexp ()
(make-variable-buffer-local 'allout-header-subtraction)
;;;_ = allout-plain-bullets-string-len
(defvar allout-plain-bullets-string-len (length allout-plain-bullets-string)
- "Length of `allout-plain-bullets-string', updated by `set-allout-regexp'.")
+ "Length of `allout-plain-bullets-string', updated by `allout-set-regexp'.")
(make-variable-buffer-local 'allout-plain-bullets-string-len)
;;;_ = allout-doublecheck-at-and-shallower
(interactive "sNew lead string: ")
(setq allout-header-prefix header-lead)
(setq allout-header-subtraction (1- (length allout-header-prefix)))
- (set-allout-regexp))
+ (allout-set-regexp))
;;;_ X allout-lead-with-comment-string (header-lead)
(defun allout-lead-with-comment-string (&optional header-lead)
"Set the topic-header leading string to specified string.
comment-start
(not (eq 'force allout-reindent-bodies)))
(setq allout-reindent-bodies nil)))
-;;;_ > set-allout-regexp ()
-(defun set-allout-regexp ()
+;;;_ > allout-set-regexp ()
+(defun allout-set-regexp ()
"Generate proper topic-header regexp form for outline functions.
Works with respect to `allout-plain-bullets-string' and
"[^" allout-primary-bullet "]"))
"\\)"
))))
+(define-obsolete-function-alias 'set-allout-regexp 'allout-set-regexp "25.2")
;;;_ : Menu bar
(defvar allout-mode-exposure-menu)
(defvar allout-mode-editing-menu)
(defvar allout-mode-navigation-menu)
(defvar allout-mode-misc-menu)
-(defun produce-allout-mode-menubar-entries ()
+(defun allout-produce-mode-menubar-entries ()
(require 'easymenu)
(easy-menu-define allout-mode-exposure-menu
allout-mode-map-value
It consists of an encrypted random string useful only to verify that a
passphrase entered by the user is effective for decryption. The passphrase
-itself is \*not* recorded in the file anywhere, and the encrypted contents
+itself is *not* recorded in the file anywhere, and the encrypted contents
are random binary characters to avoid exposing greater susceptibility to
search attacks.
(allout-infer-header-lead-and-primary-bullet)
(allout-infer-body-reindent)
- (set-allout-regexp)
+ (allout-set-regexp)
(allout-add-resumptions '(allout-encryption-ciphertext-rejection-regexps
allout-line-boundary-regexp
extend)
extend))
(allout-compose-and-institute-keymap)
- (produce-allout-mode-menubar-entries)
+ (allout-produce-mode-menubar-entries)
(add-to-invisibility-spec '(allout . t))
allout-recent-prefix-beginning
allout-header-subtraction)))
allout-recent-prefix-beginning)
-;;;_ > nullify-allout-prefix-data ()
-(defsubst nullify-allout-prefix-data ()
+;;;_ > allout-nullify-prefix-data ()
+(defsubst allout-nullify-prefix-data ()
"Mark allout prefix data as being uninformative."
(setq allout-recent-prefix-end (point)
allout-recent-prefix-beginning (point)
allout-recent-depth
(progn
;; Oops, no prefix, nullify it:
- (nullify-allout-prefix-data)
+ (allout-nullify-prefix-data)
;; ... and return 0:
0)))))
;;;_ > allout-current-depth ()
(let* ((default-bullet (or (and (stringp current-bullet) current-bullet)
(allout-bullet-for-depth depth)))
- (sans-escapes (regexp-sans-escapes allout-bullets-string))
+ (sans-escapes (allout-regexp-sans-escapes allout-bullets-string))
choice)
(save-excursion
(goto-char (allout-current-bullet-pos))
- (setq choice (solicit-char-in-string
+ (setq choice (allout-solicit-char-in-string
(format-message
"Select bullet: %s (`%s' default): "
sans-escapes
(save-match-data
(let* ((inhibit-field-text-motion t)
(depth (+ (allout-current-depth) relative-depth))
- (opening-on-blank (if (looking-at "^\$")
+ (opening-on-blank (if (looking-at "^$")
(not (setq before nil))))
;; bunch o vars set while computing ref-topic
opening-numbered
;; Specified but not a buffer -- get it:
(let ((got (get-buffer frombuf)))
(if (not got)
- (error (concat "allout-process-exposed: source buffer "
- frombuf
- " not found."))
+ (error "allout-process-exposed: source buffer %s not found."
+ frombuf)
(setq frombuf got))))
;; not specified -- default it:
(setq frombuf (current-buffer)))
encryption are encrypted. See `allout-encrypt-unencrypted-on-saves'
for auto-encryption specifics.
-\*NOTE WELL* that automatic encryption that happens during saves will
+*NOTE WELL* that automatic encryption that happens during saves will
default to symmetric encryption -- you must deliberately (re)encrypt key-pair
encrypted topics if you want them to continue to use the key-pair cipher.
;; we had to wait for this 'til now so prior topics are
;; encrypted, any relevant text shifts are in place:
editing-point (- current-mark-position
- (count-trailing-whitespace-region
+ (allout-count-trailing-whitespace-region
bo-subtree current-mark-position))))
(allout-toggle-subtree-encryption)
(if (not was-modified)
(allout-end-of-current-subtree)
(exchange-point-and-mark))
;;;_ : UI:
-;;;_ > solicit-char-in-string (prompt string &optional do-defaulting)
-(defun solicit-char-in-string (prompt string &optional do-defaulting)
+;;;_ > allout-solicit-char-in-string (prompt string &optional do-defaulting)
+(defun allout-solicit-char-in-string (prompt string &optional do-defaulting)
"Solicit (with first arg PROMPT) choice of a character from string STRING.
Optional arg DO-DEFAULTING indicates to accept empty input (CR)."
got)
)
;;;_ : Strings:
-;;;_ > regexp-sans-escapes (string)
-(defun regexp-sans-escapes (regexp &optional successive-backslashes)
+;;;_ > allout-regexp-sans-escapes (string)
+(defun allout-regexp-sans-escapes (regexp &optional successive-backslashes)
"Return a copy of REGEXP with all character escapes stripped out.
Representations of actual backslashes -- `\\\\\\\\' -- are left as a
(if (or (not successive-backslashes) (= 2 successive-backslashes))
;; Include first char:
(concat (substring regexp 0 1)
- (regexp-sans-escapes (substring regexp 1)))
+ (allout-regexp-sans-escapes (substring regexp 1)))
;; Exclude first char, but maintain count:
- (regexp-sans-escapes (substring regexp 1) successive-backslashes))))
-;;;_ > count-trailing-whitespace-region (beg end)
-(defun count-trailing-whitespace-region (beg end)
+ (allout-regexp-sans-escapes (substring regexp 1) successive-backslashes))))
+;;;_ > allout-count-trailing-whitespace-region (beg end)
+(defun allout-count-trailing-whitespace-region (beg end)
"Return number of trailing whitespace chars between BEG and END.
If BEG is bigger than END we return 0."
"Isearch (regexp) for topic with bullet BULLET."
(interactive)
(if (not bullet)
- (setq bullet (solicit-char-in-string
+ (setq bullet (allout-solicit-char-in-string
"ISearch for topic with bullet: "
- (regexp-sans-escapes allout-bullets-string))))
+ (allout-regexp-sans-escapes allout-bullets-string))))
(let ((isearch-regexp t)
(isearch-string (concat "^"