2011-10-08 23:05:06 +03:00
|
|
|
;;; init.el --- Emacs Prelude: configuration entry point.
|
|
|
|
;;
|
|
|
|
;; Copyright (c) 2011 Bozhidar Batsov
|
|
|
|
;;
|
|
|
|
;; Author: Bozhidar Batsov <bozhidar.batsov@gmail.com>
|
|
|
|
;; URL: http://www.emacswiki.org/cgi-bin/wiki/Prelude
|
|
|
|
;; Version: 1.0.0
|
|
|
|
;; Keywords: convenience
|
|
|
|
|
|
|
|
;; This file is not part of GNU Emacs.
|
|
|
|
|
|
|
|
;;; Commentary:
|
|
|
|
|
|
|
|
;; This file simply sets up the default load path and requires
|
|
|
|
;; the various modules defined within Emacs Prelude.
|
|
|
|
|
|
|
|
;;; License:
|
|
|
|
|
|
|
|
;; This program is free software; you can redistribute it and/or
|
|
|
|
;; modify it under the terms of the GNU General Public License
|
|
|
|
;; as published by the Free Software Foundation; either version 3
|
|
|
|
;; of the License, or (at your option) any later version.
|
|
|
|
;;
|
|
|
|
;; This program is distributed in the hope that it will be useful,
|
|
|
|
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
;; GNU General Public License for more details.
|
|
|
|
;;
|
|
|
|
;; You should have received a copy of the GNU General Public License
|
|
|
|
;; along with GNU Emacs; see the file COPYING. If not, write to the
|
|
|
|
;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
|
|
;; Boston, MA 02110-1301, USA.
|
|
|
|
|
|
|
|
;;; Code:
|
|
|
|
|
2011-10-15 13:04:02 +03:00
|
|
|
(defgroup prelude nil
|
|
|
|
"Emacs Prelude"
|
|
|
|
:group 'convenience)
|
|
|
|
|
2011-10-11 21:09:02 +03:00
|
|
|
;; On OS X Emacs doesn't use the shell PATH if it's not started from
|
|
|
|
;; the shell. If you're using homebrew modifying the PATH is essential.
|
2011-10-09 17:02:16 +03:00
|
|
|
(if (string= system-type "darwin")
|
|
|
|
(push "/usr/local/bin" exec-path))
|
|
|
|
|
2011-10-11 22:21:31 +03:00
|
|
|
(defvar prelude-dir (file-name-directory load-file-name)
|
|
|
|
"The root dir of the Emacs Prelude distribution.")
|
|
|
|
(defvar prelude-modules-dir (concat prelude-dir "modules/")
|
2011-10-11 21:09:02 +03:00
|
|
|
"This directory houses all of the built-in Prelude module. You should
|
|
|
|
avoid modifying the configuration there.")
|
2011-10-11 22:21:31 +03:00
|
|
|
(defvar prelude-vendor-dir (concat prelude-dir "vendor/")
|
2011-10-11 21:09:02 +03:00
|
|
|
"This directory house Emacs Lisp packages that are not yet available in
|
|
|
|
ELPA (or Marmalade).")
|
2011-10-11 22:21:31 +03:00
|
|
|
(defvar prelude-personal-dir (concat prelude-dir "personal/")
|
2011-10-11 21:09:02 +03:00
|
|
|
"Users of Emacs Prelude are encouraged to keep their personal configuration
|
|
|
|
changes in this directory. All Emacs Lisp files there are loaded automatically
|
|
|
|
by Prelude.")
|
2011-10-07 23:47:41 +03:00
|
|
|
|
2011-10-11 21:09:02 +03:00
|
|
|
(add-to-list 'load-path prelude-modules-dir)
|
|
|
|
(add-to-list 'load-path prelude-vendor-dir)
|
|
|
|
(add-to-list 'load-path prelude-personal-dir)
|
2011-10-07 23:47:41 +03:00
|
|
|
|
2011-10-11 21:09:02 +03:00
|
|
|
;; the core stuff
|
2011-10-08 23:05:06 +03:00
|
|
|
(require 'prelude-ui)
|
|
|
|
(require 'prelude-packages)
|
|
|
|
(require 'prelude-core)
|
|
|
|
(require 'prelude-editor)
|
|
|
|
(require 'prelude-global-keybindings)
|
|
|
|
|
|
|
|
;; programming & markup languages support
|
|
|
|
(require 'prelude-c)
|
|
|
|
(require 'prelude-clojure)
|
2011-10-10 00:34:08 +03:00
|
|
|
(require 'prelude-coffee)
|
2011-10-08 23:05:06 +03:00
|
|
|
(require 'prelude-common-lisp)
|
|
|
|
(require 'prelude-emacs-lisp)
|
|
|
|
(require 'prelude-haskell)
|
2011-10-15 23:05:13 +03:00
|
|
|
(require 'prelude-js)
|
2011-10-10 21:17:36 +03:00
|
|
|
(require 'prelude-latex)
|
2011-10-09 00:24:13 +03:00
|
|
|
(require 'prelude-markdown)
|
2011-10-09 22:41:07 +03:00
|
|
|
(require 'prelude-perl)
|
2011-10-08 23:05:06 +03:00
|
|
|
(require 'prelude-ruby)
|
2011-10-11 07:25:35 +03:00
|
|
|
(require 'prelude-scheme)
|
2011-10-10 00:34:08 +03:00
|
|
|
(require 'prelude-xml)
|
2011-10-08 23:05:06 +03:00
|
|
|
|
2011-10-11 21:09:02 +03:00
|
|
|
;; config changes made through the customize UI will be store here
|
2011-10-11 21:24:22 +03:00
|
|
|
(setq custom-file (concat prelude-personal-dir "custom.el"))
|
2011-10-16 11:52:56 +03:00
|
|
|
;; load the personal settings
|
|
|
|
(when (file-exists-p prelude-personal-dir)
|
2011-10-16 12:55:04 +03:00
|
|
|
(mapc 'load (directory-files prelude-personal-dir nil "^[^#].*el$")))
|
2011-10-11 21:09:02 +03:00
|
|
|
|
2011-10-08 23:05:06 +03:00
|
|
|
;;; init.el ends here
|