branch: externals/a68-mode commit a9276372a3334bd87d5291293bd13c355ef20e18 Author: Jose E. Marchesi <jose.march...@oracle.com> Commit: Jose E. Marchesi <jose.march...@oracle.com>
Complete indent rules for upper stropping regime --- a68-mode.el | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/a68-mode.el b/a68-mode.el index 6318db45eb..4b3227a076 100644 --- a/a68-mode.el +++ b/a68-mode.el @@ -840,6 +840,21 @@ with the equivalent upcased form." ;; SMIE by default aligns it with it. (`(:before . "|") (if (not smie-rule-sibling-p) 3)) + (`(:after . "BEGIN") 6) + (`(:after . "THEN") 5) + (`(:after . "ELSE") 5) + (`(:after . "ELIF") 5) + (`(:after . "CASE") 5) + (`(:after . "OUSE") 5) + (`(:after . "OUT") 4) + (`(:after . "IN") 3) + (`(:after . "FOR") 4) + (`(:after . "DO") 3) + (`(:after . "FROM") 5) + (`(:after . "BY") 3) + (`(:after . "TO") 3) + (`(:after . "WHILE") 3) + (`(:after . "DEF") 4) (`(:before . "BEGIN") (when (or (smie-rule-hanging-p) (or @@ -934,17 +949,18 @@ with the equivalent upcased form." ;; First determine the stropping regime (setq-local a68--stropping-regime (a68--figure-out-stropping-regime)) - (if (equal a68--stropping-regime 'supper) - ;; SUPPER stropping. - (progn - (setq-local comment-start a68-comment-style-supper) - (setq-local comment-end a68-comment-style-supper) - (setq-local font-lock-defaults '(a68-font-lock-keywords-supper)) - (smie-setup a68--smie-grammar-supper #'a68--smie-rules-supper - :forward-token #'a68--smie-forward-token - :backward-token #'a68--smie-backward-token) - (setq-local beginning-of-defun-function #'a68-beginning-of-defun-supper) - (setq-local syntax-propertize-function #'a68-syntax-propertize-function-supper)) + (cond + ((equal a68--stropping-regime 'supper) + ;; SUPPER stropping. + (setq-local comment-start a68-comment-style-supper) + (setq-local comment-end a68-comment-style-supper) + (setq-local font-lock-defaults '(a68-font-lock-keywords-supper)) + (smie-setup a68--smie-grammar-supper #'a68--smie-rules-supper + :forward-token #'a68--smie-forward-token + :backward-token #'a68--smie-backward-token) + (setq-local beginning-of-defun-function #'a68-beginning-of-defun-supper) + (setq-local syntax-propertize-function #'a68-syntax-propertize-function-supper)) + (t ;; UPPER stropping. (setq-local comment-start a68-comment-style-upper) (setq-local comment-end a68-comment-style-upper) @@ -953,7 +969,7 @@ with the equivalent upcased form." :forward-token #'a68--smie-forward-token :backward-token #'a68--smie-backward-token) (setq-local beginning-of-defun-function #'a68-beginning-of-defun-upper) - (setq-local syntax-propertize-function #'a68-syntax-propertize-function-upper)) + (setq-local syntax-propertize-function #'a68-syntax-propertize-function-upper))) (add-hook 'syntax-propertize-extend-region-functions #'syntax-propertize-multiline 'append 'local))