【emacs】初期設定メモ
emacs再入門
環境メモ
github.com
~/.emacs.d/init.elの記述
日本語入力環境構築
;;環境を日本語にする (require 'mozc) (set-language-environment "Japanese") (setq default-input-method "japanese-mozc") (prefer-coding-system 'utf-8)
Load path設定
;;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に追加するフォルダ (add-to-load-path "elisp" "elpa")
package-install 設定
(require 'package) ;; MELPAを追加 (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t) ;; MELPA-stableを追加 (add-to-list 'package-archives '("melpa-stable" . "http://stable.melpa.org/packages/") t) ;; Marmaladeを追加 (add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/") t) ;; Orgを追加 (add-to-list 'package-archives '("org" . "http://orgmode.org/elpa/") t) ;; 初期化 (package-initialize)
C-tでウィンドウ切り替え
;; "C-t"でウィンドウ切り替える。初期値はtranspose-chars (defun other-window-or-split () (interactive) (when (one-window-p) (split-window-horizontally)) (other-window 1)) (global-set-key (kbd "C-t") 'other-window-or-split)
その他
;;C-hでBackspaceに (keyboard-translate ?\C-h ?\C-?) ;;スタートアップメッセージを表示させない (setq inhibit-startup-message t) ;;バックアップファイルを作成させない (setq make-backup-files nil) ;;yes or noをy or n (fset 'yes-or-no-p 'y-or-n-p) ;; unvisualize menubar, toolbar, scrollbar (menu-bar-mode 0) (tool-bar-mode 0) (scroll-bar-mode 0) ;; 行末の空白を強調表示 (setq-default show-trailing-whitespace t) (set-face-background 'trailing-whitespace "#b14770") ;; ;;対応する()を光らせる (show-paren-mode 1) ;;Clipboardを他のアプリケーションと共通に (cond (window-system (setq x-select-enable-clipboard t) )) ;; 起動時にスクリーン最大化 (set-frame-parameter nil 'fullscreen 'maximized)
追加したpackage
コード補完 auto-complete
package-installからauto-completeをインストール
init.elに以下を記述
;; Auto Complete (require 'auto-complete-config) (ac-config-default) (setq ac-use-menu-map t) ;; 補完メニュー表示時にC-n/C-pで補完候補選択 (setq ac-use-fuzzy t) ;; 曖昧マッチ
flycheck
emacs内での文法チェックを可能に.
M-x package-install RET flycheck
でインストール
init.elに以下を記述
(global-flycheck-mode)
C-c ! nで次のエラーへジャンプ
C-c ! pで前のエラー箇所へジャンプ
C-c ! lでエラーをリスト表示
エラー箇所にカーソルを合わせると,エラーメッセージがポップアップする
color-theme
sublime-textのテーマが気に入ってたので,
同じテーマを使う.
package-installから,sublime-themesをインストール
その中のspolskyを使う
init.elに以下を記述.
(load-theme 'spolsky t)
helm
emacsでなにか探すときに便利なhelmを入れる.
anythingの代替.
https://github.com/emacs-helm/helm
手順は↑の通り.
git clone https://github.com/emacs-helm/helm.git /path/to/helm/directory git clone https://github.com/jwiegley/emacs-async.git /path/to/async/directory
して,helmをcloneしたディレクトリでmakeする.
init.eに
(require 'helm-config)
or
ubuntu 16.04以上の場合は,
apt-get install elpa-helm
で押し通せる
minimap
(require 'minimap)
普段は切っておいて,
minimap使いたい時には,M-x minimap-mode RET
設定を変えるときは,
M-x customize-group RET minimap RETで,
Minimap Window Locationだけいじって右端によせる.
markdown-mode
markdownの記述とプレビューを素早く行う。
M-x package-install
markdown-mode
でインストール...しようとしたがMelpaにないと言われる。
代わりに直接markdown-mode.elをダウンロードしてload pathの通っているフォルダに入れる。
(elはこちらから.http://jblevins.org/projects/markdown-mode/)
init.elに
(autoload 'markdown-mode "markdown-mode" "Major mode for editing Markdown files" t) (add-to-list 'auto-mode-alist '("\\.markdown\\'" . markdown-mode)) (add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode)) (autoload 'gfm-mode "gfm-mode" "Major mode for editing GitHub Flavored Markdown files" t) (add-to-list 'auto-mode-alist '("README\\.md\\'" . gfm-mode))
markdownプレビューを利用するために、apt-getでinstallする
apt-get install markdown
C-c C-c mでHTMLプレビュー
C-c C-c pでブラウザプレビュー
ctags
brewを利用してctags-exuberantを導入する.
brew install ctags-exuberant
ctags.elの導入
M-x package-install RET ctags RET
init.elに追記
;;;; for ctags.el (require 'ctags nil t) (setq tags-revert-without-query t) (setq ctags-command "ctags -R --fields=\"+afikKlmnsSzt\" ") (global-set-key (kbd "<f5>") 'ctags-create-or-update-tags-table) (global-set-key (kbd "M-.") 'ctags-search)
ファイルをEmacsで開いている状態で、F5キーを押下することで、
Ctagsファイルの更新および存在しない場合は新規作成される