Update.
[elisp.git] / emacs.el
index 9e94de6..77626cf 100644 (file)
--- a/emacs.el
+++ b/emacs.el
 ;; Xft.antialias: true
 ;; Xft.rgba: rgb
 
+(when (fboundp 'horizontal-scroll-bar-mode)
+  (horizontal-scroll-bar-mode -1))
+
+;; This is where I put most of my emacs-related files
+(setq ff/emacs-dir "~/private/emacs")
+(unless (file-exists-p ff/emacs-dir)
+  (mkdir ff/emacs-dir t))
+
 ;; Give the focus to the emacs window if we are under a windowing
 ;; system
 
 ;; Make all "yes or no" prompts be "y or n" instead
 (fset 'yes-or-no-p 'y-or-n-p)
 
+;; The space bar acting as "yes" has been several times really
+;; problematic.
+(define-key query-replace-map (kbd "SPC") nil)
+
 ;; Show the matching parenthesis and do it immediately, we are in a
 ;; hurry
 (setq show-paren-delay 0)
@@ -74,7 +86,7 @@
 (iswitchb-mode 1)
 
 ;; Save the minibuffer history
-(setq savehist-file "~/private/emacs/savehist")
+(setq savehist-file (concat ff/emacs-dir "/savehist"))
 (when (functionp 'savehist-mode) (savehist-mode 1))
 
 ;; And allow minibuffer recursion
@@ -283,8 +295,12 @@ load-warning buffer in case of failure."
  ;; This is the default coding system when toggle-input-method is
  ;; invoked (C-\)
  default-input-method "latin-1-prefix"
+
  ;; do not put tabs when indenting
  indent-tabs-mode nil
+ ;; Stop indenting automatically, that's annoying
+ electric-indent-chars nil
+
  ;; And yes, we have a fast display / connection / whatever
  baud-rate 524288
  ;; baud-rate 10
@@ -385,8 +401,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")
+     (font-lock-comment-delimiter-face :foreground "green")
+     (font-lock-comment-face :foreground "green")
      (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)
@@ -424,11 +440,16 @@ 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" :foreground "black")
      (ff/date-info-face :foreground "white" :weight 'bold)
      (ff/mail-alarm-face :foreground "red" :weight 'bold)
+     (selector/selection :background "yellow")
      (gui-button-face :background "green" :foreground "white")
      (enotes/information-face :foreground "cyan")
+
+     (file-name-shadow :foreground "black")
+     (shadow :foreground "black")
+     (warning :foreground "black" :background "red")
      ))
   )
 
@@ -494,7 +515,7 @@ load-warning buffer in case of failure."
      (ff/mail-alarm-face :foreground "white" :background "red2")
      ;; (alarm-vc-face :foreground "black" :background "yellow" :weight 'normal)
      (gui-button-face :background "green" :foreground "black")
-    ))
+     ))
   )
 
 ;; When we are root, put the modeline in red
@@ -1437,12 +1458,12 @@ universal argument starts xfig even if the .fig does not exist"
 \\def\\argmin{\\operatornamewithlimits{argmin}}
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Sans serif fonts
-%% \\usepackage[T1]{fontenc}
-%% \\usepackage[scaled]{helvet}
-%% \\usepackage[cm]{sfmath}
-%% \\renewcommand{\\ttdefault}{pcr}
-%% \\renewcommand*\\familydefault{\\sfdefault}
+%% Open sans font
+\\usepackage[default]{opensans}
+\\usepackage{cmbright}
+\\renewcommand{\\familydefault}{fos}
+\\renewcommand{\\seriesdefault}{l}
+\\renewcommand{\\bfdefault}{sb}
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %% The \\todo command
 \\newcounter{nbdrafts}
@@ -2274,7 +2295,7 @@ next one. With universal argument, kill all killable buffers."
                                 "\.bbl$" "\.aux$" "\.toc$"
                                 ))
       recentf-max-saved-items 1000
-      recentf-save-file "~/private/emacs/recentf"
+      recentf-save-file (concat ff/emacs-dir "/recentf")
       )
 
 (when (boundp 'recentf-keep) (add-to-list 'recentf-keep 'file-remote-p))
@@ -2310,7 +2331,7 @@ next one. With universal argument, kill all killable buffers."
         media/add-current-song-to-interrupted-when-killing t
         media/duration-to-history 30
         media/history-size 1000
-        media/playlist-file "~/private/emacs/media-playlists"
+        media/playlist-file (concat ff/emacs-dir "/media-playlists")
         media/mplayer/args '(
                              "-framedrop"
                              "-zoom"
@@ -2441,7 +2462,7 @@ proposes to visit them."
   (if flyspell-mode (flyspell-mode -1)
     (flyspell-mode 1)
     (flyspell-buffer))
-)
+  )
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; The fridge!
@@ -2469,32 +2490,8 @@ 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
+;; My own keymap mapped to C-`
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (setq ff/map (make-sparse-keymap))
@@ -2503,7 +2500,7 @@ with a time tag, and save this file"
 (unless window-system
   ;; (define-key global-map [(control @)] ff/map)
   (define-key global-map [(meta O) \`] ff/map)
-)
+  )
 
 (define-key esc-map "`" ff/map)
 
@@ -2562,7 +2559,6 @@ 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.
@@ -2730,9 +2726,9 @@ With argument ARG, do this that many times."
 
 ;; Where to save the bookmarks and where is bbdb
 
-(setq bookmark-default-file "~/private/emacs/bmk"
+(setq bookmark-default-file (concat ff/emacs-dir "/bmk")
       bbdb-file "~/private/bbdb"
-      custom-file "~/private/emacs/custom")
+      custom-file (concat ff/emacs-dir "/custom"))
 
 ;; enotes.el is one of my own scripts, check my web page