(other-window 1))
(select-window win)))
+(defun mdw-set-frame-width (columns &optional width)
+ (interactive "nColumns:
+P")
+ (setq width (cond (width (prefix-numeric-value width))
+ ((and window-system (mdw-emacs-version-p 22))
+ mdw-column-width)
+ (t (1+ mdw-column-width))))
+ (let ((sb-width (mdw-horizontal-window-overhead)))
+ (set-frame-width (selected-frame)
+ (- (* columns (+ width sb-width))
+ sb-width))
+ (mdw-divvy-window width)))
+
;; Don't raise windows unless I say so.
(defvar mdw-inhibit-raise-frame nil
'(progn
(define-key compilation-shell-minor-mode-map "\C-c\M-g" 'recompile)))
+(defadvice compile (around hack-environment compile activate)
+ "Hack the environment inherited by inferiors in the compilation."
+ (let ((process-environment process-environment))
+ (setenv "LD_PRELOAD" nil)
+ ad-do-it))
+
(defun mdw-compile (command &optional directory comint)
"Initiate a compilation COMMAND, maybe in a different DIRECTORY.
The DIRECTORY may be nil to not change. If COMINT is t, then
(mdw-define-face magit-diff-removed-highlight
(((min-colors 64)) :foreground "#eecccc" :background "#663333")
(((class color)) :foreground "red" :background "blue"))
+(mdw-define-face magit-blame-heading
+ (((min-colors 64)) :foreground "white" :background "grey25"
+ :weight normal :slant normal)
+ (((class color)) :foreground "white" :background "blue"
+ :weight normal :slant normal))
+(mdw-define-face magit-blame-name
+ (t :inherit magit-blame-heading :slant italic))
+(mdw-define-face magit-blame-date
+ (((min-colors 64)) :inherit magit-blame-heading :foreground "grey60")
+ (((class color)) :inherit magit-blame-heading :foreground "cyan"))
+(mdw-define-face magit-blame-summary
+ (t :inherit magit-blame-heading :weight bold))
(mdw-define-face dylan-header-background
(((min-colors 64)) :background "NavyBlue")
(mdw-define-face eshell-ls-readonly (t nil))
(mdw-define-face eshell-ls-symlink (t :foreground "cyan"))
+(defun mdw-eshell-hack () (setenv "LD_PRELOAD" nil))
+(add-hook 'eshell-mode-hook 'mdw-eshell-hack)
+
;;;--------------------------------------------------------------------------
;;; Messages-file mode.
(and mdw-auto-indent
(indent-for-tab-command)))
+(defadvice comint-line-beginning-position
+ (around mdw-calculate-it-properly () activate compile)
+ "Calculate the actual line start for multi-line input."
+ (if (or comint-use-prompt-regexp
+ (eq (field-at-pos (point)) 'output))
+ ad-do-it
+ (setq ad-return-value
+ (constrain-to-field (line-beginning-position) (point)))))
+
(defun mdw-setup-m4 ()
;; Inexplicably, Emacs doesn't match braces in m4 mode. This is very
(ad-set-arg 2 (car program))
(ad-set-arg 4 (cdr program))))))
+(defadvice term-exec-1 (around hack-environment compile activate)
+ "Hack the environment inherited by inferiors in the terminal."
+ (let ((process-environment process-environment))
+ (setenv "LD_PRELOAD" nil)
+ ad-do-it))
+
+(defadvice shell (around hack-environment compile activate)
+ "Hack the environment inherited by inferiors in the shell."
+ (let ((process-environment process-environment))
+ (setenv "LD_PRELOAD" nil)
+ ad-do-it))
+
(defun ssh (host)
"Open a terminal containing an ssh session to the HOST."
(interactive "sHost: ")
magit-revision-mode-refresh-popup))
(magit-define-popup-switch popup ?R "Reverse diff" "-R"))))
+(defadvice magit-wip-commit-buffer-file
+ (around mdw-just-this-buffer activate compile)
+ (let ((magit-save-repository-buffers nil)) ad-do-it))
+
(setq magit-repolist-columns
'(("Name" 16 magit-repolist-column-ident nil)
("Version" 18 magit-repolist-column-version nil)
(propertize (number-to-string n) 'face
(if (> n 0) 'bold 'shadow))))))
+(defun mdw-try-smerge ()
+ (save-excursion
+ (goto-char (point-min))
+ (when (re-search-forward "^<<<<<<< " nil t)
+ (smerge-mode 1))))
+(add-hook 'find-file-hook 'mdw-try-smerge t)
+
;;;--------------------------------------------------------------------------
;;; MPC configuration.