start changing modeline layout
authorJoerg Jaspert <joerg@ganneff.de>
Tue, 9 Apr 2013 14:48:15 +0000 (16:48 +0200)
committerJoerg Jaspert <joerg@ganneff.de>
Tue, 9 Apr 2013 14:48:15 +0000 (16:48 +0200)
.emacs.d/config/emacs.org

index 0fd0bb7..c8f9d8b 100644 (file)
@@ -369,7 +369,7 @@ Size indication lets me know how far I am in a buffer.
 And modeline-posn is great. It will hilight the column number in the
 modeline in red as soon as you are over the defined limit.
 
-#+BEGIN_SRC emacs-lisp
+#+BEGIN_SRC emacs-lisp-off
 (line-number-mode 1)
 (column-number-mode 1)
 (size-indication-mode 1)
@@ -377,6 +377,70 @@ modeline in red as soon as you are over the defined limit.
 (require 'modeline-posn)
 #+END_SRC
 
+#+BEGIN_SRC emacs-lisp
+  (set-face-foreground 'mode-line "grey30")
+  (set-face-background 'mode-line "grey30")
+  (set-face-foreground 'modeline-inactive "grey20")
+  (set-face-background 'modeline-inactive "grey30")
+  ;; use setq-default to set it for /all/ modes
+  (setq-default mode-line-format
+    (list
+      ;; the buffer name; the file name as a tool tip
+      '(:eval (propertize "%b " 'face 'font-lock-keyword-face
+          'help-echo (buffer-file-name)))
+  
+      ;; line and column
+      ;; '%02' to set to 2 chars at least; prevents flickering
+      ""
+        (propertize "(%02l" 'face 'font-lock-type-face) ","
+        (propertize "%02c)" 'face 'font-lock-type-face) 
+      " "
+  
+      ;; relative position, size of file
+      ""
+      (propertize "[%p" 'face 'font-lock-constant-face) ;; % above top
+      "/"
+      (propertize "%I]" 'face 'font-lock-constant-face) ;; size
+      " "
+  
+      ;; the current major mode for the buffer.
+      ""
+        '(:eval (propertize "[%m]" 'face 'font-lock-string-face
+                'help-echo buffer-file-coding-system))
+      " "
+  
+  
+      "[" ;; insert vs overwrite mode, input-method in a tooltip
+      '(:eval (propertize (if overwrite-mode "Ovr" "Ins")
+                'face 'font-lock-preprocessor-face
+                'help-echo (concat "Buffer is in "
+                             (if overwrite-mode "overwrite" "insert") " mode")))
+  
+      ;; was this buffer modified since the last save?
+      '(:eval (when (buffer-modified-p)
+                (concat ","  (propertize "Mod"
+                               'face 'font-lock-warning-face
+                               'help-echo "Buffer has been modified"))))
+  
+      ;; is this buffer read-only?
+      '(:eval (when buffer-read-only
+                (concat ","  (propertize "RO"
+                               'face 'font-lock-type-face
+                               'help-echo "Buffer is read-only"))))  
+      "] "
+  
+      ;; add the time, with the date and the emacs uptime in the tooltip
+      '(:eval (propertize (format-time-string "%H:%M")
+                'help-echo
+                (concat (format-time-string "%c; ")
+                        (emacs-uptime "Uptime:%hh"))))
+      " --"
+      ;; i don't want to see minor-modes; but if you want, uncomment this:
+       minor-mode-alist  ;; list of minor modes
+      "%-" ;; fill with '-'
+      ))
+#+END_SRC
+
 *** Default mode
 Back when I started with text-mode. But nowadays I want default mode to
 be org-mode - it is just so much better to use. And does sensible things