Changed the region color in console to white.
[elisp.git] / emacs.el
index 22adc6f..0301d03 100644 (file)
--- a/emacs.el
+++ b/emacs.el
@@ -50,6 +50,7 @@
 ;; Nor fringes
 ;; (when (functionp 'fringe-mode) (fringe-mode '(0 . 0)))
 ;; (when (functionp 'fringe-mode) (fringe-mode '(0 . 1)))
+(when (functionp 'fringe-mode) (fringe-mode 10))
 
 ;; And I do not like scrollbar neither
 (when (functionp 'scroll-bar-mode) (scroll-bar-mode -1))
@@ -208,7 +209,8 @@ load-warning buffer in case of failure."
  ;; And I like ascii files
  epa-armor t
 
- tramp-default-method "ssh"
+ ;; tramp-default-method "ssh"
+ tramp-default-method "scp"
 
  ;; I have no problem with files having their own local variables
  enable-local-eval t
@@ -219,6 +221,12 @@ load-warning buffer in case of failure."
  mc-use-default-recipients t
 
  ;; browse-url-new-window-flag t
+
+ ;; I do not like compilation to automatically split the active window
+ ;; vertically, even when the said window is very wide
+ split-height-threshold 0
+ split-width-threshold nil
+
  )
 
 ;; The backups
@@ -300,7 +308,7 @@ load-warning buffer in case of failure."
 (add-to-list 'auto-mode-alist '("\\.txt\\'" . (lambda()
                                                 (text-mode)
                                                 (orgtbl-mode)
-                                                (auto-fill-mode)
+                                                ;; (auto-fill-mode)
                                                 (flyspell-mode))))
 
 (add-hook 'c++-mode-hook 'flyspell-prog-mode)
@@ -377,6 +385,8 @@ load-warning buffer in case of failure."
   (ff/configure-faces
    '((italic :underline nil)
      (info-title-2 :foreground "green")
+     (font-lock-comment-delimiter-face :foreground "black")
+     (font-lock-comment-face :foreground "black")
      (cperl-array-face :background "gray90" :foreground "blue" :weight 'bold)
      (cperl-hash-face :background "gray90" :foreground "purple" :weight 'bold)
      (diff-added :background "gray90" :foreground "green4" :weight 'bold)
@@ -393,11 +403,10 @@ load-warning buffer in case of failure."
      (font-lock-string-face :foreground "green")
      (font-lock-variable-name-face :foreground "blue")
      (font-lock-constant-face :foreground "blue")
-     (font-lock-function-name-face :foreground "blue")
      (font-lock-preprocessor-face :foreground "green")
      (font-lock-function-name-face :foreground "cyan")
-     (flyspell-incorrect-face :foreground "red2")
-     (flyspell-duplicate-face :foreground "OrangeRed2")
+     (flyspell-incorrect :foreground "red2")
+     (flyspell-duplicate :foreground "OrangeRed2")
      (hl-line :background "white")
      (sh-heredoc :foreground "black" :background "#fff0f0")
      (sh-heredoc-face :foreground "black" :background "#fff0f0")
@@ -415,7 +424,7 @@ load-warning buffer in case of failure."
                   :inverse-video nil)
      (mode-line-inactive :background "gray60" :foreground "black" :box nil
                          :inverse-video nil)
-     (region :background "springgreen2")
+     (region :background "white")
      (ff/date-info-face :foreground "white" :weight 'bold)
      (ff/mail-alarm-face :foreground "red" :weight 'bold)
      (gui-button-face :background "green" :foreground "white")
@@ -452,11 +461,12 @@ load-warning buffer in case of failure."
      (font-lock-builtin-face :foreground "deeppink3")
      (font-lock-string-face :foreground "dark olive green")
      (font-lock-variable-name-face :foreground "sienna")
-     (font-lock-function-name-face :foreground "blue4" :weight 'bold)
+     ;; (font-lock-function-name-face :foreground "blue" :weight 'bold)
+     (font-lock-function-name-face :foreground "blue")
      ;; (font-lock-comment-delimiter-face :foreground "dark violet")
      ;; (font-lock-comment-face :foreground "dark violet")
-     (flyspell-incorrect-face :foreground "red2")
-     (flyspell-duplicate-face :foreground "OrangeRed2")
+     (flyspell-incorrect :background "#ff0000" :foreground "black")
+     (flyspell-duplicate :background "#ff9000" :foreground "black")
      (hl-line :background "white")
      (sh-heredoc :foreground "black" :background "#fff0f0")
      (sh-heredoc-face :foreground "black" :background "#fff0f0")
@@ -476,13 +486,14 @@ load-warning buffer in case of failure."
                 :inverse-video nil)
      (header-line :background "cornflowerblue" :foreground "black" :box nil
                   :inverse-video nil)
-     (mode-line-inactive :background "#b0b0b0" :foreground "black" :box nil
+     (mode-line-inactive :background "gray80" :foreground "black" :box nil
                          :inverse-video nil)
      ;; (fringe :background "black" :foreground "gray90")
-     (fringe :background "gray75")
+     (fringe :background "gray80")
      (ff/date-info-face :foreground "white" :weight 'bold)
      (ff/mail-alarm-face :foreground "white" :background "red2")
      ;; (alarm-vc-face :foreground "black" :background "yellow" :weight 'normal)
+     (gui-button-face :background "green" :foreground "black")
     ))
   )
 
@@ -605,31 +616,6 @@ load-warning buffer in case of failure."
 ;; Counting various entities in text
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(defun ff/count-char ()
-  "Prints the number of characters between the first previous \"--\"
-and the firt next \"--\"."
-  (interactive)
-  (let ((from (save-excursion (re-search-backward "^--$\\|BEGIN_COUNT" nil t)))
-        (to (save-excursion (re-search-forward "^--$\\|END_COUNT" nil t))))
-    (if (and to from) (message "%d character(s)" (- to from 6))
-      (error "Can not find the -- delimiters"))))
-
-(defun ff/count-words ()
-  "Print number of words between the first previous \"--\" and the
-firt next \"--\"."
-  (interactive)
-  (let ((from (save-excursion (re-search-backward "^--$" nil t)))
-        (to (save-excursion (re-search-forward "^--$" nil t))))
-    (if (and to from)
-        (save-excursion
-          (goto-char from)
-          (let ((count 0))
-            (while (< (point) to)
-              (re-search-forward "\\w+\\W+")
-              (setq count (1+ count)))
-            (message "%d word(s)" count)))
-      (error "Can not find the -- delimiters"))))
-
 (defun ff/word-occurences ()
   "Display in a new buffer the list of words sorted by number of
 occurrences "
@@ -817,7 +803,7 @@ printer."
          (if (> temp 50)
              (concat
               (let ((s (format "%dC " temp)))
-                (if (> temp 65) (propertize s 'face
+                (if (> temp 70) (propertize s 'face
                                             'font-lock-warning-face)
                   s))
               )
@@ -1205,9 +1191,9 @@ ff/known-address-face is used."
     )
 
   (ff/configure-faces '((ff/robot-address-face :foreground "green4")
-                        (ff/personal-address-face :foreground "dark magenta"
-                                                  :weight 'bold)
-                        (ff/important-address-face :foreground "blue2"
+                        (ff/personal-address-face :foreground "blue2" :weight 'bold)
+                        (ff/important-address-face :foreground "red3"
+                                                   ;; :foreground "blue2"
                                                    ;; :underline t
                                                    ;; :background "white"
                                                    ;; :foreground "green4"
@@ -1656,6 +1642,11 @@ int main(int argc, char **argv) {
 <head>
 <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />
 <title></title>
+<style>
+p {
+ color:#009900;
+}
+</style>
 </head>
 
 <body>
@@ -1979,6 +1970,19 @@ a file in /tmp"
 ;; (when (ff/load-or-alert "flyspell-timer" t)
 ;;   (add-hook 'flyspell-mode-hook 'flyspell-timer-ensure-idle-timer))
 
+(defun ff/start-flyspell () (interactive)
+  (ff/configure-faces
+   '(
+     ;; (flyspell-incorrect :background "#ff0000" :foreground "black")
+     ;; (flyspell-duplicate :background "#ff9000" :foreground "black")
+     (flyspell-incorrect :foreground "#ff0000" :weight 'bold)
+     (flyspell-duplicate :foreground "#ff9000" :weight 'bold)
+     ))
+  ;; (flyspell-buffer)
+  )
+
+(add-hook 'flyspell-mode-hook 'ff/start-flyspell)
+
 (defun ff/pick-dictionnary () (interactive)
   (when (and (boundp 'flyspell-mode) flyspell-mode)
     (if (and current-input-method (string-match "latin" current-input-method))
@@ -2315,7 +2319,7 @@ next one. With universal argument, kill all killable buffers."
                              ;; "-stop-xscreensaver"
                              ;; "-osdlevel" "3"
                              )
-        media/mplayer/timing-request-period 5.0
+        media/mplayer/timing-request-period 1.0
         )
   )
 
@@ -2378,6 +2382,16 @@ proposes to visit them."
    )
   )
 
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; My script to automatically count the number of words and characters
+;; between two markers
+
+(ff/load-or-alert "text-counters.el")
+
+;; Display them in the modeline when in text-mode
+
+(add-hook 'text-mode-hook 'tc/add-text-counters-in-modeline)
+
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; A function to remove temporary alarm windows
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -2455,13 +2469,41 @@ with a time tag, and save this file"
     )
   )
 
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Let's be zen. Remove the modeline and fringes.
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(setq ff/zen-original-setting nil)
+
+(defun ff/zen () (interactive)
+  (if ff/zen-original-setting
+      (setq mode-line-format (car ff/zen-original-setting)
+            fringe-mode (cdr ff/zen-original-setting)
+            ff/zen-original-setting nil)
+    (setq ff/zen-original-setting (cons mode-line-format fringe-mode)
+          mode-line-format nil
+          fringe-mode '(0 . 0))
+    (delete-other-windows)
+    )
+  (fringe-mode fringe-mode)
+  (if ff/zen-original-setting
+      (message "Zen mode")
+    (message "Cluttered mode"))
+  )
+
+;; (define-key global-map [(control x) (x)] 'ff/zen)
+
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; My own keymap
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (setq ff/map (make-sparse-keymap))
 (define-key global-map [(control \`)] ff/map)
-;;(define-key global-map [(control @)] ff/map)
+
+(unless window-system
+  ;; (define-key global-map [(control @)] ff/map)
+  (define-key global-map [(meta O) \`] ff/map)
+)
 
 (define-key esc-map "`" ff/map)
 
@@ -2520,6 +2562,7 @@ with a time tag, and save this file"
 (define-key ff/map [?\C-3] 'ff/twin-horizontal-current-buffer)
 
 (define-key ff/map " " 'delete-trailing-whitespace)
+(define-key ff/map [(control x)] 'ff/zen)
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; Hacks so that all keys are functionnal in xterm and through ssh.