diff options
| author | benjamin <benjamin.lindqvist@gmail.com> | 2018-01-31 22:33:58 +0100 | 
|---|---|---|
| committer | benjamin <benjamin.lindqvist@gmail.com> | 2018-01-31 22:33:58 +0100 | 
| commit | 5bebbedfe3ac0b162aa15aa2ca28c9e1cbae8d78 (patch) | |
| tree | 8361315234e6b341c743b0ccbdae9bd1e14ee5eb | |
| parent | 00d891603b1d3c786a2f1e56000296c1573c4456 (diff) | |
bleeding edge changes
| -rw-r--r-- | feebleline.el | 51 | 
1 files changed, 39 insertions, 12 deletions
| diff --git a/feebleline.el b/feebleline.el index 4002754..af673d7 100644 --- a/feebleline.el +++ b/feebleline.el @@ -70,18 +70,29 @@  (defface feebleline-asterisk-face '((t :foreground "salmon"))    "Feebleline filename face."    :group 'feebleline-mode) +(defface feebleline-previous-buffer-face '((t :foreground "#7e7e7e")) +  "Feebleline filename face." +  :group 'feebleline-mode) + +(defun previous-buffer-name () +  "Get name of previous buffer." +  (buffer-name (other-buffer (current-buffer) 1)) +  ) +  ;; Note: ugly parentheses, for the simple reason that it makes it easier to  ;; transpose, add and comment out lines.  (defvar feebleline-mode-line-text    '( -    ("[%s] "    ((format-time-string "%H:%M:%S")) (face feebleline-time-face)) -    ("(%s"      ((string-to-number (format-mode-line "%l"))) (face feebleline-linum-face)) +    ;; ("[%s] "    ((format-time-string "%H:%M:%S")) (face feebleline-time-face)) +    (" %s"      ((string-to-number (format-mode-line "%l"))) (face feebleline-linum-face))      ("%s"       ("," ) (face default)) -    ("%s) "     ((current-column)) (face feebleline-linum-face)) -    ("%s"       ("") (face default)) -    ("%s"       ((buffer-file-name)) (face feebleline-filename-face)) +    ("%s"     ((current-column)) (face feebleline-linum-face)) +    ("%s"       (" | ") (face default)) +    ("%s"       ((buffer-name)) (face feebleline-filename-face))      ("%s"       ((if (buffer-modified-p) "*" "" )) (face feebleline-asterisk-face)) +    ("%s"       (" | ") (face default)) +    ("%s"       ((previous-buffer-name)) (face feebleline-previous-buffer-face))      )    "Each element is a list with the following format: @@ -126,16 +137,32 @@ sent to `add-text-properties'.")      text))  (defvar feebleline-placeholder) +;; (defun feebleline-message-buffer-file-name-or-nothing () +;;   "Replace echo-area message with mode-line proxy." +;;   (when buffer-file-name +;;     (setq feebleline-placeholder +;;           (mapconcat #'feebleline--mode-line-part feebleline-mode-line-text "")) +;;     (with-current-buffer " *Minibuf-0*" +;;       (erase-buffer) +;;       (insert feebleline-placeholder) +;;       ) +;;     )) +  (defun feebleline-message-buffer-file-name-or-nothing ()    "Replace echo-area message with mode-line proxy." -  (when buffer-file-name -    (setq feebleline-placeholder -          (mapconcat #'feebleline--mode-line-part feebleline-mode-line-text "")) -    (with-current-buffer " *Minibuf-0*" -      (erase-buffer) -      (insert feebleline-placeholder) +  (if (buffer-name) +      (progn (setq feebleline-placeholder +                   (mapconcat #'feebleline--mode-line-part feebleline-mode-line-text "")) +             (with-current-buffer " *Minibuf-0*" +               (erase-buffer) +               (insert feebleline-placeholder))) +    (unless (current-message) +      (with-current-buffer " *Minibuf-0*" +        (erase-buffer) +        )        ) -    )) +    ) +  )  (defun feebleline-mode-line-proxy-fn ()    "Put a mode-line proxy in the echo area *if* echo area is empty." | 
