Commit db7ed698f39e

Vincent Demeester <vincent+git@demeester.fr>
2013-12-07 11:27:46
Add el-get for self bootstrapping
1 parent ceb7529
Changed files (3)
.emacs.d/50magit.el
.emacs.d/el-get.conf.el
@@ -0,0 +1,108 @@
+;; el-get configuration
+(setq el-get-is-lazy t)
+
+(setq el-get-sources
+      '(;; This should be in contrib/ of org-mode but this is not
+        ;; shipped with Emacs. We take exactly the version we need to
+        ;; match org-mode in Emacs.
+        (:name org-mime
+               :description "org html export for text/html MIME emails"
+               :type http
+               :url "https://raw.github.com/jwiegley/org-mode/release_7.9.3f/contrib/lisp/org-mime.el")
+
+        (:name git-modes
+               :description "GNU Emacs modes for various Git-related files"
+               :type github
+               :pkgname "magit/git-modes")
+        (:name magit
+               :depends (git-modes))
+        (:name znc
+               :type github
+               :pkgname "sshirokov/ZNC.el"
+               :description "ERC and ZNC interface")
+        (:name gist
+               :depends (gh))
+        (:name gh
+               :type github
+               :pkgname "sigma/gh.el"
+               :depends (pcache logito request)
+               :description "Github API client libraries"
+               :website "http://github.com/sigma/gh.el")
+        (:name pcache
+               :type github
+               :pkgname "sigma/pcache"
+               :description "persistent caching for Emacs"
+               :website "http://github.com/sigma/pcache")
+        (:name logito
+               :type github
+               :pkgname "sigma/logito"
+               :description "logging library for Emacs"
+               :website "http://github.com/sigma/logito")
+        (:name request
+               :description "Easy HTTP request for Emacs Lisp"
+               :type github
+               :submodule nil
+               :pkgname "tkf/emacs-request")
+
+        (:name ido-vertical-mode
+               :type github
+               :pkgname "rson/ido-vertical-mode.el"
+               :description "makes ido-mode display vertically")
+        (:name flx
+               :description "Fuzzy matching with good sorting in ido"
+               :type github
+               :pkgname "lewang/flx")
+        (:name s
+               :description "The long lost Emacs string manipulation library."
+               :type github
+               :pkgname "magnars/s.el")
+        (:name dash
+               :description "A modern list api for Emacs. No 'cl required."
+               :type github
+               :pkgname "magnars/dash.el")
+        (:name projectile
+               :description "Project navigation and management library for Emacs"
+               :type github
+               :pkgname "bbatsov/projectile"
+               :depends (dash s)
+               :features projectile)))
+
+(el-get nil
+        '(
+         ;; General
+         naquadah-theme                ; Theme from Julien Danjou
+          boxquote ; draw boxes
+          multiple-cursors ; multiple cursors
+          ace-jump-mode ; fast cursor movement
+          auto-complete ; universal autocompletion
+          auto-complete-css
+          flx ; fuzzy matching for ido
+          ido-vertical-mode ; vertical mode for ido
+          smex ; IDO for M-x
+          projectile ; handling of projects
+          expand-region ; smartly expand region
+         ;; Programming
+         autopair                        ; Auto pairing of parentheses
+          highlight-parentheses ; Highlight parentheses surrounding the cursor
+         ;; rainbow-mode                        ; Display colors
+         dtrt-indent                        ; Autodetect indentation
+         magit                                ; Git stuff, must-have!
+         ;; Modes
+         ;; auctex                        ; LaTeX mode
+         lua-mode                        ; Major mode for lua
+         markdown-mode                        ; Major mode for markdown
+          yaml-mode ; Major mode for YAML
+          go-mode ; Major mode for Go
+          git-commit-mode ; Mode for "git commit"
+          zencoding-mode ; Mode to expand CSS tags to HTML
+         ;; gnus and other stuff
+         ;;bbdb                                ; Big brother database
+         ;;nognus                        ; Gnus
+         ;;gnus-identities                ; Manipulate Gnus identities
+          ;; org stuff
+          org-mime
+          ;; Misc
+          znc ; znc
+          gist ; gist integration
+         ))
+
.emacs.d/init.el
@@ -3,7 +3,15 @@
   (error "Only Emacs 24 is supported. You seem to use Emacs %d"
          emacs-major-version))
 
-(add-to-list 'load-path "~/.emacs.d/el-get/el-get")
+(dolist (file (directory-files user-emacs-directory))
+   (when (string-match (format "^\\(.+\\)\\.conf\\.el$") file)
+     (eval-after-load (match-string-no-properties 1 file)
+       `(load ,(concat user-emacs-directory file)))))
+
+(add-to-list 'load-path "~/.emacs.d/vendor/el-get")
+
+;; Initialize el-get
+(setq el-get-dir (expand-file-name "vendor" user-emacs-directory))
 
 (unless (require 'el-get nil 'noerror)
   (with-current-buffer
@@ -13,6 +21,7 @@
     (eval-print-last-sexp)))
 
 (add-to-list 'el-get-recipe-path "~/.emacs.d/el-get-user/recipes")
+
 (el-get 'sync)
 
 ;; Appearance
@@ -28,6 +37,23 @@
 (mouse-avoidance-mode 'jump)                ; move the mouse away
 (setq font-lock-maximum-decoration 2) ; faster font-lock-mode
 (set-default 'indicate-buffer-boundaries '((up . nil) (down . nil) (t . left)))
+(require 'naquadah-theme)
+
+;; Behaviour
+(setq mouse-yank-at-point t                ; Yank where the point currently is
+      x-select-enable-primary t ; Yank use the primary selection if available
+      save-interprogram-paste-before-kill t ; Put clipboard/selection into kill ring
+      mouse-1-click-follows-link nil)        ; Don't follow links with left click
+(fset 'yes-or-no-p 'y-or-n-p) ; Always use y/n prompt
+(setq use-dialog-box nil) ; No dialog box
+(put 'downcase-region 'disabled nil)
+(put 'upcase-region 'disabled nil)
+(setq-default indent-tabs-mode nil) ; don't use tabs
+(setq next-screen-context-lines 5 ; Keep more lines when scrolling
+      x-stretch-cursor t) ; stretch cursor to the width of the char
+(require 'auto-complete)
+
+(require 'ido)
 
 ;; Server
 (unless (string= (user-login-name) "root")