始めてみた

なにか新しいことを始めるとき,モチベーション維持するためのBlog.

Emacsの設定

Emacsの設定ファイル

  • ホームディレクトリに,.emacs.el(どっとファイル)を作成

エディタはなんでもよい.vi (vim) で作成する.

$ vi .emacs.el

viの操作方法はgoogle先生にきく.
保存-> :w(コロンw)
終了-> :q(コロンq)

設定ファイル.emacs.elの中身

(cond ((>= emacs-major-version 23)
(setq make-backup-files nil)
(show-paren-mode nil)
))

;; 日本語の設定(UTF-8)
(set-language-environment 'Japanese)
(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)

;;;; 種々雑多な設定
;; Official Emacs 用の設定(inline_patch をあててあります)
; (setq default-input-method "MacOSX")
;; 全角記号類「!”#$%&’()=〜|`『+*』<>?_」を入力できるようにする(Mac Emacs では不要)
; (mac-add-key-passed-to-system 'shift)

;; 起動時のウィンドウサイズ、色などを設定
(set-background-color "white")
(set-foreground-color "black")


;; 選択範囲の色を指定
(set-face-background 'region "SkyBlue")
(set-face-foreground 'region "black")

;; バックアップファイルを作らないようにする
(setq make-backup-files nil)

;; 括弧の対応関係をハイライト表示
(show-paren-mode nil)

;; ツールバーを表示しないようにする(Official Emacs の場合は 0)
; (tool-bar-mode 0)

;; スタートアップ画面を表示しないようにする
(setq inhibit-startup-message t)

;; 行間隔を少し広げる
; (set-default 'line-spacing 4)

;; ウィンドウ(フレーム)のサイズ設定する
; (setq default-frame-alist
; 	'((width . 100) (height . 60)))

;; 背景を透過させる
; (set-frame-parameter nil 'alpha '(90 70))



;; マウス・スクロールを滑らかにする(Mac Emacs 専用)
 (setq mac-mouse-wheel-smooth-scroll t)

;; カーソルの色を設定
 (set-cursor-color "DarkGray")


;; キーの設定(ある程度 Mac 標準に準拠させる)
(setq mac-command-key-is-meta nil)
(setq mac-option-modifier 'meta)
(setq mac-command-modifier 'super)
(global-set-key [?\s-c] 'kill-ring-save)
(global-set-key [?\s-v] 'yank)
(global-set-key [?\s-x] 'kill-region)
(global-set-key [?\s-z] 'undo)
(global-set-key [?\s-s] 'save-buffer)
(global-set-key [?\s-q] 'save-buffers-kill-terminal)
(global-set-key [?\s-f] 'isearch-forward)
(global-set-key [?\s-g] 'isearch-repeat-forward)
(global-set-key "\C-h" 'delete-backward-char)
(global-set-key "\M-h" 'help)

;; フォントの設定
;; 出典:http://sakito.jp/emacs/emacs23.html
(create-fontset-from-ascii-font "Menlo-12:weight=normal:slant=normal" nil "menlokakugo")
(set-fontset-font "fontset-menlokakugo"
	'unicode
	(font-spec :family "Hiragino Kaku Gothic ProN" :size 14)
	nil
	'append)
(add-to-list 'default-frame-alist '(font . "fontset-menlokakugo"))


;;; 行番号・桁番号をモードラインに表示する・しない設定
;(line-number-mode t) ; 行番号。tなら表示、nilなら非表示
;(column-number-mode t) ; 桁番号。tなら表示、nilなら非表示

;; 行番号の設定(F5 キーで表示・非表示を切り替え)
;; 出典:調査中
(require 'linum)
(global-linum-mode 0)
(global-set-key [f5] 'linum-mode)
(setq linum-format 
	(lambda (line) (propertize (format 
		(let ((w (length (number-to-string 
			(count-lines (point-min) (point-max))
		)))) (concat "%" (number-to-string w) "d "))
	line) 'face 'linum)))
(setq linum-format "%5d ")

 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; 言語別設定
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


;; for Perl
(require 'cperl-mode)
(setq auto-mode-alist
      (append '(("\\.pl$" . cperl-mode)
                ("\\.pm$" . cperl-mode)
                ("\\.mm$" . objc-mode)) auto-mode-alist))
 
;; for Python
(add-hook 'python-mode-hook
           '(lambda()
              (setq indent-tabs-mode nil)
              (setq indent-level 4)
              (setq python-indent 4)
              (setq tab-width 4)))
 
;; for C
(add-hook 'c-mode-hook
          '(lambda()
             (setq tab-width 4)
             (setq indent-tabs-mode nil)
             (setq c-basic-offset 4)))
 
;; for PHP
(load-library "php-mode")
(require 'php-mode)
(add-hook 'php-mode-hook 
          '(lambda () 
             (make-local-variable 'tab-width)
             (make-local-variable 'indent-tabs-mode)
             (setq tab-width 4) 
             (setq c-basic-offset 4)
             (setq indent-tabs-mode t)) 
          )


;; octaveモード
(autoload 'octave-mode "octave-mod" nil t)
(setq auto-mode-alist
           (cons '("\\.m$" . octave-mode) auto-mode-alist))
(add-hook 'octave-mode-hook
               (lambda ()
                 (abbrev-mode 1)
                 (auto-fill-mode 1)                 (if (eq window-system 'x)
                     (font-lock-mode 1))))

mode(モード)の追加

例えば,php-modeの追加方法.

1. http://sourceforge.net/projects/php-mode/からphp-modeをDL,解凍後,ファイルの中から,php-mode.elをコピーし,以下のディレクトリに貼付ける.
例えば,

$ cd /usr/share/emacs/site-lisp
$ cp ~/Download/php-mode/php-mode.el .
$ ls -l

で,php-mode.elがコピーされたことを確認する.

2. emacsを開いて, M+x (Alt+x)

M+x byte-compile-file (Enter) 
/usr/share/emacs/site-lisp/php-mode.el (ファイルのPathを指定)

とすると,emacsコンパイルしてくれる.
あとは,上項目のように .emacs.elファイルに,php-modeの記述をすればOK

modeきりかえ

M+x php-mode