Function: majutsu-row-normalize-column-spec
majutsu-row-normalize-column-spec is a natively compiled function
defined in majutsu-row.el.
Signature
(majutsu-row-normalize-column-spec PROFILE SPEC)
Documentation
Normalize one column SPEC using PROFILE.
Source Code
;; Defined in /nix/store/jagqw3nms546pad0gxi5f3wsckk6pji7-emacs-packages-deps/share/emacs/site-lisp/majutsu-row.el
(defun majutsu-row-normalize-column-spec (profile spec)
"Normalize one column SPEC using PROFILE."
(unless (and (plistp spec)
(symbolp (plist-get spec :field)))
(user-error "Invalid row column %S" spec))
(let* ((field (plist-get spec :field))
(module (if (plist-member spec :module)
(plist-get spec :module)
(user-error "Column %S requires :module" field)))
(face (if (plist-member spec :face)
(plist-get spec :face)
t))
(post (if (plist-member spec :post)
(plist-get spec :post)
:default))
(template (if (plist-member spec :template)
(plist-get spec :template)
(user-error "Column %S requires :template" field))))
(when (plist-member spec :instance)
(user-error "Column %S must not declare reserved :instance" field))
(setq module (if (keywordp module)
(intern (substring (symbol-name module) 1))
module))
(unless (memq module majutsu-row-module-order)
(user-error "Column %S has invalid :module %S" field module))
(unless (or (eq face t) (null face) (symbolp face))
(user-error "Column %S has invalid :face %S" field face))
(list :field field
:module module
:template template
:face face
:post (majutsu-row-normalize-postprocessors
profile post field))))