2013-12-02 Emacs Defaults

I saw Andrew Hyatt post on Google+:

on Google+

From the emacs-devel list comes a query for builtin packages that would be useful to enable by default. They are interested in getting feedback from the community. If you have a builtin package you think should be enabled by default, add a comment, and we circulate this back to the emacs-devel list.

Check it out via Gmane, and now a survey on Emacs Wiki.

via Gmane

a survey on Emacs Wiki

I skimmed my `~/.emacs` and looked at all the little settings I think would make better defaults... For the complete file, see my current config file for Emacs on Windows.

my current config file for Emacs on Windows

(show-paren-mode 1)
(winner-mode 1)
(windmove-default-keybindings)
(column-number-mode 1)
(savehist-mode 1)
(iswitchb-mode 1)
(global-set-key (kbd "C-x C-b") 'bs-show)
(require 'dired-x)
(setq dired-recursive-deletes 'top
      dired-recursive-copies 'top
      dired-dwim-target t)
(setq sentence-end-double-space nil)
(dolist (hook '(emacs-lisp-mode-hook
        lisp-mode-hook
        rcirc-mode
        change-log-mode
        texinfo-mode-hook))
  (add-hook hook (lambda ()
           (eldoc-mode 1)
           (set (make-local-variable 'sentence-end-double-space) t))))
(setq eshell-save-history-on-exit t)
(setq cperl-hairy t
      cperl-electric-parens 'null)
(add-hook 'cperl-mode-hook
      (lambda ()
        (local-set-key (kbd "C-h f") 'cperl-perldoc)))
(add-hook 'rcirc-mode-hook
      (lambda ()
        (rcirc-track-minor-mode 1)))

(defun describe-hash (variable &optional buffer)
  "Display the full documentation of VARIABLE (a symbol).
    Returns the documentation as a string, also.
    If VARIABLE has a buffer-local value in BUFFER (default to the current buffer),
    it is displayed along with the global value."
  (interactive
   (let ((v (variable-at-point))
     (enable-recursive-minibuffers t)
     val)
     (setq val (completing-read
        (if (and (symbolp v)
             (hash-table-p (symbol-value v)))
            (format
             "Describe hash-map (default %s): " v)
          "Describe hash-map: ")
        obarray
        (lambda (atom) (and (boundp atom)
                    (hash-table-p (symbol-value atom))))
        t nil nil
        (if (hash-table-p v) (symbol-name v))))
     (list (if (equal val "")
           v (intern val)))))
  (with-output-to-temp-buffer (help-buffer)
    (maphash (lambda (key value)
           (pp key)
           (princ " => ")
           (pp value)
           (terpri))
         (symbol-value variable))))

(define-key isearch-mode-map (kbd "C-h") 'isearch-highlight-phrase)

(put 'narrow-to-region 'disabled nil)
(put 'not-modified 'disabled t)
(put 'upcase-region 'disabled nil)
(put 'downcase-region 'disabled nil)

​#Emacs