ui/modeline: add indent type+width to modeline

Also, display nothing for file encoding if encoding is undecided.
This commit is contained in:
Henrik Lissner 2018-09-03 04:03:33 +02:00
parent b697ad982e
commit f8f9144f08
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -482,16 +482,20 @@ Meant for `+modeline-buffer-path-function'."
(def-modeline-segment! +modeline-encoding (def-modeline-segment! +modeline-encoding
:on-hooks (after-revert-hook after-save-hook find-file-hook) :on-hooks (after-revert-hook after-save-hook find-file-hook)
:on-set (buffer-file-coding-system) :on-set (buffer-file-coding-system indent-tabs-mode tab-width)
(concat (pcase (coding-system-eol-type buffer-file-coding-system) (concat (format (if indent-tabs-mode "⭾%d" "␣%d")
tab-width)
" "
(pcase (coding-system-eol-type buffer-file-coding-system)
(0 "LF") (0 "LF")
(1 "CRLF") (1 "CRLF")
(2 "CR")) (2 "CR"))
(let ((sys (coding-system-plist buffer-file-coding-system))) " "
(if (memq (plist-get sys :category) '(coding-category-undecided coding-category-utf-8)) (let* ((sys (coding-system-plist buffer-file-coding-system))
"UTF-8" (category (plist-get sys :category)))
(upcase (symbol-name (plist-get sys :name))))) (cond ((eq category 'coding-category-undecided) "")
" ")) ((eq category 'coding-category-utf-8) "UTF-8 ")
((concat (upcase (symbol-name (plist-get sys :name))) " "))))))
(def-modeline-segment! +modeline-major-mode (def-modeline-segment! +modeline-major-mode
(propertize (format-mode-line mode-name) (propertize (format-mode-line mode-name)