Formatting

This commit is contained in:
2025-09-18 17:16:22 -04:00
parent c5377aa0ac
commit e1fd3e0d37

View File

@@ -97,12 +97,12 @@
(defconst krl-keywords (defconst krl-keywords
(append (append
(mapcar (lambda (x) (rstrip (nth 0 x))) krl-keywords-toplevel-block-pairs) (mapcar (lambda (x) (rstrip (nth 0 x))) krl-keywords-toplevel-block-pairs)
(mapcar (lambda (x) (rstrip (nth 1 x))) krl-keywords-toplevel-block-pairs) (mapcar (lambda (x) (rstrip (nth 1 x))) krl-keywords-toplevel-block-pairs)
(mapcar (lambda (x) (rstrip (nth 0 x))) krl-keywords-nested-block-pairs) (mapcar (lambda (x) (rstrip (nth 0 x))) krl-keywords-nested-block-pairs)
(mapcar (lambda (x) (rstrip (nth 1 x))) krl-keywords-nested-block-pairs) (mapcar (lambda (x) (rstrip (nth 1 x))) krl-keywords-nested-block-pairs)
(mapcar (lambda (x) (rstrip (nth 2 x))) krl-keywords-nested-block-middle) (mapcar (lambda (x) (rstrip (nth 2 x))) krl-keywords-nested-block-middle)
krl-keywords-misc krl-keywords-misc
)) ))
(defconst krl-warning-keywords (defconst krl-warning-keywords
@@ -205,24 +205,24 @@
;; Get the string pair for the block we are currently on the end of. ;; Get the string pair for the block we are currently on the end of.
(defun krl-get-pair () (defun krl-get-pair ()
(let ((pairs (copy-sequence krl-keywords-nested-block-pairs)) (pair nil)) (let ((pairs (copy-sequence krl-keywords-nested-block-pairs)) (pair nil))
(while (and (not pair) pairs) (while (and (not pair) pairs)
(when (looking-at (concat "^ *" (nth 1 (car pairs)))) (when (looking-at (concat "^ *" (nth 1 (car pairs))))
(setq pair (car pairs))) (setq pair (car pairs)))
(setq pairs (cdr pairs))) (setq pairs (cdr pairs)))
;; FIXME: Hack for broken ELSE, CASE. ;; FIXME: Hack for broken ELSE, CASE.
(when (not pair) (when (not pair)
(let ((triples (copy-sequence krl-keywords-nested-block-middle))) (let ((triples (copy-sequence krl-keywords-nested-block-middle)))
(while (and (not pair) triples) (while (and (not pair) triples)
(when (looking-at (concat "^ *" (nth 2 (car triples)))) (when (looking-at (concat "^ *" (nth 2 (car triples))))
(setq pair (car triples))) (setq pair (car triples)))
(setq triples (cdr triples)) (setq triples (cdr triples))
))) )))
pair)) pair))
(defun krl-indent-of-matching () (defun krl-indent-of-matching ()
(save-excursion (save-excursion
(let ((balance 1) (pair (krl-get-pair))) (let ((balance 1) (pair (krl-get-pair)))
;(message (nth 0 pair)) ;(message (nth 0 pair))
(while (and (/= balance 0) (not (bobp))) (while (and (/= balance 0) (not (bobp)))
(progn (progn
(forward-line -1) (forward-line -1)
@@ -265,19 +265,19 @@
(forward-line -1) (forward-line -1)
(cond (cond
((looking-at krl-indent-regex-toplevel-block-close) ((looking-at krl-indent-regex-toplevel-block-close)
;(message "found tlb close") ;(message "found tlb close")
(setq ind 0)) (setq ind 0))
((looking-at krl-indent-regex-toplevel-block-open) ((looking-at krl-indent-regex-toplevel-block-open)
;(message "found tlb open") ;(message "found tlb open")
(setq ind (+ krl-indent-offset (current-indentation)))) (setq ind (+ krl-indent-offset (current-indentation))))
((looking-at krl-indent-regex-nested-block-close) ((looking-at krl-indent-regex-nested-block-close)
;(message "found nb close") ;(message "found nb close")
(setq ind (current-indentation))) (setq ind (current-indentation)))
((looking-at krl-indent-regex-nested-block-open) ((looking-at krl-indent-regex-nested-block-open)
;(message "found nb open") ;(message "found nb open")
(setq ind (+ krl-indent-offset (current-indentation)))) (setq ind (+ krl-indent-offset (current-indentation))))
(t (t
;(message "found other") ;(message "found other")
) )
)) ))
ind))) ind)))
@@ -288,53 +288,53 @@
(save-excursion (save-excursion
(indent-line-to col)) (indent-line-to col))
(when (< (current-column) col) (when (< (current-column) col)
(move-to-column col)))) (move-to-column col))))
(defun krl-indent-line () (defun krl-indent-line ()
"Indent current line as KRL." "Indent current line as KRL."
(interactive) (interactive)
(let ((ind nil)) (let ((ind nil))
(save-excursion (save-excursion
(progn (progn
(beginning-of-line) (beginning-of-line)
(if (bobp) (if (bobp)
(indent-line-to 0) (indent-line-to 0)
(let (indent-curr) (let (indent-curr)
(progn (progn
(cond ((looking-at krl-indent-regex-toplevel-block-open) (cond ((looking-at krl-indent-regex-toplevel-block-open)
(progn (progn
;(message "toplevel open") ;(message "toplevel open")
(setq ind 0))) (setq ind 0)))
((looking-at krl-indent-regex-toplevel-block-close) ((looking-at krl-indent-regex-toplevel-block-close)
(progn (progn
;(message "toplevel close") ;(message "toplevel close")
(setq ind 0))) (setq ind 0)))
((looking-at "^ *&") ((looking-at "^ *&")
(progn (progn
;(message "&") ;(message "&")
;; HMI editor crud. ;; HMI editor crud.
(setq ind 0))) (setq ind 0)))
((looking-at krl-indent-regex-nested-block-close) ((looking-at krl-indent-regex-nested-block-close)
(progn (progn
;(message "nested close") ;(message "nested close")
(setq ind (krl-indent-of-matching)))) (setq ind (krl-indent-of-matching))))
((looking-at krl-indent-regex-nested-block-middle) ((looking-at krl-indent-regex-nested-block-middle)
(progn (progn
;(message "annoying stuff") ;(message "annoying stuff")
;; (indent-line-to (krl-indent-of-block-opener)))) ;; (indent-line-to (krl-indent-of-block-opener))))
(setq ind (krl-indent-of-matching)))) (setq ind (krl-indent-of-matching))))
(t (t
(progn (progn
;(message "other") ;(message "other")
;; ;(message krl-indent-regex-toplevel-block-open) ;; ;(message krl-indent-regex-toplevel-block-open)
;; (indent-line-to (krl-find-hinted-indent)))) ;; (indent-line-to (krl-find-hinted-indent))))
(let ((hinted-indent (krl-find-hinted-indent))) (let ((hinted-indent (krl-find-hinted-indent)))
(when (not hinted-indent) (when (not hinted-indent)
(setq hinted-indent 0)) (setq hinted-indent 0))
(setq ind hinted-indent)))) (setq ind hinted-indent))))
)))))) ))))))
(indent-and-position ind))) (indent-and-position ind)))
(defun krl-mode () (defun krl-mode ()