--- title: パソコンの再インストール author: kazu634 date: 2007-12-23 wordtwit_post_info: - 'O:8:"stdClass":13:{s:6:"manual";b:0;s:11:"tweet_times";i:1;s:5:"delay";i:0;s:7:"enabled";i:1;s:10:"separation";s:2:"60";s:7:"version";s:3:"3.7";s:14:"tweet_template";b:0;s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:3505;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}}' categories: - つれづれ ---

 修論が終わった暇に任せてパソコンの再インストールをしていました。ようやく終わりつつあります。自分用のメモとしてここに書き散らかしておこうと思っています。

今回は、Meadow関係で詰まったところを書こうと思う。

Cygwinの導入

 CygwinというのはWindowsで擬似的にUNIXの環境を作る…というような意味合いのものです。たぶん。基本的にはCygwinからネットワークインストールをすれば大丈夫です。

 ただし、環境情報でpathをcygwin\binに通しておくのを忘れるとちょっと痛い目に遭います。*1

設定する項目
CYGWIN nontsec
HOME /home/sohda
MAKE_MODE UNIX
SHELL /bin/bash
設定する項目 = 値

という形で設定します。

Meadowのインストール

 Meadowからネットワークインストールすれば大丈夫。ただしhowmを使う場合はhowmから自力でインストールした方がいい。ここでかなりの時間を浪費した。*2

参考:

Meadow – howmのインストール

 howmというのはメモ書き環境のこと。詳しくはリンク先参照のこと。今回、Meadowのネットワークインストールで導入すると詰まった。何がいけないのかはわからないが、最新のやつを入れたら幸せになれた。

 howm (一人お手軽 Wiki もどき)書き散らかしメモツール ― howmを参考にするといろいろと設定ができる。便利だと思ったのが、「全文検索のとき, メモに加えて指定ディレクトリ以下も再帰的に探す」というやつ。

(setq howm-search-path '("~/Mail" "~/News"))
(setq howm-search-other-dir t) ;; 下記のトグルの初期値 (t か nil)

howmのメモフォルダ以外にもブログに投稿したファイルの中から検索できるように設定した。こいつはすばらしい。

 後、あるPC-AT屋の日記にはhowmのメモを保存するディレクトリを指定する方法が書いてあった。こいつもすてきな情報だと思う。

(setq howm-directory " ~/svn" )

 とりあえず、howm (一人お手軽 Wiki もどき)書き散らかしメモツール ― howmを参考にしてできた設定がこちら:

;; ===== howm =====
(setq howm-menu-lang 'ja)
(require 'howm)
;; howmの保存フォルダを変更する
;; http://www.fastwave.gr.jp/diarysrv/fy/200601c.html
(setq howm-directory "~/data/text/howm/" )
;; howm - オートセーブを抑制する
(setq howm-menu-refresh-after-save nil)
;; howm - オートセーブを抑制する
(setq howm-refresh-after-save nil)
;; リンクを TAB で辿る
(eval-after-load "howm-mode"
'(progn
(define-key howm-mode-map [tab] 'action-lock-goto-next-link)
(define-key howm-mode-map [(meta tab)] 'action-lock-goto-previous-link)))
;; メニューの予定表の表示範囲
;; 10 日前から
(setq howm-menu-schedule-days-before 10)
;; 3 日後まで
(setq howm-menu-schedule-days 7)
;; いちいち消すのも面倒なので
;; 内容が 0 ならファイルごと削除する
(if (not (memq 'delete-file-if-no-contents after-save-hook))
(setq after-save-hook
(cons 'delete-file-if-no-contents after-save-hook)))
(defun delete-file-if-no-contents ()
(when (and
(buffer-file-name (current-buffer))
(string-match "\\.howm" (buffer-file-name (current-buffer)))
(= (point-min) (point-max)))
(delete-file
(buffer-file-name (current-buffer)))))
;; カレンダーで日付を入力
(eval-after-load "calendar"
'(progn
(define-key calendar-mode-map
"\C-m" 'my-insert-day)
(defun my-insert-day ()
(interactive)
(let ((day nil)
(calendar-date-display-form
'("[" year "-" (format "%02d" (string-to-int month))
"-" (format "%02d" (string-to-int day)) "]")))
(setq day (calendar-date-string
(calendar-cursor-to-date t)))
(exit-calendar)
(insert day)))))
;;howm のメニューで d でカレンダー
(add-hook 'howm-menu-hook
'(lambda ()
(local-set-key "d" 'calendar)))
;; howmで検索するときに検索するパスの追加
(setq howm-search-path '("~/data/text/hatena/"))
(setq howm-search-other-dir t) ;; 下記のトグルの初期値 (t か nil)

hatena-modeの設定

 hatena-modeというのはemacsではてなに記事を投稿できるようにしてくれるelispです。hatena-modeをみればわかりますが、hatena-modeを動かすためには

の二つが必要になります。curlはCygwinの中に含まれている。Win32 Open SSLからWin32のバイナリをダウンロードし、インストールすれば大丈夫。

 ちなみに、エラー – hatena-mode.el for Emacs – SourceForge.JPで配布されているのは、ちょっと修正が施されていないものらしいです。以下を参照:*3

--- hatena-mode.el	28 Oct 2005 09:14:30 -0000	1.14
+++ hatena-mode.el	6 Jul 2007 10:29:21 -0000
@@ -338,7 +338,7 @@
(call-process hatena-curl-command nil nil nil
"-k"  "-c" hatena-cookie
"-x" hatena-proxy
-		  "-d" (concat "key=" hatena-usrid)
+		  "-d" (concat "name=" hatena-usrid)
"-d" (concat "password=" password)
"-d" (concat "autologin=1")
"-d" (concat "mode=enter")

ようは、hatena-mode.elで「hatena-curl-command」を検索し、「(concat “key=” hatena-usrid)」を「(concat “name=” hatena-usrid)」に変更すればいいということらしい。*4

 これで使えるようになった。

LaTeX

 Cygwinだとうまく動くかよくわからなかったので、前回を踏襲して「作ったもの,書いたもの,その他」から「TeXインストーラ3 0.60」をダウンロードして、LaTeXを一式インストールした。

 MeadowのネットワークインストールでYaTeXをインストールしておく。この状態だと不便きわまりないので、latexmkをインストールする。*5ちなみに、CygwinでPerlを導入しておくこと。

 latexmkをパスが通っているところに保存し、ファイル名を「latexmk.pl」から「latexmk」にファイル名を変更する。そいで、latexmkを適当なエディタで開き「invoke」で検索をかける。すると「## Commands to invoke latex, pdflatex」(「latexとpdflatexを呼び出すコマンドの名前を教えてちょい」)というのがヒットするはずなので、その一行下の

$latex  = 'latex';

$latex  = 'platex';

に変更する。さらに「invoke」で検索し、

$bibtex  = 'bibtex';

$bibtex  = 'jbibtex';

へと変更する。これで日本語でも大丈夫なはず。

 後は、.emacsにこんな風に追記:

;; ===== YaTeXの設定 =====
;; yatex-mode を起動させる設定
(setq auto-mode-alist
(cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
(autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
;; LaTeX コマンド、プレビューワ、プリンタなどの設定
(setq tex-command "latexmk -dvi"
dvi2-command "c:/tex/dviout/dviout"
dviprint-command-format "dvipdfmx %s"
YaTeX-kanji-code 1   ; (1 SJIS, 2 JIS, 3 EUC) JIS(junet-unix)だとOS依存せずにコンパイルできる
YaTeX-latex-message-code 'sjis  ; 改行に ^M がつかないようにする
section-name "documentclass"
makeindex-command "mendex"
YaTeX-use-AMS-LaTeX t   ; AMS-LaTeXを使う
YaTeX-use-LaTeX2e t     ; LaTeX2eを使う
YaTeX-use-font-lock t   ; 色付け
)
;; 自動改行を無効
(add-hook 'yatex-mode-hook'(lambda ()(setq auto-fill-function nil)))

おわっての感想

 異常に疲れた。

*1Cygwin 環境の構築より引用

*2:どうやら過去の自分はパッケージインストールをしないで、自力で導入していたらしく、.emacsをコピペでエラーがでたのです。

*3:via hatena-modeを修正

*4:本当はパッチファイルなのだから、パッチを当てればいいのだろうが、いかんせん、ダウンロードできたhatena-mode.elはタイムスタンプがこれよりやや古かった…

*5:いや、文献ファイルとかがあったりすると、手動で5回ぐらい順番にplatex–>jbibtexと実行する必要があるんですよ。本当に。latexmkがあれば自動的にこなしてくれるのです。便利