*os_dos.txt* For
Vim バージョン 7.3. Last change: 2006 Mar 30
VIM REFERENCE MANUAL by Bram Moolenaar
*dos* *DOS*
このファイルはMS-DOSおよびWin32バージョンのVimに共通の特殊事項をまとめる。
|os_win32.txt|や
|os_msdos.txt|も参照すること。
1. ファイルの位置
|dos-locations|
2. バックスラッシュを使う
|dos-backslash|
3. 標準マッピング
|dos-standard-mappings|
4. 画面出力と色
|dos-colors|
5. ファイルの書式
|dos-file-formats|
6. :cdコマンド
|dos-:cd|
7. 中断
|dos-CTRL-Break|
8. 一時ファイル
|dos-temp-files|
9. 標準のシェルオプション
|dos-shell|
==============================================================================
1. ファイルの位置
*dos-locations*
Vimの実行ファイルと同じディレクトリに、ヘルプおよび構文のサブディレクトリがあ
るならば、特に何もする必要はない。レジストリや環境変数も設定する必要はない。た
だVimのディレクトリが検索パスに含まれるか、デスクトップ上のショートカットを利
用するだけでよい。
vimrcファイル("_vimrc"と"_gvimrc")は通常、ランタイムファイルがあるディレクトリ
の1つ上のディレクトリに置かれる。もしどこか違う場所に置きたいならば、環境変数
$VIMにそのディレクトリを設定する。例:
これは"c:\user\piet\_vimrc"を見つけるだろう。
Note: これはコンピュータを複数人で使う時のために用意されている。
普通はデフォルトの場所に _vimrc ファイルを置いてください。
実行ファイルを別の場所に移動したい場合は、環境変数$VIMを設定する必要がある。ラ
ンタイムファイルは"$VIM/vim
{version}"から見つけられる。例:
これはバージョン5.4のランタイムファイルを"e:\vim\vim54"から見つけるだろう。
Note: これは推奨しません。ランタイムディレクトリに実行ファイルを入れておくこと
をお勧めします。
実行ファイルを移動し、「かつ」"_vimrc"と"_gvimrc"を他の場所に置きたい場合は、
$VIMにvimrcファイルの場所を、$VIMRUNTIMEにランタイムファイルの場所を設定する。
例:
これは"c:\user\piet\_vimrc"ファイルと"e:\vim\vim54"にあるランタイムファイルを
見つけるだろう。
さらに情報が欲しいときは
|$VIM|と
|$VIMRUNTIME|を参照すること。
Windows 95では、$VIMをC:\autoexec.batファイルに設定できる。例:
Windows NTでは、環境変数をユーザごとに別々に設定することができる。"スタート/設
定/コントロールパネル->システム"、もしくは"マイ コンピュータ"のプロパティを通
して、環境変数のタブに行く。
==============================================================================
2. バックスラッシュを使う
*dos-backslash*
ファイル名にバックスラッシュを使うことは問題となり得る。Viではいくつかのコマン
ドにおいて、バックスラッシュの数を半分にする。Vimはもう少し寛大で、ファイル名
からバックスラッシュを取り除かないので、":e c:\foo\bar"は期待通りに機能する。
しかしバックスラッシュが特別な文字(スペース、カンマ、バックスラッシュなど)の前
に現れた場合は、Vimはバックスラッシュを取り除く。問題を避けるにはスラッシュを
使用する: ":e c:/foo/bar"はうまく機能する。MS-DOSプログラムやWin32プログラムの
なかにはこれが問題となるものもあるので、Vimは問題を避けるために内部でスラッシュ
をバックスラッシュに置き換える。
スラッシュを使うのを好むのなら、
'shellslash'オプションを設定する。するとVimは
ファイル名を展開するときにバックスラッシュをスラッシュに置き換える。これは
Unix-likeの
'shell'を使用しているときに特に有用である。
==============================================================================
3. 標準マッピング
*dos-standard-mappings*
以前の
CTRL-PageUp と
CTRL-PageDown へのマッピングは削除された。今、これらのキー
はそれぞれ次、前のタブページへジャンプする。
|<C-PageUp>| |<C-PageDown>|
これらのキーを画面上の最初、最後の行へジャンプに使いたければ次のマッピングをす
ればよい:
キー キーコード Normal/Visualモード 挿入モード
CTRL-PageUp <M-N><M-C-D> H
<C-O>H
CTRL-PageDown <M-N>v L$
<C-O>L
<C-O>$
さらに、次のキーがコピー/切り取り/貼り付けに利用できる。Win32とDJGPPバージョン
でのみ、これらはクリップボードを使用する。
Shift-Insert テキストを貼り付ける(クリップボードから)
*<S-Insert>*
*<C-Insert>*
CTRL-Insert Visualモードでテキストをコピーする(クリップボードに)
*<C-Del>*
CTRL-Del Visualモードでテキストを切り取る(クリップボードに)
*<S-Del>*
Shift-Del Visualモードでテキストを切り取る(クリップボードに)
以下のマッピングは同様の目的を果たす(VimのWin32とDJGPPバージョン):
キー キーコード Normal Visual 挿入モード
Shift-Insert
<M-N><M-T> "*P "-d"*P
<C-R><C-O>*
CTRL-Insert <M-N><M-U> "*y
Shift-Del
<M-N><M-W> "*d
CTRL-Del <M-N><M-X> "*d
もしくは次のマッピング(VimのWin32ではないバージョン):
キー キーコード Normal Visual 挿入モード
Shift-Insert
<M-N><M-T> P d"0P
<C-R><C-O>"
CTRL-Insert <M-N><M-U> y
Shift-Del
<M-N><M-W> d
CTRL-Del <M-N><M-X> d
クリップボードがサポートされているときは、レジスタの "* が使える。
==============================================================================
4. 画面出力と色
*dos-colors*
画面出力の方法は、標準ではbiosコールを使用する。これはたいていのシステムで直ち
に機能する。ansi.sysは必要ない。現在の画面モードを設定するには":mode"を使う。
|:mode|を参照すること。
Vimが使用する画面の色を変更するには
|:highlight|コマンドを使用する。 Normal強調
表示グループはVimが普通のテキストに使う色を特定する。例えば、背景色が青で文字
色が灰色にするには:
他に利用できるグループについては
|highlight-groups|を参照すること。
DOSコンソールは太字や下線のような属性をサポートしていない。5つのモードで使用す
る色は9つの端末のオプションで設定できる。":highlight"コマンドによって直接色を
設定した場合には必要ないので注意すること; これらのオプションは古いバージョンの
Vimに互換性がある。
|'highlight'|オプションは5つのモードがどの操作のときに使用
されるかを特定する。
^Vは
CTRL-V
^[は
<Esc>
xxは前景色と背景色の数字を足した10進数の数値に置き換える:
色 前景色 背景色
Black 0 0
DarkBlue 1 16
DarkGreen 2 32
DarkCyan 3 48
DarkRed 4 64
DarkMagenta 5 80
Brown, DarkYellow 6 96
LightGray 7 112
DarkGray 8 128 *
Blue, LightBlue 9 144 *
Green, LightGreen 10 160 *
Cyan, LightCyan 11 176 *
Red, LightRed 12 192 *
Magenta, LightMagenta 13 208 *
Yellow, LightYellow 14 224 *
White 15 240 *
* ディスプレイモードによっては128以上の色コードは利用できず、コード128は文字を
点滅させるだろう。
0を使用した場合は、Vimの開始時の色にリセットされる(普通は7で背景色が黒、文字色
が淡い灰色であるが、これは上書きできる。もしコマンドプロンプトから標準色を上書
きした場合は、vimrc内の強調表示色をいくつか調整する必要があるかもしれない---下
を参照)。
これがt_meのデフォルトである。
それぞれの強調表示モードの標準:
t_mr 112 反転モード: 文字色Black(0)、背景色LightGray(112)
t_md 15 太字モード: 文字色White(15)、背景色Black(0)
t_me 0 通常モード(標準に戻る)
t_so 31 standoutモード: 文字色White(15)、背景色DarkBlue(16)
t_se 0 standoutモードの終了(標準に戻る)
t_czh 225 斜字モード: 文字色DarkBlue(1)、背景色Yellow(224)
t_czr 0 斜字モードの終了(標準に戻る)
t_us 67 下線モード: 文字色DarkCyan(3)、背景色DarkRed(64)
t_ue 0 下線モードの終了(標準に戻る)
これらは反転表示でも良く見えるようために選ばれているが、好みで変更してよい。
例:
==============================================================================
5. ファイルの書式
*dos-file-formats*
'fileformat'オプションに"dos"が設定されている場合(標準)、Vimは
<NL>と
<CR><NL>を
end-of-line (
<EOL>)として認識する。ファイルを保存したときは、Vimは
<CR><NL>を使
用する。このため、ファイルを編集して保存した場合は、Vimは
<NL>を
<CR><NL>で置き
換える。
'fileformat'オプションが"unix"であるならば、Vimは
<NL>を
<EOL>として使用し、
<CR>
を^Mと表示する。
Vimはどんなモードで読み込んでもDosモードで保存する(":se ff=dos")ことによって、
<NL>を
<CR><NL>に置き換えることができる。
VimはDosモードで読み込み、Unixモードで保存する(":se ff=unix")ことによって、
<CR><NL>を
<NL>に置き換えることができる。
Vimは
'fileformats'が設定されている(標準)ときには自動的に
'fileformat'を設定する
ので、あなたがしていることについて全く悩む必要がない。
|'fileformat'| |'fileformats'|
スクリプトファイルやバイナリファイルを編集したいのならば、ファイルを読み込む前
に
'binary'オプションを設定するとよい。スクリプトファイルやバイナリファイルは
<NL>を含んでいて、Vimによって
<CR><NL>に置き換えられてしまうかもしれない。 Vim
の起動時に"-b"(binary)オプションをつけることによって、自動的に
'binary'を設定す
ることができる。
==============================================================================
6. :cdコマンド
*dos-:cd*
":cd"コマンドはドライブレターを認識し、カレントドライブを変更する。Cドライブに
するには":cd c:"とする。Dドライブの"foo"ディレクトリに移動するには":cd d:\foo"
とする。もしシステムがサポートしているならば、VimはUNC名も認識する; 例えば、
":cd \\server\share\dir"。
|:cd|
==============================================================================
7. 中断
*dos-CTRL-Break*
検索を中断するには
CTRL-Cの代わりに
CTRL-Breakを使用する。Vimはキーを読み終える
まで
CTRL-Cを検知しない。
==============================================================================
8. 一時ファイル
*dos-temp-files*
16ビットもしくは32ビットのDOSのみ:
Vimは以下のリストの順番で、ディレクトリが存在し、かつVimがファイルを生成できる
最初のディレクトリに一時ファイル(フィルタ用)を置く:
$TMP
$TEMP
C:\TMP
C:\TEMP
現在のディレクトリ
Win32バージョン(コンソール、GUIともに):
Vimは標準的なWindows関数を使って一時ファイル名(フィルタ用)を取得する。以下のリ
ストの順番で、ディレクトリが存在し、かつVimがファイルを生成できる最初のディレ
クトリが使用される:
$TMP
$TEMP
現在のディレクトリ
==============================================================================
9. 標準のシェルオプション
*dos-shell*
'sh'(
'shell')オプションはWindows 95では"command.com"、Windows NTでは"cmd.exe"
が標準で設定されている。VimはSHELLが定義されている場合はSHELLを、SHELLが定義さ
れていない状態でCOMSPECが定義されている場合はCOMSPECを代わりに使用する。Vimは
外部コマンドを"
<shell> /c
<command_name>"として起動する。新しいコマンドシェルを
起動するには
CTRL-Zをタイプする。"exit"でVimに戻る。
|'shell'| |CTRL-Z|
サードパーティのシェルを使用する場合は、
|'shellcmdflag'| (
'shcf')と
|'shellquote'| (
'shq')か
|'shellxquote'| (
'sxq')オプションを設定する必要がある
かもしれない。不幸なことに、これは使っているVimのバージョンに依存する。例えば、
MKS Kornシェルやbashでは、オプションの値を以下のようになる:
DOS 16ビット DOS 32ビット Win32
'shellcmdflag' -c -c -c
'shellquote' "
'shellxquote' "
Dos 16ビットの例は次のようにシェルを起動する:
<shell> -c "command name" >file
Win32の例:
<shell> -c "command name >file"
DOS 32ビットでは、DJGPPが内部的にどうにかして処理する。
起動時にVimは"sh"が
'shell'オプション内のどこにあるかをチェックする。存在するな
らば、Vimは
'shellcmdflag'と
'shellquote'または
'shellxquote'オプションを上記のよ
うに設定するだろう。
vim:tw=78:ts=8:ft=help:norl: