emacs 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. (require 'package)
  2. (add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/"))
  3. (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
  4. (add-to-list 'package-archives '("melpa-stable" . "http://stable.melpa.org/packages/"))
  5. (setq package-enable-at-startup nil)
  6. (package-initialize)
  7. (defun ensure-package-installed (&rest packages)
  8. "Assure every package is installed, ask for installation if it’s not.
  9. Return a list of installed packages or nil for every skipped package."
  10. (mapcar
  11. (lambda (package)
  12. (if (package-installed-p package)
  13. nil
  14. (if (y-or-n-p (format "Package %s is missing. Install it? " package))
  15. (package-install package)
  16. package)))
  17. packages))
  18. ;; make sure to have downloaded archive description.
  19. (or (file-exists-p package-user-dir)
  20. (package-refresh-contents))
  21. ;; Activate installed packages
  22. (package-initialize)
  23. ;; Check that all packages are installed
  24. (ensure-package-installed
  25. 'iedit
  26. 'magit
  27. 'undo-tree
  28. 'evil
  29. 'evil-leader
  30. 'evil-tabs
  31. 'zenburn-theme
  32. 'powerline-evil
  33. )
  34. ;; Evil
  35. ;; Evil leader is Space
  36. ;; (global-evil-leader-mode)
  37. ;; (evil-leader/set-leader "<SPC>")
  38. ;; Evil tabs
  39. ;; (global-evil-tabs-mode t)
  40. ;; Default to evil mode
  41. ;; (require 'evil)
  42. ;; (evil-mode t)
  43. ;; Leader keybinds
  44. ;; (evil-leader/set-key
  45. ;; "u" 'undo-tree-visualize
  46. ;; "m" 'recentf-open-files)
  47. ;; Delete info bindings for evil to take over
  48. ;; (define-key Info-mode-map "g" nil)
  49. ;; (define-key Info-mode-map "n" nil)
  50. ;; (define-key Info-mode-map "p" nil)
  51. ;; Disable file backup
  52. (setq make-backup-files nil)
  53. ;; Save undo history under .emacs.d/undo
  54. (setq undo-tree-auto-save-history t
  55. undo-tree-history-directory-alist
  56. `(("." . ,(concat user-emacs-directory "undo"))))
  57. (unless (file-exists-p (concat user-emacs-directory "undo"))
  58. (make-directory (concat user-emacs-directory "undo")))
  59. ;; Powerline
  60. (require 'powerline)
  61. (powerline-vim-theme)
  62. ;; Recent Files
  63. (require 'recentf)
  64. (recentf-mode 1)
  65. (setq recentf-max-menu-items 25)
  66. (global-set-key "\C-x\ \C-r" 'recentf-open-files)
  67. ;; Leave the clipboard alone
  68. (setq x-select-enable-clipboard nil)
  69. ;; All yes or no prompts are y or n
  70. (defalias 'yes-or-no-p 'y-or-n-p)
  71. ;; Never follow symlinks
  72. (setq vc-follow-symlinks nil)
  73. ;; Text and Notes
  74. (setq sentence-end-double-space nil)
  75. ;; Save minibar history
  76. (savehist-mode 1)
  77. (setq savehist-additional-variables '(kill-ring search-ring regexp-search-ring))
  78. ;; TODO:
  79. ;; Go through the tutorials, skim the manuals
  80. ;; learning elisp
  81. ;; Fuzzy
  82. ;; Evil leader mode
  83. ;; Hotkey for undo tree
  84. ;; autocomplete
  85. ;; recent files
  86. ;; magit bindings
  87. (custom-set-variables
  88. ;; custom-set-variables was added by Custom.
  89. ;; If you edit it by hand, you could mess it up, so be careful.
  90. ;; Your init file should contain only one such instance.
  91. ;; If there is more than one, they won't work right.
  92. '(custom-enabled-themes (quote (zenburn)))
  93. '(custom-safe-themes
  94. (quote
  95. ("4e753673a37c71b07e3026be75dc6af3efbac5ce335f3707b7d6a110ecb636a3" default)))
  96. '(inhibit-default-init t)
  97. '(inhibit-startup-buffer-menu nil)
  98. '(inhibit-startup-echo-area-message "josh")
  99. '(initial-buffer-choice t)
  100. '(initial-scratch-message ";; scratch buffer
  101. ")
  102. '(package-selected-packages
  103. (quote
  104. (evil-tabs powerline-evil zenburn-theme magit iedit evil-leader))))
  105. (custom-set-faces
  106. ;; custom-set-faces was added by Custom.
  107. ;; If you edit it by hand, you could mess it up, so be careful.
  108. ;; Your init file should contain only one such instance.
  109. ;; If there is more than one, they won't work right.
  110. )