Variable: sqlind-align-rules
sqlind-align-rules is a variable defined in sql-indent.el.
Value
Large value
((sql-arrow-lineup (regexp . "\\(\\s-*\\)=>\\(\\s-*\\)")
(modes quote (sql-mode)) (group 1 2)
(case-fold . t) (repeat . t))
(sql-assign-lineup (regexp . "^\\s-*\\S-+\\(\\s-*\\):=\\(\\s-*\\)")
(modes quote (sql-mode)) (group 1 2)
(case-fold . t) (repeat . t))
(sql-assign-lineup-2
(regexp . "^\\s-*\\S-+\\(\\s-+\\)\\S-+\\(\\s-*\\):=\\(\\s-*\\)")
(modes quote (sql-mode)) (group 1 2 3) (case-fold . t) (repeat . t))
(sql-param-lineup-in-out
(regexp . "\\(\\s-+\\)\\(in out\\|in\\|out\\)\\(\\s-+\\)")
(modes quote (sql-mode)) (group 1 3) (case-fold . t) (repeat . t))
(sql-equals (regexp . "[^:<>!]\\(\\s-*\\)=\\(\\s-*\\)[^>]")
(modes quote (sql-mode)) (group 1 2) (case-fold . t)
(valid
. #[0 "\212\300\225b\210\301\302`!8)?\207"
[1 3 syntax-ppss] 3])
(repeat . t))
(sql-comparison-operators
(regexp . "[^:]\\(\\s-*\\)[<>=!]+\\(\\s-*\\)[^>]")
(modes quote (sql-mode)) (group 1 2) (case-fold . t)
(valid
. #[0 "\212\300\225b\210\301\302`!8)?\207" [1 3 syntax-ppss] 3])
(repeat . t))
(sql-pipes (regexp . "[^:]\\(\\s-*\\)||\\(\\s-*\\)[^>]")
(modes quote (sql-mode)) (group 1 2) (case-fold . t)
(repeat . t))
(sql-select-lineup-column-names
(regexp . ".*?\\(\\s +\\)as\\(\\s +\\).*") (modes quote (sql-mode))
(group 1 2) (case-fold . t) (repeat . t)))
Documentation
Align rules for SQL codes.
These rules help aligning some SQL statements, such as the column names in select queries, or equal signs in update statements or where clauses.
To use it, select the region to be aligned and run M-x align (align).
See also align and align-rules-list
Source Code
;; Defined in /nix/store/jxjf2h9nnkdqnn1w1mr0ag8bqng2rlrs-emacs-packages-deps/share/emacs/site-lisp/elpa/sql-indent-1.7/sql-indent.el
;;;; Alignment rules
(defvar sqlind-align-rules
`(;; Line up the two side of arrow =>
(sql-arrow-lineup
(regexp . "\\(\\s-*\\)=>\\(\\s-*\\)")
(modes quote (sql-mode))
(group 1 2)
(case-fold . t)
(repeat . t))
;; Line up the two sides of an assigment
(sql-assign-lineup
(regexp . "^\\s-*\\S-+\\(\\s-*\\):=\\(\\s-*\\)")
(modes quote (sql-mode))
(group 1 2)
(case-fold . t)
(repeat . t))
;; lineup a variable declaration with an assignment
(sql-assign-lineup-2
(regexp . "^\\s-*\\S-+\\(\\s-+\\)\\S-+\\(\\s-*\\):=\\(\\s-*\\)")
(modes quote (sql-mode))
(group 1 2 3)
(case-fold . t)
(repeat . t))
;; Line up the two sides of in / out / in out parameter
(sql-param-lineup-in-out
(regexp . "\\(\\s-+\\)\\(in out\\|in\\|out\\)\\(\\s-+\\)")
(modes quote (sql-mode))
(group 1 3)
(case-fold . t)
(repeat . t))
;; Line up the two sides of an equal sign in an update expression
(sql-equals
(regexp . "[^:<>!]\\(\\s-*\\)=\\(\\s-*\\)[^>]")
(modes quote (sql-mode))
(group 1 2)
(case-fold . t)
(valid . ,(function (lambda ()
(save-excursion
(goto-char (match-end 1))
(not (nth 3 (syntax-ppss (point))))))))
(repeat . t))
(sql-comparison-operators ; see issue #47
(regexp . "[^:]\\(\\s-*\\)[<>=!]+\\(\\s-*\\)[^>]")
(modes quote (sql-mode))
(group 1 2)
(case-fold . t)
(valid . ,(function (lambda ()
(save-excursion
(goto-char (match-end 1))
(not (nth 3 (syntax-ppss (point))))))))
(repeat . t))
;; Line up the two sides of piped string
(sql-pipes
(regexp . "[^:]\\(\\s-*\\)||\\(\\s-*\\)[^>]")
(modes quote (sql-mode))
(group 1 2)
(case-fold . t)
(repeat . t))
;; lineup the column aliases (the "as name" part) in a select statement
(sql-select-lineup-column-names
(regexp . ".*?\\(\\s +\\)as\\(\\s +\\).*")
(modes quote (sql-mode))
(group 1 2)
(case-fold . t)
(repeat . t)))
"Align rules for SQL codes.
These rules help aligning some SQL statements, such as the column
names in select queries, or equal signs in update statements or
where clauses.
To use it, select the region to be aligned and run \\[align].
See also `align' and `align-rules-list'")