Comments
Description
Transcript
Latex-suite Mannual
Latex-suite Mannual Webmaster(nishiyama) 1 はじ めに linux には vi、 gedit、 emacs、 Kwrite、 Kate な ど 、 た く さ んのテ キ ス ト エディ タ が存在する 。 そんな 数あ る テ キ ス ト エディ タ から Vim を 選んだ理由はき っ と 、 その key-binding( こ こ ではシ ョ ート カ ッ ト のよ う な も のと 考え て も ら え ればよ い) を はじ めと し た、 カ ス タ マイ ズ の多様性、 そし て 多く の linux で標準で導入さ れて いる 普遍性にあ る 。 筆者は Vim こ そが最も 有用な 、 そし て 作業効率の上がる テ キ ス ト エディ タ と 信じ て 疑わない。 も ちろ ん先ほど 述べたも のの中にも 非常に優れたカ ス タ マイ ズ性を 備え たも のはあ る 。 そのよ う な 比較は読者に任せる 。 も ち ろ んそ の結果他のテ キ ス ト エディ タ が優れて いる と 思う のな ら 、 こ こ で読むこ と を 止めて 、 そち ら の方の Mannual を 探すこ と を 薦める 。 も ち ろ ん本家 (http://vim-latex.sourceforge.net/) の Mannual を 参考にすれば、 こ んな mannual など 必要ないのであ る が、 英語であ る こ と 、 ま た文章中に多く の情報が埋め込ま れて いて 、 一覧にな っ て いな いた め、 筆者は苦労し た 。 そ う し た 事情から 、 今回こ の様な Mannual を 書く に至っ た。 2 Latex-suite の 導入 筆者の主に使用する OS が ubuntu であ る ため、 以下は ubuntu のみ動作を 確認し て いる こ と を ま ず述べて おく 。 ま た、 latex-suite の導入にあ たっ て、 Vim がイ ン ス ト ールさ れている こ と を 前提と し て話を 進める 。 Latex-suite は次のよ う にコ マン ド を 実行する こ と でイ ン ス ト ールさ れる 。 #sudo apt-get install vim-latexsuite vim-addonmanager #vim-addons -w install latex-suite し かし 、 こ れだけでは tex フ ァ イ ルを latex-suite で開けない。 /.vimrc に以下のよ う に設定する こ と で、 tex フ ァ イ ルを 開く と 自動的に Latex-suite が起動する 。 (それぞれの意味は後述する 。 ) filetype plugin on set shellslash let g:Tex ViewRule=dvi =’xdvi’ let g:Tex ComplileRule dvi = ’platex $*’ 新し く tex フ ァ イ ルを 編集し 始める と き には Latex-suite が自動的に有効にはなら ないが、 コ マン ド モード で :set filetype=tex と する こ と で Latex-suite が有効になる 。 /.vimrc はさ ら に編集する こ と で Vim の機能が Latex-suite を 含め、 さ ら に広がる 。 特に有用と 思われる 設 定に関し ては後述する が、 Vim に関する も のは Latex-suite を 使う 上で必要なも の以外は、 ネッ ト で各自調べ てほし い。 1 3 コ マンド ま と め フ ァ イ ル操作 :w 現在編集中のフ ァ イ ルに変更内容を 上書き する 。 :wq 現在編集中のフ ァ イ ルに変更内容を 上書き し て終了する 。 :w filename 編集中の変更内容を filename に保存する 。 :w >>filename 編集中の変更内容を filename の末尾に保存する 。 :q 編集中の変更内容を 保存せずに終了する 。 :q! 編集中の変更内容を 保存せずに強制終了する 。 :x or ZZ 編集中のフ ァ イ ルに内容があ っ た場合、 その内容を 上書き し て終了する 。 :e filename 編集中の buffer に filename を 開く 。 (現在の buffer は破棄する ) :tabe filename filename を 新し い tab に開く 。 :gt tab 間を 移動する 。 :r filename filename を カ ーソ ル下行に挿入。 :n,m filename n 行目から m 行目ま でを filename に保存。 入力操作 i カ ーソ ル位置の直前で入力モード に移行。 Esc or Ctl-3 or Ctl-[ 入力モード から コ マン ド モード に移行。 a カ ーソ ル位置の直後で入力モード に移行。 o(オー) カ ーソ ル位置の下行で一行挿入し 、 入力モード に移行。 Shift-o(オー) カ ーソ ル位置の上行で一行挿入し 、 入力モード に移行。 |(パイ プ ) or ∧(階乗記号)i カ ーソ ル位置の先頭で入力モード に移行。 x カ ーソ ル位置の文字を 削除。 yy or Shift-y 現在行を ヤン ク する 。 y0 現在位置から 先頭ま でを ヤン ク する 。 y$ or Shift-d 現在位置から 行末ま でを ヤン ク する 。 現在行を ヤン ク し て削除する 。 dd d0 現在位置から 行頭ま でを ヤン ク し て削除する 。 d$ 現在位置から 行末ま でを ヤン ク し て削除する 。 p ヤン ク し た内容を 貼り 付ける 。 (行の場合は次行へ、 それ以外はカ ーソ ル位置直後に挿入する ) Shift-p ヤン ク し た内容を カ ーソ ル位置の直後に貼り 付ける 。 (行の場合は上行へ、 それ以外はカ ーソ ル位置直前に挿入する ) Shift-c カ ーソ ル位置から 行末ま でを 削除し て入力モード に移行する 。 ∼ カ ーソ ル位置の文字の大文字、 小文字を 入れ替え る 。 2 カ ーソ ル操作 n h or BS カ ーソ ルを 左へ n 文字移動。 (n の指定がないと き は n は 1) n j or Ctl-n カ ーソ ルを 下へ n 文字移動。 (n の指定がないと き は n は 1) n k or Ctl-p カ ーソ ルを 上へ n 文字移動。 (n の指定がないと き は n は 1) n l(エル) or Space カ ーソ ルを 右へ n 文字移動。 (n の指定がないと き は n は 1) 0(zero) カ ーソ ル位置の行頭へ移動。 ∧(階乗記号) カ ーソ ル位置の行頭へ移動。 (空白は無視する ) $ カ ーソ ル位置の行末へ移動。 n |(パイ プ ) カ ーソ ル行の先頭から n 文字目へ移動。 - カ ーソ ル行の上行先頭へ移動。 (空白は無視する ) Return カ ーソ ル行の下行先頭へ移動。 (空白は無視する ) gg フ ァ イ ルの先頭へ移動。 Shift-g フ ァ イ ルの末尾へ移動。 n Shift-g フ ァ イ ルの n 行目へ移動。 n Shift-l(エル) 画面の下から n 行目左端へ移動。 (n の指定がないと き は n は 1) n Shift-h 画面の n 行目左端へ移動。 (n の指定がないと き は n は 1) Shift-m 画面の中央行左端へ移動。 n% フ ァ イ ルの n %行目へ移動。 m alphabet 現在のカ ーソ ル位置を alphabet に記憶。 ‘ alphabet alphabet に記憶さ れた位置に移動。 ´alphabet alphabet に記憶さ れた位置の行頭へ移動。 % カ ーソ ル位置の括弧に対応する 括弧に移動。 ‘ 最後に変更を 加え た位置に移動。 Visual モード Visual モード に移行。 v Ctl-v 矩形 Visual モード に移行。 Shift-v 行 Visual モード に移行。 y Visual モード での選択範囲を ヤン ク する 。 p Visual モード での選択範囲を 貼り 付ける 。 行 Visual モード のの場合、 次行に貼り 付ける 。 c Visual モード での選択範囲を ヤン ク 、 削除し 入力モード に移行する 。 3 単語操作 定義 word:ア ルフ ァ ベッ ト 、 ひら がな、 漢字など の同じ 文字の一群 Word:空白 (tab) から 空白 (tab) ま での文字の一群 w 直後の word の先頭へ移動。 W 直後の Word の先頭へ移動。 Shift-w 直前の word の先頭へ移動。 Shift-W 直前の Word の先頭へ移動。 dw カ ーソ ル位置から word 末ま でを ヤン ク し て削除。 cw カ ーソ ル位置から word 末ま でを 削除し て、 入力モード に移行。 yw カ ーソ ル位置にあ る word を ヤン ク する 。 dW カ ーソ ル位置から Word 末ま でを ヤン ク し て削除。 cW カ ーソ ル位置から Word 末ま でを 削除し て、 入力モード に移行。 yW カ ーソ ル位置にあ る Word を ヤン ク する 。 置換、 検索 r カ ーソ ル位置の文字を 直後に入力する 文字で置き 換え る 。 Shift-r カ ーソ ル位置から 置換モード に移行。 文字入力で一文字ずつ置換する 。 / string string を 下方向に検索。 (下ま で検索する と 上に戻る ) / Return or n / string で直前に検索し た内容を 再検索。 ? string string を 上方向に検索。 (下ま で検索する と 上に戻る ) ? Return or Shift-n ? string で直前に検索し た内容を 再検索。 * カ ーソ ル位置にあ る 単語を 下方向に検索。 (下ま で検索する と 上に戻る ) # カ ーソ ル位置にあ る 単語を 上方向に検索。 (下ま で検索する と 上に戻る ) :s/string/restring/(g)(c) カ ーソ ル行の string を restring で置換する 。 オプショ ン g がなければ、 直近の string のみ置換、 c で対話的に置換。 (以下、 同様) :%s/string/restring/(g)(c) フ ァ イ ル全体の string を restring で置換する 。 :m,ns/string/restring/(g)(c) m 行目から n 行目ま での string を restring で置換する 。 :.,+ns/string/restring/(g)(c) 現在行から n 行目ま での string を restring で置換する 。 4 上級向け操作 ” alphabet y visual モード :指定範囲を alphabet に記憶する 。 入力モード :入力後、 カ ーソ ル位置から 一操作での移動範囲を alphabet に記憶する 。 ” alphabet p alphabet に記憶さ れた内容を 貼り 付ける 。 (行の場合は次行へ、 それ以外はカ ーソ ル位置直後に挿入する ) :reg レ ジス タ に記録さ れた内容を 確認する 。 zf Visual モード :指定のあ る 行を 全て fold する 。 ど の visual モード でも 可能。 zd fold のあ る 位置で有効。 指定し た folding を 削除する 。 l(エル) or zo(オー) fold のあ る 位置で有効。 指定し た fold を 展開する 。 zc fold のあ る 範囲内で有効。 展開さ れた fold を 閉じ る 。 za fold のあ る 範囲内で有効。 zc,zo 双方の機能を 併せ持つ。 5 4 コ マ ン ド 解説 4.1 前準備 こ のマニュ ア ルでは、 以下のよ う な置き 換え を 行う 。 filename:フ ァ イ ルの名前を 示す。 alphabet:任意のア ルフ ァ ベッ ト 一文字を 示す。 大文字、 小文字は区別さ れる 。 ま た、「 選択範囲」 と いう 記述を 度々用いる が、 選択範囲の指定方法は二種類あ る 。 一つは visual モード で選択する 方法であ る 。 ど の visual モード であ っ て も 操作方法は同じ であ る 。 図は矩形 visual モード で選択し た場合の例であ る 。 も う 一つの指定方法はコ マン ド 入力後に指定する 方法であ る 。 例え ば選択範囲を 必要と する コ マン ド 入力後に 5w と 続けて入力する こ と で、 カ ーソ ル位置から 5 単語を 選択範囲にと る こ と ができ る 。 vim を 起動する には、 terminal 画面で $vim f ilename と 入力する 。 こ の際、 .vimrc に filetype plugin on と 記述し ておく こ と で、 filename の拡張子から フ ァ イ ルの形式( 以下、 フ ァ イ ルタ イ プと 呼ぶ) を 認識し 、 そ のフ ァ イ ルタ イ プに応じ た plugin(設定のよ う な も の。 フ ァ イ ルタ イ プによ っ て はな い場合も あ る ) を 読み込 む。 ま た、 setshellslash と する こ と で、 フ ァ イ ルを 選択する 時に/を 用いる こ と が出来る よ う にな る 。 以下、 vi に関する コ マン ド で、 特に説明が必要と 思われる も のを 説明し ていく 。 6 4.2 フ ァ イ ル 操作 : tabe f ilename filename を 新し いタ ブに開く 。 tab は図 1 のよ う に画面左上に表示さ れる 。 現在編集中バッ フ ァ のタ ブから 違 う tab に移る 際には、 コ マン ド モード で、 gt と 入力すればよ い。 4.3 記憶を 用い た 操作 vim には任意のキ ーに、 カ ーソ ル位置やヤン ク し た内容を 記憶さ せる 機能があ る 。 こ こ ではその機能を 解説 する 。 いずれも コ マン ド モード で用いる こ と が出来る 機能であ る 。 ま ずは最も 簡単な、 カ ーソ ル位置の記憶か ら 見ていく 。 m alphabet alphabet と いう 一文字 (a-zA-Z) に現在のカ ーソ ル位置を 記憶さ せる 。 大文字、 小文字を 区別し て 記憶でき る ので、 記憶でき る 合計は5 2 個と 言う こ と になる 。 記憶し た位置にカ ーソ ルを 戻すには、 ‘alphabet と 入力する 。 ま た、 マーク し た位置は、 : marks と 入力する こ と で、 図 2 のよ う に確認する こ と ができ る 。 同様にし て、 alphabet に文字列を 記憶さ せる こ と が 図1 図2 出来る 。 コ マン ド は ”alphabet y 7 で、 選択範囲 (4.1 前準備参照) を alphabet と いう 一文字 (a-zA-Z) にヤン ク する こ と ができ る 。 ”alphabet c も 同様に alphabet にヤン ク を 行う が、 指定範囲を 削除し 、 同時に入力モード に移行する 。 記録し た内容 (レ ジ ス タ と 呼ばれる ) は : reg と いう コ マン ド で確認する こ と ができ る 。 4.4 単語を 用い た 操作 vi で作業を する 上で単語を 用いた操作は重要であ る 。 単語には二種類あ り 、 それぞれ次のよ う に定義する 。 word:ア ルフ ァ ベッ ト 、 ひら がな、 漢字など の同じ 文字の一群 Word:空白 (tab) から 空白 (tab) ま での文字の一群 例え ば、 こ の 4.4 の最初の一行は 26word で構成さ れて いる が、 空白な ど を こ のま ま tex フ ァ イ ルに入力し て いる 場合は 1Word でし かな い。 し かし 、 改行が意味を 持た な いと いう tex フ ァ イ ルの性質を 用いる と 、 任 意の文字の一群を Word と する こ と ができ る 。 cW,dW な ど のコ マン ド は、 こ の様に tex 文作成段階で Word を 作成し ておく こ と で、 よ り 有効に活用する こ と が出来る こ と を こ こ で述べておく 。 4.5 folding vim では folding と 呼ばれる 機能を 用いる こ と で、 tex フ ァ イ ルを 見やすく する こ と が出来る 。 zf で指定範囲を folding し 、 図のよ う な状態になる 。 8 foleing し た状態は、 l or で展開でき 、 zd でその folding を 削除する こ と ができ る 。 9 zo