.emacs 


https://github.com/tsu-nera/dotfiles/tree/master/.emacs.d/inits


org 

emacs  org-mode 

org-mode  hoge.org -> hoge.el

babel-loader 

org-mode で init.el を管理することで得られる 7 つの恩恵


benel-loader  init-loder  hoge.org -> hoge.el  init-loader 

rubikitch 


init-loader:init.el 7


org-mode  init.el


(一) ;;

(二)  Run Book Automation 

(三)org-mode  I love org-mode!!

(四)org-mode 

(五)  Emacs  | Futurismo

(六)  github

(七)

 Emacs #


 Emacs 

#



.emacs.d
  |- init.el ... 一番初めに起動されるファイル
  |- inits ... org ファイルが入っているディレクトリ
       |- 00_init.org
       |- ....
       |- 90_color.org
  |- el-get
      |- repo 
          |- el-get 
          |- el-get で取得したパッケージ群
      |- user-recipes ... el-get 用の自分のレシピ

init.el: el-get#


el-get 
;; el-get ロードパス設定
(add-to-list 'load-path (locate-user-emacs-file "el-get/repo/el-get"))

;; ダウンロードした elisp 置き場
(setq el-get-dir "~/.emacs.d/el-get/repo")

;; ダウンロードしていないときはダウンロード
(unless (require 'el-get nil 'noerror)
  (with-current-buffer
      (url-retrieve-synchronously
       "https://raw.github.com/dimitri/el-get/master/el-get-install.el")
    (let (el-get-master-branch)
      (goto-char (point-max))
      (eval-print-last-sexp))))

;; 初期化処理用
(setq el-get-user-package-directory "~/.emacs.d/el-get/init-files")

;; レシピ置き場
;; 追加のレシピ置き場
(add-to-list 'el-get-recipe-path "~/.emacs.d/el-get/user-recipes")

init.el: org-mode#


org-mode load-path 
;; org-mode/lisp, org-mode/contribe/lisp をロードパスに追加する
(let* ((org-dir (expand-file-name
                 "lisp" (expand-file-name
                         "org-mode" el-get-dir)))
       (org-contrib-dir (expand-file-name
                         "lisp" (expand-file-name
                                 "contrib" (expand-file-name
                                            ".." org-dir)))))
  (setq load-path (append (list org-dir org-contrib-dir)
                          (or load-path nil))))
(require 'org)

init.el: init-loader#

(el-get-bundle emacs-jp/init-loader)

;; バイトコンパイルする
;; 初めのバイトコンパイルは手動で実施する必要がある
(setq init-loader-byte-compile t)

;; エラー発生時にだけ log を開く
;; (setq init-loader-show-log-after-init t)
(setq init-loader-show-log-after-init 'error-only)

init.el: babel-loader#


el-get  babel-loader 
(el-get-bundle takaishi/babel-loader.el)
(add-to-list 'load-path (locate-user-emacs-file "el-get/repo/babel-loader.el"))
(require 'babel-loader)

;; インデント保持
;; これをしないと 変換された elisp ファイルのインデントがずれる.
(setq org-src-preserve-indentation t)

;; inits 配下の org ファイルを elc に変換して読み込み.
(bl:load-dir "~/.emacs.d/inits/")

inits:00_init.org #



https://e-arrows.sakura.ne.jp/2010/03/macros-in-emacs-el.html

;; @ load-path
;; for Emacs 23 under
(defvar user-emacs-directory "~/.emacs.d")

;; load-path の追加関数
(defun add-to-load-path (&rest paths)
  (let (path)
    (dolist (path paths paths)
      (let ((default-directory (expand-file-name (concat user-emacs-directory path))))
    (add-to-list 'load-path default-directory)
    (if (fboundp 'normal-top-level-add-subdirs-to-load-path)
        (normal-top-level-add-subdirs-to-load-path))))))

;; load-path に追加するフォルダ
;; 2 つ以上フォルダを指定する場合の引数 => (add-to-load-path "elisp" "xxx" "xxx")
(add-to-load-path "elisp" "inits" "el-get" "local" "mylisp")

inits:00_init.org: use-package#





https://github.com/jwiegley/use-package

(package-initialize nil)
(el-get-bundle use-package)

;; use-package が存在しないときはなにもしない
(add-to-list 'load-path "~/.emacs.d/el-get/repo/use-package")
(unless (require 'use-package nil t)
  (defmacro use-package (&rest args)))

inits:00_init.org: el-get  Package#


el-get 
(defvar my/el-get-packages-all
  '(
    ;; 03_display
    popwin
    switch-window
    isearch-dabbrev
    ;; open-junk-file
    iy-go-to-char
    key-chord
    jump-char
    recentf-ext
    stripe-buffer

    ;; 20_text
    hydra
    swiper
    yasnippet
    dired-k
    migemo
    undo-tree
    define-word
    auto-complete
    anzu
    auto-highlight-symbol
    highlight-symbol
    multiple-cursors
    bm
    emacs-async
    pcre2el
    ht
    iedit
    codic
    search-web
    wgrep
    expand-region
    ag
    auto-capitalize
    omni-kill

    ;; 以下省略
    )
  "A list of packages to install from el-get at launch.")

inits: 00_init.org el-get config#

;; 通知は minibuffer のみ
(setq el-get-notify-type 'message)

;; パッケージをインストール
(el-get 'sync my/el-get-packages-all)

inits: 01_global.org  90_color.org#


babel-loader  org el

Special Thanks