;======================================================================
; 言語・文字コード関連の設定
;======================================================================
(when (equal emacs-major-version 21) (require 'un-define))
(set-language-environment "Japanese")
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-buffer-file-coding-system 'utf-8)
(setq default-buffer-file-coding-system 'utf-8)
(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)
(setq file-name-coding-system 'utf-8)
;;
;======================================================================
; IMEの設定
;======================================================================
(mw32-ime-initialize)
(setq default-input-method "MW32-IME")
(setq-default mw32-ime-mode-line-state-indicator "[--]")
(setq mw32-ime-mode-line-state-indicator-list '("[--]" "[あ]" "[--]"))
(add-hook 'mw32-ime-on-hook
(function (lambda () (set-cursor-height 2))))
(add-hook 'mw32-ime-off-hook
(function (lambda () (set-cursor-height 4))))
;;
;=======================================================================
;フォント
;=======================================================================
(if (eq window-system 'w32) (require 'ntemacs-font))
(fixed-width-set-fontset "msgothic" 14)
(create-fontset-from-ascii-font
"-outline-メイリオ-normal-r-normal-normal-12-*-*-*-*-*-iso8859-1"
nil "メイリオ")
(create-fontset-from-ascii-font
"-outline-メイリオ-normal-r-normal-normal-14-*-*-*-*-*-iso8859-1"
nil "メイリオ")
(set-fontset-font "fontset-メイリオ"
'japanese-jisx0208
'("メイリオ*" . "jisx0208-sjis"))
(set-fontset-font "fontset-メイリオ"
'katakana-jisx0201
'("メイリオ*" . "jisx0201-katakana"))
;;
;=======================================================================
;フレームサイズ・位置・色など
;=======================================================================
(setq default-frame-alist
(append (list '(foreground-color . "black")
'(background-color . "LemonChiffon")
'(background-color . "gray")
'(border-color . "black")
'(mouse-color . "white")
'(cursor-color . "black")
'(font . "fontset-メイリオ")
'(width . 80)
'(height . 40)
'(top . 100)
'(left . 100))
default-frame-alist))
;;
;=======================================================================
; Misc
;=======================================================================
(mouse-wheel-mode t) ;;ホイールマウス
(global-font-lock-mode t) ;;文字の色つけ
(setq line-number-mode t) ;;カーソルのある行番号を表示
(auto-compression-mode t) ;;日本語infoの文字化け防止
(set-scroll-bar-mode 'right) ;;スクロールバーを右に表示
(global-set-key "\C-z" 'undo) ;;UNDO
(setq frame-title-format ;;フレームのタイトル指定
(concat "%b - emacs@" system-name))
(display-time) ;;時計を表示
;(global-set-key "\C-h" 'backward-delete-char) ;;Ctrl-Hでバックスペース
;(setq make-backup-files nil) ;;バックアップファイルを作成しない
(setq visible-bell t) ;;警告音を消す
;(setq kill-whole-line t) ;;カーソルが行頭にある場合も行全体を削除
;(when (boundp 'show-trailing-whitespace) (setq-default show-trailing-whitespace t)) ;;行末のスペースを強調表示
;;
;=======================================================================
; 最近使ったファイル
;=======================================================================
(recentf-mode)
;;
;=======================================================================
; リージョンに色を付ける
;=======================================================================
(setq transient-mark-mode t)
(set-face-background 'region "darkgreen")
;;
;=======================================================================
; 対応する括弧を光らせる
;=======================================================================
(show-paren-mode)
;;
;=======================================================================
; C-c c で compile コマンドを呼び出す
;=======================================================================
(define-key mode-specific-map "c" 'compile)
;;
;=======================================================================
; スクリプトを保存する時、自動的に chmod +x を行うようにする
;=======================================================================
(defun make-file-executable ()
"Make the file of this buffer executable, when it is a script source."
(save-restriction
(widen)
(if (string= "#!"
(buffer-substring-no-properties 1
(min 3 (point-max))))
(let ((name (buffer-file-name)))
(or (equal ?. (string-to-char
(file-name-nondirectory name)))
(let ((mode (file-modes name)))
(set-file-modes name (logior mode (logand
(/ mode 4) 73)))
(message (concat "Wrote " name " (+x)"))))))))
(add-hook 'after-save-hook 'make-file-executable)
;;
;=======================================================================
; ~\.emacs.d\elisp\ と ~\.emacs.d\auto-install\ にパスを通す
;=======================================================================
(add-to-list 'load-path (expand-file-name "~\\.emacs.d\\elisp\\"))
(add-to-list 'load-path (expand-file-name "~\\.emacs.d\\auto-install\\"))
;;
;=======================================================================
; End of File
;=======================================================================