;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; åæ表示ä½ç½®ããµã¤ãº
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(setq initial-frame-alist
'((left . 100) ; ä½ç½® (X)
(top . 50) ; ä½ç½® (Y)
(width . 120) ; ãµã¤ãº(å¹
)
(height . 40) ; ãµã¤ãº(é«ã)
))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; ã¹ã¯ãã¼ã«
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ã¹ã¯ãã¼ã«ããéã®ã«ã¼ã½ã«ã®ç§»åè¡æ°
(setq scroll-conservatively 1)
;; ã¹ã¯ãã¼ã«éå§ã®ãã¼ã¸ã³ã®è¡æ°
(setq scroll-margin 10)
;; 1 ç»é¢ã¹ã¯ãã¼ã«æã«éè¤ãããè¡æ°
(setq next-screen-context-lines 10)
;; 1 ç»é¢ã¹ã¯ãã¼ã«æã«ã«ã¼ã½ã«ã®ç»é¢ä¸ã®ä½ç½®ããªãã¹ãå¤ããªã
(setq scroll-preserve-screen-position t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; ãã¼è¨å®
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Windows ã®å ´åã
;; IME ã®å¤æã§ã¨ã©ã¼ãã§ãã®ã§ãä½ãããªãé¢æ°ãå²ãå½ã¦ã
(when (eq system-type 'windows-nt)
(global-set-key [M-kanji] 'ignore)
(global-set-key [kanji] 'ignore)
)
;; ã¿ã¼ããã«ã®å ´å(window-system ã nil)ã
;; ã C-h ã«ãªãã®ã§ãC-h 㧠(C-?) ãæ¼ããããã¨ã«ãã
(unless window-system
(keyboard-translate ?\C-h ?\C-?))
;; C-h 以å¤ããã«ããã¼ã«å²ãå½ã¦
(global-set-key (kbd "M-?") 'help-command)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; æ¤ç´¢ãç½®ææã®å¤§æåãå°æåã®åºå¥
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ãªãã·ã§ã³ã® "Ignore Case for Search" ã§è¨å®å¯
;;
;; ;; æ¤ç´¢(å
¨è¬)
;; (setq case-fold-search t)
;;
;; ;; ã¤ã³ã¯ãªã¡ã³ã¿ã«ãµã¼ã
;; (setq isearch-case-fold-search nil)
;; ãããã¡ã¼åã®æ¤ç´¢
(setq read-buffer-completion-ignore-case t)
;; ãã¡ã¤ã«åã®æ¤ç´¢
(setq read-file-name-completion-ignore-case t)
;;;ç½®æ(å
¨è¬)
;; (setq case-replace t)
;; dabbrev æã®ç½®æ
(setq dabbrev-case-replace nil)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; èªåä½æãã¡ã¤ã«
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; backup ãã¡ã¤ã«ãªã¼ãã³æã®ããã¯ã¢ãã (xxx~)
;; ================================================================
;; å®è¡ã®æç¡
(setq make-backup-files t)
;; æ ¼ç´ãã£ã¬ã¯ããªã¼ã®å¤æ´
;; (対象ãã£ã¬ã¯ããªã¼ . æ ¼ç´ãã£ã¬ã¯ããªã¼) ã®ãªã¹ã
(setq backup-directory-alist '((".*" . "~/.ehist")))
;; çªå·ä»ãã«ããè¤æ°ä¿å
(setq version-control t) ;; å®è¡ã®æç¡
(setq kept-new-versions 5) ;; ææ°ã®ä¿ææ°
(setq kept-old-versions 1) ;; æå¤ã®ä¿ææ°
(setq delete-old-versions t) ;; ç¯å²å¤ãåé¤
;; auto-save èªåä¿åãã¡ã¤ã« (#xxx#)
;; ================================================================
;; ;; å®è¡ã®æç¡
;; (setq auto-save-default nil)
;; ;; æ ¼ç´ãã£ã¬ã¯ããªã¼ã®å¤æ´
;; ;; (対象ãã¡ã¤ã«ã®ãã¿ã¼ã³ . ä¿åãã¡ã¤ã«ãã¹) ã®ãªã¹ã
;; (setq auto-save-file-name-transforms
;; (append auto-save-file-name-transforms
;; '((".*" "~/tmp/" t))))
;; ä¿åã®éé
(setq auto-save-timeout 10) ;; ç§ (ããã©ã«ã : 30)
(setq auto-save-interval 100) ;; æéµ (ããã©ã«ã : 300)
;; auto-save-list èªåä¿åã®ãªã¹ã (~/.emacs.d/auto-save-list/.saves-xxx)
;; ================================================================
;; å®è¡ã®æç¡
(setq auto-save-list-file-prefix nil)
;; ;; æ ¼ç´ãã£ã¬ã¯ããªã¼ã®å¤æ´
;; (setq auto-save-list-file-prefix "~/tmp/.saves-")
;; lock ããã¯ãã¡ã¤ã« (.#xxx)
;; ================================================================
;; å®è¡ã®æç¡
(setq create-lockfiles nil)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; ããã±ã¼ã¸
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(when (require 'package nil t)
(setq package-archives
(append package-archives '(("melpa" . "http://melpa.milkbox.net/packages/")
("marmalade" . "http://marmalade-repo.org/packages/"))))
(package-initialize))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; auto-complete
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(when (require 'auto-complete-config nil t)
(ac-config-default))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; ãã¼ããã¹ã®è¨å®
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(add-to-list 'load-path "~/.emacs.d/site-lisp")
;; ;; load-path ã«ç»é²ããããã£ã¬ã¯ããªã¼ã subdir æ±ã
;; ;; 注:ã¢ã¯ã»ã¹ä»¶ã§ã¨ã©ã¼ã«ãªãããã
;; (normal-top-level-add-subdirs-to-load-path)
;; ;; ãã¼è¨å®ãã¡ã¤ã«ã®ãã¼ã
;; (load "my-keyset-light")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; ããã°ã©ãã³ã°
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; å
±é
;; ================================================================
;; 左端(æåã®å)ã§ã¯ã¤ã³ãã³ãããã以å¤ã¯ã¿ãã®æ¿å
¥
(setq tab-always-indent nil)
(setq c-tab-always-indent nil)
;; 空ç½ãä¸åº¦ã«åé¤
(if (fboundp 'global-hungry-delete-mode)
(global-hungry-delete-mode 1))
;; æ¹è¡æãªã©ã«èªåã§ã¤ã³ãã³ã
;; (C-j 㨠C-m ã®å
¥ãæ¿ã)
(if (fboundp 'electric-indent-mode)
(electric-indent-mode 0))
;; ç¹å®ã®æåãå
¥åããã¨èªåã§æ¹è¡ãã¤ã³ãã³ã
;; (electric-layout-mode 1)
;; C ç³»å
±é
;; ================================================================
(defun my-all-cc-mode-init ()
;; C ç³»(cc-mode ãç¶æ¿ãã)ã¢ã¼ãå
±éã®è¨å®ãè¨è¿°
;; 空ç½ãªã©ãä¸åº¦ã«åé¤
(c-toggle-hungry-state 1)
;; æ¹è¡æãªã©ã§èªåã¤ã³ãã³ã
;; (c-toggle-electric-state 1)
;;
;; ";", "}" ãªã©ãå
¥åããã¨ãã«èªåæ¹è¡
;; èªåã¤ã³ãã³ããä¸ç·ã« ON ã«ãªã
;; (c-toggle-auto-newline 1)
)
(add-hook 'c-mode-common-hook 'my-all-cc-mode-init)
;; C, C++
;; ================================================================
(autoload 'vs-set-c-style "vs-set-c-style"
"Set the current buffer's c-style to Visual Studio like style. ")
(defun my-c-c++-mode-init ()
;; C, C++ ç¨ã®è¨å®ãè¨è¿°
;; Visual Studio 風ã®è¨å®
;; (vs-set-c-style)
)
(add-hook 'c-mode-hook 'my-c-c++-mode-init)
(add-hook 'c++-mode-hook 'my-c-c++-mode-init)
;; .h ã§ã C++
(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; Tips
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ãã¼ãé³ç¦æ¢
(setq ring-bell-function 'ignore)
;; ã¹ã¿ã¼ãç»é¢(ã¡ãã»ã¼ã¸)ã表示ããªã
(setq inhibit-startup-screen t)
;; é¸æé åãåé¤ãã¼ã§ä¸æ¬åé¤
(delete-selection-mode t)
;; shift + ç¢å°ãã¼ã§é åé¸æ
(if (fboundp 'pc-selection-mode)
(pc-selection-mode))
;; è¡é kill-line (C-k) ã§è¡å
¨ä½ãã«ãã
(setq kill-whole-line t)
;; èªã¿åãå°ç¨ãããã¡ã¼ã§ãã«ããç³»ã§ã³ãã¼å¯è½
(setq kill-read-only-ok t)
;; ediff æã«ãã¬ã¼ã ã使ããªã
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
;; png, jpg ãªã©ã®ãã¡ã¤ã«ãç»åã¨ãã¦è¡¨ç¤º
(setq auto-image-file-mode t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; ã«ã¹ã¿ãã¤ãº
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ã«ã¹ã¿ãã¤ãºç¨ã®ãã¡ã¤ã«ãè¨å®
(setq custom-file "~/.emacs.d/custom_setttings.el")
;; ã«ã¹ã¿ãã¤ãºç¨ãã¡ã¤ã«ããã¼ã
(load custom-file t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; æ¥æ¬èªã®è¨å®
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ç°å¢ã«åãããæ¥æ¬èªæåã³ã¼ãã«è¨å®
;; Windows => SJIS
;; Linux => ç°å¢å¤æ° LANG ãã
(set-language-environment "Japanese")
;; set-language-environment ã§ãã¾ããããªãå ´åã«è¨å®
;; (prefer-coding-system 'utf-8)
;; ãã¡ã¤ã«ã®æåã³ã¼ãã ãå¥ã«æå®ãããå ´åã«è¨å®
;; (setq-default buffer-file-coding-system 'utf-8-with-signature) ; BOM ä»ã UTF-8