Solution 1:

Use the ultimate dotfiles site. Add your '.emacs' here. Read the '.emacs' of others.

Solution 2:

My favorite snippet. The ultimate in Emacs eye candy:

;; real lisp hackers use the lambda character
;; courtesy of stefan monnier on c.l.l
(defun sm-lambda-mode-hook ()
  (font-lock-add-keywords
   nil `(("\\<lambda\\>"
   (0 (progn (compose-region (match-beginning 0) (match-end 0)
        ,(make-char 'greek-iso8859-7 107))
      nil))))))
(add-hook 'emacs-lisp-mode-hook 'sm-lambda-mode-hook)
(add-hook 'lisp-interactive-mode-hook 'sm-lamba-mode-hook)
(add-hook 'scheme-mode-hook 'sm-lambda-mode-hook)

So you see i.e. the following when editing lisp/scheme:

(global-set-key "^Cr" '(λ () (interactive) (revert-buffer t t nil)))

Solution 3:

I have this to change yes or no prompt to y or n prompts:

(fset 'yes-or-no-p 'y-or-n-p)

I have these to start Emacs without so much "fanfare" which I got from this question.

(setq inhibit-startup-echo-area-message t)
(setq inhibit-startup-message t)

And Steve Yegge's function to rename a file that you're editing along with its corresponding buffer:

(defun rename-file-and-buffer (new-name)
  "Renames both current buffer and file it's visiting to NEW-NAME."
  (interactive "sNew name: ")
  (let ((name (buffer-name))
 (filename (buffer-file-name)))
    (if (not filename)
 (message "Buffer '%s' is not visiting a file!" name)
      (if (get-buffer new-name)
   (message "A buffer named '%s' already exists!" new-name)
 (progn
   (rename-file name new-name 1)
   (rename-buffer new-name)
   (set-visited-file-name new-name)
   (set-buffer-modified-p nil))))))

Solution 4:

One thing that can prove very useful: Before it gets too big, try to split it into multiple files for various tasks: My .emacs just sets my load-path and the loads a bunch of files - I've got all my mode-specific settings in mode-configs.el, keybindings in keys.el, et cetera