cygwin 1.7.11-1 + emacs 23.4.1 on Windows7 x64 の設定まとめ
* download
http://cygwin.com
から、
http://cygwin.com/setup.exe
を
c:\cygwin
にダウロードして、インストール開始。
* Select Packages
setup.exe を実行して、適当に[Next]だが、
後々のことを考えて、以下は追加
- [All]>[Devel]
- [All]>[Web]>[wget: Utility to retrieve files from the WWW via HTTP and FTP]
- [All]>[Libs]>[libncurses7:libraries for terminal handling (runtime)]
- [All]>[Python]
- [All]>[Ruby]
- [All]>[X11]
- [Search] に [emacs] と入れて、出てきたもの全て
* mintty option
bash を起動して、タイトルバーを右クリックし、[Option]
** Transparency
[Lock]ツリーをクリックし、Transparency を Medium に設定
** locale
[Text]ツリーをクリックし、[Locale]で[jp.JP]を、[Character Set]で
[UTF-8]を選択
** font の設定
*** MeiryoKe のインストール
メイリオ・メイリオ改・meiryoKe・ttfname3
http://web1.nazca.co.jp/hp/nzkchicagob/m2x0897/mrkta5bz.html
1. meiryo602.zip. meiryo_Kai602.zip. meiryoKe_gen_6.02rev1.zip をダウン
ロード
2. 同じフォルダに全部入れて、meiryoKe_gen_6.02rev1.exe を実行
3. meiryo.ttc と meiryob.ttc はもういらない。削除。その他をコンパネから
インストトール
*** 設定
[Text]ツリーをクリックし、[Font]で[Select]をクリック、MeiryoKe_Console
を選択して、12pt とし、[OK]をリリック
** Windows 設定
[Window]ツリーを選択して、[Defalt Size]で適当に変更し、OK。
** 色の設定
mintty の青色が馬鹿にみにくい
$ emacs
C-x C-f ~/.minttyrc
-------------------------------------
*** /home/user/.minttyrc.orig date.old
--- /home/user/.minttyrc date
***************
*** 8,10 ****
--- 8,26 ----
BackgroundColour=0,0,0
Rows=54
+ Black=0,0,0
+ Red=255,100,0
+ Green=183,234,17
+ Yellow=234,206,28
+ Blue=107,155,219
+ Magenta=237,157,185
+ Cyan=0,191,191
+ White=255,255,255
+ BoldBlack=64,64,64
+ BoldRed=255,100,0
+ BoldGreen=183,234,17
+ BoldYellow=234,206,28
+ BoldBlue=107,155,219
+ BoldMagenta=237,157,185
+ BoldCyan=64,255,255
+ BoldWhite=255,255,25
-------------------------------------
* proxy
** bash
$ cd ~
$ emacs
C-x C-f .bashrc
-------------------------------------------------------------------
*** /home/user/.bashrc.orig date.old
--- /home/user/.bashrc date
***************
*** 196,198 ****
--- 196,200 ----
# }
#
# alias cd=cd_func
+
+ export http_proxy=http://<user-id>:<passward>@XXX.XXX.XXX.XXX:YY/
-------------------------------------------------------------------
** wget
$ cd ~
$ emacs
C-x C-f .wgetrc
-----------------------
HTTP_PROXY=address:port
-----------------------
** subversion
$ cd ~/.subversion/
$ cp servers servers.orig
$ emacs &
C-x C-f survers
----------------------------------------------------------
*** /home/user/.subversion/servers.orig date.old
--- /home/user/.subversion/servers date
***************
*** 141,148 ****
### due to SSL.
[global]
# http-proxy-exceptions = *.exception.com, www.internal-site.org
! # http-proxy-host = defaultproxy.whatever.com
! # http-proxy-port = 7000
# http-proxy-username = defaultusername
# http-proxy-password = defaultpassword
# http-compression = no
--- 141,148 ----
### due to SSL.
[global]
# http-proxy-exceptions = *.exception.com, www.internal-site.org
! http-proxy-host = address
! http-proxy-port = port
# http-proxy-username = defaultusername
# http-proxy-password = defaultpassword
# http-compression = no
----------------------------------------------------------
* apt-cyg のインストール
----------------------------------------------------------
$ cd /bin/
$ svn --force export http://apt-cyg.googlecode.com/svn/trunk/ /bin/
A .
A apt-cyg
リビジョン 18 をエクスポートしました。
$ chmod +x /bin/apt-cyg/
$ apt-cyg -m ftp://ftp.iij.ad.jp/pub/cygwin/ update
----------------------------------------------------------
* emacs
** font
*** init.el
;; ------------------------------------------------------------------------
;; @ Font Setting
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(blink-cursor-mode nil)
'(column-number-mode t)
'(cua-mode t nil (cua-base))
'(display-time-mode t)
'(show-paren-mode t))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(default ((t (:inherit nil :stipple nil :background "white" :foreground "black" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 121 :width normal :foundry "microsoft" :family "MeiryoKe_Console")))))
** 個人的な設定
*** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ 個人的な初期設定
; 区切り文字に全角スペースや、・を含める
(setq paragraph-start '"^\\([ ・○<\t\n\f]\\|(?[0-9a-zA-Z]+)\\)")
;; startup directory
(setq default-directory "~/")
;; ファイルのカーソル内の位置を記憶
(setq-default save-place t)
;; ログの記録行数を増やす
(setq message-log-max 10000)
;; undo をいっぱい
(setq undo-limit 100000)
(setq undo-strong-limit 130000)
;; キーストロークの表示速度を上げる
(setq echo-keystrokes 0.1)
;; でかいファイルも普通に開く(デフォルトは10MB)
(setq large-file-warning-threshold (* 50 1024 1024)) ;50MB
;; いちいち yes とか無理だから y にする
(defalias 'yes-or-no-p 'y-or-n-p)
;; BS や Delete キーでリージョン内の文字を削除
(delete-selection-mode 1)
;; TAB を bacspace で消すとき、半角スペースとして消さないで、tabのまま消す
(global-set-key [backspace] 'backward-delete-char)
;; 前回編集していた場所を記憶し,ファイルを開いた時にそこへカーソルを移動
(require 'saveplace)
(setq-default save-place t)
;; 矩形選択とか便利な cua-mode
(setq cua-enable-cua-keys nil) ;;C-xでkill-regionとかになって変な感じになるので。
(cua-mode t)
;; @ クリップボード転送ができないことがある。
(cond (window-system (setq x-select-enable-clipboard t)))
;; kill-ring はテキスト属性(色情報など)を保存しなくていい
(defadvice kill-new (around my-kill-ring-disable-text-property activate)
(let ((new (ad-get-arg 0)))
(set-text-properties 0 (length new) nil new)
ad-do-it))
;; 初期画面をいきなりbuffer-menuにする
(buffer-menu)
;; 括弧の対応表示
(setq blink-matching-paren t)
(show-paren-mode t)
(setq paren-sexp-mode t)
(set-face-background 'show-paren-match "royalBlue1")
;; 対応する括弧に移動のキーバインドを C-{ と C-} に変更 (C-M-f/p相当)
(global-set-key [?\C-{] 'backward-list)
(global-set-key [?\C-}] 'forward-list)
;; 行番号の表示
(line-number-mode t)
;; 列番号の表示
(column-number-mode t)
;; 時刻の表示
(require 'time)
(setq display-time-24hr-format t)
(setq display-time-string-forms '(24-hours ":" minutes))
(display-time-mode t)
;; カーソル点滅表示
(blink-cursor-mode 0)
;; スクロール時のカーソル位置の維持
(setq scroll-preserve-screen-position t)
;; スクロール行数(一行ごとのスクロール)
(setq vertical-centering-font-regexp ".*")
(setq scroll-conservatively 35)
(setq scroll-margin 0)
(setq scroll-step 1)
;; バッファ中の行番号表示
(global-linum-mode t)
;; 行番号のフォーマット
;; (set-face-attribute 'linum nil :foreground "red" :height 0.8)
(set-face-attribute 'linum nil :height 0.8)
(setq linum-format "%4d")
;; 画面スクロール時の重複行数
(setq next-screen-context-lines 1)
;; タブ, 全角スペースを色つき表示する (色名は M-x list-color-displayで調べる)
;; http://homepage1.nifty.com/blankspace/emacs/color.html
(defface my-face-b-1 '((t (:background "red4"))) nil) ;全角スペースの色
(defface my-face-b-2 '((t (:background "gray6"))) nil) ;タブの色
(defface my-face-u-1 '((t (:foreground "MediumPurple4" :underline t))) nil) ; 無駄な半角スペースの色
(defvar my-face-b-1 'my-face-b-1)
(defvar my-face-b-2 'my-face-b-2)
(defvar my-face-u-1 'my-face-u-1)
(defadvice font-lock-mode (before my-font-lock-mode ())
(font-lock-add-keywords
major-mode
'(("\t" 0 my-face-b-2 append)
(" " 0 my-face-b-1 append)
("[ \t]+$" 0 my-face-u-1 append)
)))
(ad-enable-advice 'font-lock-mode 'before 'my-font-lock-mode)
(ad-activate 'font-lock-mode)
;;起動時のフレームサイズを設定する
;; *scratch*バッファを開き,(frame-width), (frame-height) と書き,C-jする
(setq initial-frame-alist
(append
'((width . 120) ; フレーム幅(文字数)
(height . 55) ; フレーム高(文字数)
(top . 30) ; フレームの Y 位置(ピクセル数)
(left . 10) ; フレームの X 位置(ピクセル数)
) initial-frame-alist))
;ツールバー(アイコン)を消す
(tool-bar-mode -1)
;; 同名のファイルのバッファ名にディレクトリ名を追加する uniquify.el
(require 'uniquify)
(setq uniquify-buffer-name-style 'post-forward-angle-brackets)
-----------------------------------------------------------------------------
** software/packages
*** ddskk
**** install
以下から拾ってくる
Daredevil SKK (DDSKK)
http://openlab.ring.gr.jp/skk/ddskk-ja.html
-----------------------------------------------------------------------------
$ wget http://www.ring.gr.jp/archives/elisp/skk/maintrunk/ddskk-14.4.tar.gz
$ wget http://openlab.jp/skk/dic/SKK-JISYO.L.gz
$ gzip -cd ddskk-14.4.tar.gz | tar xvf -
$ gunzip SKK-JISYO.L.gz
$ mv SKK-JISYO.L ddskk-14.4/dic/
$ cd ddskk-14.4/
$ make what-where
$ make cdb
$ make install
-----------------------------------------------------------------------------
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ ddskk
;; http://openlab.ring.gr.jp/skk/ddskk-ja.html
;; ~/ddskk-14.4/etc/dot.emacs
;; ~/ddskk-14.4/etc/dot.skk
(require 'skk-autoloads) ; XEmacs でパッケージとしてインストールした場合は不要
(global-set-key "\C-x\C-j" 'skk-mode)
(global-set-key "\C-xj" 'skk-auto-fill-mode)
(global-set-key "\C-xt" 'skk-tutorial)
(setq skk-cdb-large-jisyo "/usr/share/skk/SKK-JISYO.L.cdb")
-----------------------------------------------------------------------------
*** auto-install
**** install
---------------------------------------------------------------------------------
~ $ mkdir ~/.emacs.d/auto-install
~ $ cd ~/.emacs.d/auto-install/
~/.emacs.d/auto-install $ wget http://www.emacswiki.org/emacs/download/auto-install.el
---------------------------------------------------------------------------------
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ auto-install.el
;; ロードパスの追加
(add-to-list 'load-path
"~/.emacs.d/auto-install")
(require 'auto-install)
(setq auto-install-directory "~/.emacs.d/auto-install")
(auto-install-update-emacswiki-package-name t)
;; (when (y-or-n-p "ネットに繋がっていますか?")
;; (auto-install-update-emacswiki-package-name t)) ; 通信遅れ対策
;; install-elisp.el 互換モードにする
(auto-install-compatibility-setup)
;; ediff 関連のバッファを 1 つのフレームにまとめる
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
(put 'downcase-region 'disabled nil)
-----------------------------------------------------------------------------
*** aspell
**** install
$ apt-cyg install aspell aspell-en
C-x C-f ~/.aspell.conf
-----------------------
lang en_US
-----------------------
C-x C-s
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;;ispell が無いから、 aspell を使う
(setq-default ispell-program-name "aspell")
(eval-after-load "ispell"
'(add-to-list 'ispell-skip-region-alist '("[^\000-\377]+")))
-----------------------------------------------------------------------------
*** 日本語の info を導入する
**** install
M-x eshell
--------------------------------------------------------------------------
~ $ wget http://www.rubyist.net/~rubikitch/archive/emacs-elisp-info-ja.tgz
~ $ tar xzvf emacs-elisp-info-ja.tgz
--------------------------------------------------------------------------
C-x C-f /usr/share/info/dir
--------------------------------------------------------------------------
*** /usr/share/info/dir.orig date.old
--- /usr/share/info/dir date
***************
*** 213,215 ****
--- 213,219 ----
GNU Emacs Lisp
* SKK: (skk). Simple Kana to Kanji conversion program.
+
+ * Elisp-ja: (elisp-ja). Emacs Lisp Reference Manual(Japanease)
+ * Emacs-ja: (emacs-ja). The extensible self-documenting text editor(Japanease)
+
--------------------------------------------------------------------------
**** init.el
;; ------------------------------------------------------------------------
;; @ 日本語 info をいれる
(require 'info)
;; (add-to-list 'Info-additional-directory-list "/usr/share/info")
(add-to-list 'Info-directory-list "~/info")
*** cmigemo
**** install
M-x eshell
--------------------------------------------------------------------------
~ $ mkdir download
~ $ cd download/
~/download $ wget http://hp.vector.co.jp/authors/VA000501/qkcc100.zip
~/download $ unzip qkcc100.zip
~/download $ make
~/download $ cp -p qkc.exe /usr/local/bin/
~/download $ wget http://cmigemo.googlecode.com/files/cmigemo-default-src-20110227.zip
~/download $ unzip cmigemo-default-src-20110227.zip
~/download $ cd cmigemo-default-src/
~/download/cmigemo-default-src $ chmod 755 *
~/download/cmigemo-default-src $ ./configure
--------------------------------------------------------------------------
C-x C-f /cmigemo-default-src/src/wordbuf.c
-----------------------------------------------------------------------------
*** /home/user/download/cmigemo-default-src/src/wordbuf.c.orig date.old
--- /home/user/download/cmigemo-default-src/src/wordbuf.c date
***************
*** 9,14 ****
--- 9,15 ----
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+ #include <limits.h>
#include "wordbuf.h"
#define WORDLEN_DEF 64
-----------------------------------------------------------------------------
M-x eshell
-----------------------------------------------------------------------------
~/download/cmigemo-default-src $ make cyg
~/download/cmigemo-default-src $ cd build/
~/download/cmigemo-default-src/build $ cp cygmigemo1.dll /usr/bin/
~/download/cmigemo-default-src/build $ cp cmigemo.exe /usr/bin/
~/download/cmigemo-default-src $ export http_proxy="http://XXX.XXX.XXX.XXX:YY"
~/download/cmigemo-default-src $ make cyg-dict
~/download/cmigemo-default-src $ cd dict/
~/download/cmigemo-default-src/dict $ make utf-8
~/download/cmigemo-default-src $ cd ..
~/download $ wget http://0xcc.net/migemo/migemo-0.40.tar.gz
~/download $ tar zxvf migemo-0.40.tar.gz
~/download $ mkdir -p ~/.emacs.d/cmigemo
~/download $ mv migemo-0.40/migemo.el.in ~/.emacs.d/cmigemo/migemo.el
-----------------------------------------------------------------------------
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ cmigemo
;; ロードパスの追加
(add-to-list 'load-path
"~/.emacs.d/cmigemo")
(setq migemo-command "cmigemo")
(setq migemo-options '("-q" "--emacs" "-i" "\a"))
(setq migemo-dictionary "/usr/local/share/migemo/utf-8/migemo-dict")
(setq migemo-user-dictionary nil)
(setq migemo-regex-dictionary nil)
(setq migemo-coding-system 'utf-8-unix)
(load-library "migemo")
(migemo-init)
-----------------------------------------------------------------------------
*** recentf-ext.el
**** install
M-x install-elisp-from-emacswiki
recentf-ext.el
C-c
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ 最近使ったファイルを開く recentf-ext.el
;; 最近のファイルを 3000 個保存する
(setq recentf-max-saved-items 3000)
;; 読み込み
(require 'recentf-ext)
-----------------------------------------------------------------------------
*** open-junk-file.el
**** install
M-x install-elisp-from-emacswiki
open-junk-file.el
C-c
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ 使い捨てのファイルを開く open-junk-file.el
;; 読み込み
(require 'open-junk-file)
;; ファイル名およびファイル場所の指定
(setq open-junk-file-format "~/junk/%Y-%m-%d-%H%M%S.")
-----------------------------------------------------------------------------
*** anything.el
**** install
M-x auto-install-batch anything
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ anything
(require 'anything-startup)
(setq extended-command-history '(
"open-junk-file"
"untabify"
"align-regexp"
"recentf-open-files"
"toggle-truncate-lines"
"describe-prefix-bindings"
))
-----------------------------------------------------------------------------
*** bat-mode.el
**** install
M-x eshell
---------------------------------------------------------------------------------
~ $ mkdir -p ~/.emacs.d/bat-mode
~ $ cd ~/.emacs.d/bat-mode/
~/.emacs.d/bat-mode $ wget http://ftp.gnu.org/old-gnu/emacs/windows/contrib/bat-mode.el
---------------------------------------------------------------------------------
M-x byte-complie-file bat-mode.el
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ windows batch-mode
;; ロードパスの追加
(add-to-list 'load-path
"~/.emacs.d/bat-mode")
(setq auto-mode-alist
(append
(list (cons "\\.[bB][aA][tT]$" 'bat-mode))
;; For DOS init files
(list (cons "CONFIG\\." 'bat-mode))
(list (cons "AUTOEXEC\\." 'bat-mode))
auto-mode-alist))
(autoload 'bat-mode "bat-mode"
"DOS and WIndows BAT files" t)
-----------------------------------------------------------------------------
*** auto-complete.el
**** install
M-x eshell
-------------------------------------------
~/ $ cd ~/download/
~/download $ unzip auto-complete-1.3.1.zip
~/download $ mv auto-complete-1.3.1 ~/.emacs.d/
-------------------------------------------
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ 入力補完支援 auto-complete.el
;; ロードパスの追加
(add-to-list 'load-path
"~/.emacs.d/auto-complete-1.3.1")
(require 'cl)
(require 'auto-complete)
;; 3.2. インストールスクリト
;; http://cx4a.org/software/auto-complete/manual.ja.html
(add-to-list 'ac-dictionary-directories "~/.emacs.d/auto-complete-1.3.1/dict")
(require 'auto-complete-config)
(ac-config-default)
;; 7.4. TAB で補完を完了する( RET は使わない)
;; http://cx4a.org/software/auto-complete/manual.ja.html
(define-key ac-completing-map "\t" 'ac-complete)
(define-key ac-completing-map "\r" nil)
;; 7.8. 特定のモードで自動で auto-complete-mode を有効にする
;; http://cx4a.org/software/auto-complete/manual.ja.html
(add-to-list 'ac-modes 'org-mode) ;; org-mode になったら、 auto-complete をスタートさせる
(add-to-list 'ac-modes 'text-mode)
(add-to-list 'ac-modes 'ruby-mode)
(add-to-list 'ac-modes 'pyhon-mode)
-----------------------------------------------------------------------------
*** text-transrator.el
**** install
M-x auto-install-batch
text translator
C-c
var なんたらが無いとエラーが発生する場合もあるが、2ー3回やれば大丈夫っ
ぽい。
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; Emacs でテキスト翻訳をする elisp
;; http://quantumfluctuation.blogspot.com/2011/05/text-translatorel_22.html
(require 'text-translator)
(setq text-translator-auto-selection-func
'text-translator-translate-by-auto-selection-enja)
;; 自動選択に使用する関数を設定
(setq text-translator-auto-selection-func
'text-translator-translate-by-auto-selection-enja)
;; ;; グローバルキーを設定
;; (global-set-key "\C-xt" 'text-translator-translate-by-auto-selection)
;; ;; if you are setting environment variables HTTP_PROXY,
;; ;; you have not to set this.
(setq text-translator-proxy-server "XXX.XXX.XXX.XXX")
(setq text-translator-proxy-port YY)
-----------------------------------------------------------------------------
*** emacs-w3m
**** download
CVS は HTTP Port でないため、 Proxy CVS 用に Proxy の設定をしなければな
らないが、よく分からない。
HTTP Proxy だけ与えられているので、トンネルする方法もあるようだが、そん
なことはできるだけやりたくない。
しかたないので、 proxy が不要な環境で、 emacs-w3m のファイルをとってく
る。 bash での手順は以下のとおり。
-----------------------------------------------------------------------------
~ $ apt-cyg install w3m
~ $ wget http://emacs-w3m.namazu.org/emacs-w3m-1.4.4.tar.gz
~ $ cvs -d :pserver:anonymous@cvs.namazu.org:/storage/cvsroot login
~ $ CVS password: [RET]
~ $ cvs -d :pserver:anonymous@cvs.namazu.org:/storage/cvsroot co emacs-w3m
~ $ tar zxf emacs-w3m-1.4.4.tar.gz
~ $ cp -r emacs-w3m-1.4.4 emacs-w3m-cvs
~ $ cp -f emacs-w3m/* emacs-w3m-cvs
-----------------------------------------------------------------------------
上記できた emacs-w3m-cvs フォルダの中身をとっておけば OK 。
**** install
-----------------------------------------------------------------------------
~/download/emacs-w3m-cvs $ chmod 755 *
~/download/emacs-w3m-cvs $ ./configure
~/download/emacs-w3m-cvs $ make
~/download/emacs-w3m-cvs $ make install
-----------------------------------------------------------------------------
**** init.el
-----------------------------------------------------------------------------
;; ------------------------------------------------------------------------
;; @ w3m-emacs
(require 'w3m-load)
(setq w3m-use-cookies t)
(setq w3m-home-page "www.google.co.jp")
-----------------------------------------------------------------------------
0 件のコメント:
コメントを投稿