;;; align.el --- align text to a specific column, by regexp
;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
;;; align.el --- align text to a specific column, by regexp
;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
-;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
If `align-to-tab-stop' is non-nil, this will represent the number of
tab stops to use for alignment, rather than the number of spaces.
If `align-to-tab-stop' is non-nil, this will represent the number of
tab stops to use for alignment, rather than the number of spaces.
It may also be a symbol, whose value will be taken."
:type '(choice (const nil) symbol)
:group 'align)
(defcustom align-region-heuristic 500
It may also be a symbol, whose value will be taken."
:type '(choice (const nil) symbol)
:group 'align)
(defcustom align-region-heuristic 500
Since each alignment rule can possibly have its own set of alignment
sections (whenever `align-region-separate' is non-nil, and not a
string), this heuristic is used to determine how far before and after
point we should search in looking for a region separator. Larger
Since each alignment rule can possibly have its own set of alignment
sections (whenever `align-region-separate' is non-nil, and not a
string), this heuristic is used to determine how far before and after
point we should search in looking for a region separator. Larger
-values can mean slower perform in large files, although smaller values
-may cause unexpected behavior at times."
+values can mean slower performance in large files, although smaller
+values may cause unexpected behavior at times."
- "*If an integer, defines what constitutes a \"large\" region.
-If nil,then no messages will ever be printed to the minibuffer."
+ "If an integer, defines what constitutes a \"large\" region.
+If nil, then no messages will ever be printed to the minibuffer."
:type '(repeat symbol)
:group 'align)
(defcustom align-open-comment-modes
(append align-lisp-modes align-c++-modes align-perl-modes
'(python-mode makefile-mode))
:type '(repeat symbol)
:group 'align)
(defcustom align-open-comment-modes
(append align-lisp-modes align-c++-modes align-perl-modes
'(python-mode makefile-mode))
- "*A list of modes with a single-line comment syntax.
-These are comments as in Lisp, which have a beginning but, end with
+ "A list of modes with a single-line comment syntax.
+These are comments as in Lisp, which have a beginning, but end with
the line (i.e., `comment-end' is an empty string)."
:type '(repeat symbol)
:group 'align)
(defcustom align-region-separate "^\\s-*[{}]?\\s-*$"
the line (i.e., `comment-end' is an empty string)."
:type '(repeat symbol)
:group 'align)
(defcustom align-region-separate "^\\s-*[{}]?\\s-*$"
If this is a symbol, that symbol's value will be used.
For the sake of clarification, consider the following example, which
If this is a symbol, that symbol's value will be used.
For the sake of clarification, consider the following example, which
`group' Each contiguous set of lines where a specific alignment
occurs is considered a section for that alignment rule.
`group' Each contiguous set of lines where a specific alignment
occurs is considered a section for that alignment rule.
between sections, the behavior will be very similar to
`largest', and faster. But if the mode does not use clear
separators (for example, if you collapse your braces onto
between sections, the behavior will be very similar to
`largest', and faster. But if the mode does not use clear
separators (for example, if you collapse your braces onto
both of these parameters will be nil, in which case the
function should return non-nil if it wants each rule to
define its own section, or nil if it wants the largest
both of these parameters will be nil, in which case the
function should return non-nil if it wants each rule to
define its own section, or nil if it wants the largest
list A list of markers within the buffer that represent where
the section dividers lie. Be certain to use markers! For
list A list of markers within the buffer that represent where
the section dividers lie. Be certain to use markers! For
the purposes of alignment. The \"alignment character\" is
always the first character immediately following this
parenthesis group. This attribute may also be a list of
the purposes of alignment. The \"alignment character\" is
always the first character immediately following this
parenthesis group. This attribute may also be a list of
- integer, in which case multiple alignment characters will
- be aligned, with the list of integer identifying the
+ integers, in which case multiple alignment characters will
+ be aligned, with the list of integers identifying the
`case-fold' If `regexp' is an ordinary regular expression string
containing alphabetic character, sometimes you may want
the search to proceed case-insensitively (for languages
`case-fold' If `regexp' is an ordinary regular expression string
containing alphabetic character, sometimes you may want
the search to proceed case-insensitively (for languages
case, set `case-fold' to a non-nil value, and the regular
expression search will ignore case. If `regexp' is set to
a function, that function must handle the job of ignoring
case, set `case-fold' to a non-nil value, and the regular
expression search will ignore case. If `regexp' is set to
a function, that function must handle the job of ignoring
;; if the search ended us on the beginning of
;; the next line, move back to the end of the
;; previous line.
;; if the search ended us on the beginning of
;; the next line, move back to the end of the
;; previous line.
;; when they are no more matches for this rule,
;; align whatever was left over
;; when they are no more matches for this rule,
;; align whatever was left over