トップページ > ZaurusSL-C3000 > 初期設定 > emacsその1
旧ホームページの旧HP/SL-C700悪戦苦闘で一部成果があがっていたが、またEmacsから離れたのでそれと重複することもたくさんあります。
一応、こちらが詳しくなるようにしていきたいけれど、そちらも読んでみてください。
旧HP/SL-C700悪戦苦闘
ZaurusSL-C3000/初期設定/emacsその2
ZaurusSL-C3000/初期設定/emacsその3
ZaurusSL-C3000/初期設定/emacsその4
ZaurusSL-C3000/初期設定/emacsその5
ZaurusSL-C3000/初期設定/ドットemacs
Meadow/Emacsスーパーチュートリアルという本ISBN:479800894Xを読み、やっと
emacsでどんなことができるかわかり始めてきた。
筆者のサイトEmacs電子書棚を見るとこの本と同じ内容
が詳しく書かれている。MeadowはWindows用のEmacsだが基本はEmacsであり、かなりの部
分はEmacsでも実現できそうだ。
何がこの本のよさかというと、Emacsの各種の入門書は、実はこれをつかってどういうふ
うに文章を作り上げていくかというEditorの基本機能について、どれもこれも貧弱な解
説しか書いていなかった。
Windowsの世界でエディタについて書かれてているものを読めばわかると思うが、基本的
にはプレーンなテキストの世界で、文章をねりあげ、文書としてアウトプットするため
にどんな機能があり、どれだけ便利に使えるかということが中心である。
たとえば、インデント、センタリング、アイデアプロセッサー、脚注、脚本などなど、
どんな文書を生み出していくかということに向かって、どれだけサポートする機能があ
るかといことが重要だ。
しかるに、Emacsについては、確かにプログラムを書いたり理系の論文を書く人には、便
利かもしれないけど、一般の文書をあまり書かない人のためのエディターらしく、どの
入門書も延々と日本語の入力をするにはどういう設定をしたらよいかが続いたと思った
ら、すぐ次は、文書作成をとばして、Emacsではカレンダーができます。Emacsではメー
ルもうてます。インターネットだって見れるんだぞということになってしまう。思わず
「おまえはエディターなんだから」といいたくなってしまう。そして、SKKやらWNNやら
CANNAやらの設定で頭をなやまし、C-XやらM-Vやら、カーソルの移動のさせかたのあたり
で、偏頭痛がしてきて、放り出してしまう。
Wordの解説書を読んだって、こんなアウトプットがしたければという観点で書いてあ
り、メールができるよだとか、インターネットとの関連をとるにはとかいう話は、最後
のほうにちょっと書いてあるだけだ。日本語入力だって、WindowsのIMEは本当に頭が悪
いやつが作ったに違いないとあたり散らすことはあるものの、ATOKがあるよなんて話
は、おまけにすぎない。
ところが本書では、メモやアイデアをどうしたら便利に利用できるか。メモだっていろ
んなとりかたがあるよ。Emacs−Wikiを使えばWiki風のデータベースも作れるよ。という
ようにアウトプットを意識したことが書かれており、ようやく世界が開けたような気分
になった。現在は本書のいろいろな機能をひとつづつ導入していくつもりである。
なお、ここに書かれていることは、自分自身の旅のメモであり、私のオリジナルは何も
ない。もしこのとおりにやって動かないときは、必ず出典で確認してもらいたい。
私自身は単なるユーザーにすぎず、Emacsのマクロの解説も批判もできる立場にない。
自分で書き写したつもりが、間違った入力になっている場合もあり、動いているのも正
しくインストールしたかどうかの確信は何も無い。間違ったコマンドを書き込んだけれ
ど、たまたまラッキーにもEmacs側がエラーだとして無視したためかもしれない。
そういう前提で読んでもらいたい。
なお、zeditorを使えるところは使ったほうが良いと思い、実際「.emacs」を書くときは
実はemacsでは書かない。というのはzeditorなら再度ファイルを読み込むときは、
KeyHelperを使いAddressボタン+zで起動し、スタイラスで最近のファイルで指定するだ
けなので、ひと手間省けるのだから。
逆にアウトラインやらキーワードのあるメモを閲覧したいと思ったら、emacsほど力強い
ものはない。
とにかく、SKKとかの世界はよくわからない。ZaurusSL-C3000の日本語入力に不満なのは皆同じだと思うが、他のものを入れることに悩むよりは、これで日本語入力をすることにする。ザウルスの日本語入力環境はPalmだPocketPCだという中で最低のレベルだと思う。いいかげんA300、C700、C760、C860、C3000と進化してきたのだから、日本語入力のお粗末さも何とかしてもらいたいものだが、一向に改善されそうも無い。
そりゃああまり使わない熟語が変換されないのは許せるものの、単漢字変換で音読みをいれたときぐらい、JISの漢字がすべて表示されるようにしてもらたい。私は、手書き入力に切り替えて漢字を出したり、熟語を入れて不要文字を削ったりと苦労している。ユーザー辞書が1000語程度なのに、単漢字をいれるなんて馬鹿げている。何とかしてよシャープさん。
という文句はここまでにして、
いとしのlizaさんから、
これを本体にインストールしよう。物草さん作成のタコのアイコンがでてきたら、インストール成功。
これで日本語入力が可能になる。他のものは日本語の入力方法に一工夫が必要で、一行入力欄が犠牲になるのだけれど、その一工夫ができないので他のターミナルのパッケージはいまだに使えない。
使い方は、物草さんのリナザウチップス 〜タコのためのターミナル操作編を参考にしてもらいたい。
特別に付け加えるとすれば、もう周知のことなんだろうけれど、
emacsのザウルス用のパッケージはいろいろな人が作成している。
でも、emacs以外で、関連しているソフトウエアのパッケージまでトータルで考えると、dipusさんの徒然な覚書のところの右側のフレームのPrivate Packagesのリンク先にあるemacsをお勧めする。多分この方がZaurus Super Guideの執筆者の一人なんだろうけど編者で、基本的にどのパッケージもSDカードにインストールが可能になっている。それ以外もこのサイトにあるものを中心にインストールすることになる。
また、別のサイトではパッケージによっては、ある程度熟練者を想定しできるだけ軽量化するために、TUTORIALという初心者向けのマニュアルが省かれている場合もある。
初心者にはTUTORIALが必要だ。
まずは、emacs関係のインストール
もしもSDカードにインストールできないときは、本体にインストールのこと。
ドットemacsとは「.emacs」のこと。これがemacsの環境設定ファイルだ。
ところがいろいろな本を読んだり、いろいろなサイトを見ると、あるときは「.emacs」またあるときは「.emacs.el」と書かれており、何か使い分けがあるのかと思い、最初に「.emacs」を覚えたのでelがついているページは参考にはならないと勘違いしていた。
「emacsらくらく入門」という本を読みISBN:4774120413ようやくどういうものかわかった。もともと環境設定ファイルは「.emacs」だったのだけれど、それがElispという言語で書かれているため、それを明確にするために「el」という拡張子がついたのだそうだ。したがって、emacsを起動するときは「.emacs.el」があるときはそれを読み込み「.emacs」は無視する。「.emacs.el」がないときは「.emacs」を読み込む仕様になっているそうだ。
とりあえずここでは「.emacs」として統一するが、今後あちこちのサイトで研究したりするときは、「.emacs.el」も「.emacs」も同じ設定をするファイルであり、両方いれたら「.emacs.el」だけを読み込むのだということに注意しよう。
りな茶さんのHowToEmacs(なんちゃって編)の設定どおりに/home/zaurus/のディレクトリに「.emacs」を作成する。
自分でザウルスのエディターで打ち込んでもいいけれど、コピー&ペーストの方が安全だ。Windowsのエディターで作成して一応「.txt」という拡張子をつけておき、ザウルスに移して、ザウルスのエディターでEUCに変更して「.emacs」という名前で保存しよう。
ちなみに私なら、こういうときはeeditを使う。zeditorやyEditは保存するまえにあらかじめEUCで保存する設定にしておかないといけないが、eeditだと保存時にEUCを指定できる。ただしeeditは開くときの一覧では、「.emacs」は隠しファイルの扱いとなり、表示されない。しかし、ファイル名の欄に「.emacs」と書き込んで開くと、ちゃんと「.emacs」ファイルを読み込める。
;; ;; .emacs for emacs21 / SL-C700 ;; ;; Japanese Setting (set-buffer-file-coding-system 'euc-jp-unix) (set-terminal-coding-system 'euc-japan) (set-language-environment "Japanese") (set-keyboard-coding-system 'euc-jp) ;; Menu ==> Raise menu in tty (global-set-key [f11] 'tmm-menubar) ;; Sensible of pen tapping (xterm-mouse-mode 1)
と記載しよう。ちなみに最初の段落は言語の設定。2番目はメニューを表示する設定。最後の段落は、なんとemacsでメニューのFileと書かれたところをペンでタッピングすると、内容が表示されてカーソルでコマンドを選択できるから驚きだ。ターミナルではペンは役にたたないと思っていた。
kyoはパソコンMaster_or_Slave?さんのところに.emacsの設定についての解説がはじまった。
直接コメントしたいところだが、登録IDがないとコメントできないようなのでこちらでコメントを。私はemacsはZaurusではじめて使うのであちらこちらのサイトをくぐって構築しているせいで、本当のところ結果として動くようにはできているが、理解が不十分な状況で使用しているため、不必要な設定までコピーしてしまっている。したがって、きちんとした解説があるのは大変ありがたいことだと思う。是非参考にしたい。
今回menuバーを消す方法がわかった。感謝
(menu-bar-mode -1)
メニューバーの表示を止めます。端末画面を広く使うためです。表示する場合は、「-1」を「1」にします。
メニューバーはあるのが当然と思っていたが、使い方がよくわからず、実のところ不要だったのだ。使い方がわかれば利用するかもしれないが、とりあえず消すことにした。
日本語コンソールの「端末ウインドウ」を立ち上げる。
Fn+qでコンソールのフォントサイズを一番大きいものに変更。(一番大きくしても私にとってはとても小さいです。)
$ emacs (Enter)
すると、画面上にemacsの起動画面が表示され、簡単なキーの説明が書いてあります。
もし、画面が2分割され、何かエラーが表示されれば「.emacs」の記入を間違えているためエラーが出たと思われます。再確認してください。基本的にはeucコードで書くものと思われますが、Sjisなどで書くとまずいかもしれません。
とりあえず必要なコマンドは
| C-h | ヘルプ・・・注意 C-hがヘルプにならない。 |
| C-x C-c | (Ctrl+x、Ctrl+c) 終了 |
| C-x u | アンドゥ |
| C-x o(オウ) | 2画面表示されたときにもうひとつの画面側にカーソルを移動する。 |
| C-x 1 | カーソルのある側を全画面表示 |
| C-x 0 | (ゼロ) カーソルのある側を非表示 |
| C-g | 何か変な操作をしたときにその操作をやめる |
さて、第一の関門、emacsが立ち上がるところまでいったでしょうか?
さて、本来はC-hがヘルプになるはずなのだが、ZaurusSL-C3000ではC-hをするとBackSpaceの行動をしめす。どうもbashの影響らしい。かといってBSキー(BackSpaceキー)を押すと、なんだかDELキーのような挙動を示す。
emacsを使っている人はC-hでBackSpaceとして扱うことが多いようだ。(一部の日本語入力ソフトでそういう位置づけになっているようだ)
私個人としてはC-hはヘルプ、BSキーはBackSpaceとして取り扱いたいのだが、いろいろと調べたが、結局わからなかった。しかしながら、noirさんに教えてもらい、以下のような設定で対応できた。
逆に、C-hはBackSpace、BSキーがヘルプという設定があったので、それにあわせることにした。ただし、このようにすると入力欄(バッファ)上ではC-hがBackSpaceで、コンソールの最下行で日本語入力時に1文字削除するのはBSキーなので、二重生活を強いられるという欠点がある。
Linux Zaurus Super Guideの183ページを参考に「.emacs」に以下のように書き込むことにした。
;;Change Help Key & Backspace Key
;;Linux Zaurus Super Guide page 183
;;2004.12.06
(let ((the-table (make-string 128 0)))
(let ((i 0))
(while (< i 128)
(aset the-table i i)
(setq i (1+ i))))
;;Swap^H and DEL
(aset the-table ?\177 ?\^h)
(aset the-table ?\^h ?\177)
(setq keyboard-translate-table the-table))
これで、正々堂々とC-hはBackSpaceとなった。
しかしときどきBackSpaceとしてBSキーを押してしまい、そのたびにHelpについてが表示されるのが問題だが。
Backspace ですが、~/.bashrc に stty erase ^? と書いておくだけでも対応できますよ。(noir)
というnoirさんの助言で
「.bashrc」(これはPerlの修正で作成している)の最後の行に「stty erase ^?」と
書き込めばよいことがわかる。これでC-hはヘルプとなり、BSはBackSpaceとなる。
なお、Fn+BSで本来はDELだが、これはBSのまま。DELはC-dで行う。
■bajamaさんの情報で、こういう方法もあるそうです。2005/07/07
(global-set-key [delete] 'delete-char) とやったら、Fn+BSでDELになりました
まずは、Tutorial.jaで基本を勉強しよう
C-h t
これでTutorial.jpが読める。この解説に沿って、emacsの基本をマスターしよう。
絶対にキーの使い方がわかるようになるはずだ。
C-x C-f
このコマンドを打ち込むと・・・file:~/ と表示されている。これは/home/zaurus/をさしている。目指すファイルがそこにあればよいが、通常は「~/」を消して
/mnt/cf/Documents/Text_Files/hoge.txt
のように書き換えてやる必要がある。補完入力といって、ある文字のところでTabかspaceキーを押せば、その文字で始まる名前がひとつしかないときは補完してDocumentsのところまでを自動的に補ってくれる。
例えば、/mで押すと/mnt、/mnt/cで押すとcardかcfか判断がつかないがcaとすると、自動的にcardというように補ってくれる。
旧HP/SL-C700悪戦苦闘というemacsに取り組んだときのページを参照してください。
http://hpcgi1.nifty.com/spen/index.cgi?%b5%ecHP%2fSL%2dC700%b0%ad%c0%ef%b6%ec%c6%ae#i54
などについて記載しています。
サイト検索でjapanese-holidays.elのページがあったので、そこに書かれている
http://wig.nu/~ohtaki/text/diary/2000/japanese-holidays.el
から取得し、/home/QtPalmtop/lib/emacs/に設定しました。
ほんまたけるのココログのところに「.emacs」への記述方法がかかれているので、それを書き込む。するとカレンダーで休日に色がつき、元日などが表示されるようになります。
なお、1行目はjapanese-holidays.elの場所にあわせて、以下のように修正しました。
(load "/home/QtPalmtop/lib/emacs/japanese-holidays.el")