forked from vim-jp/vimdoc-ja-working
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstarting.jax
1729 lines (1456 loc) · 101 KB
/
starting.jax
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
*starting.txt* For Vim バージョン 9.1. Last change: 2025 Feb 27
VIMリファレンスマニュアル by Bram Moolenaar
Vimの起動 *starting*
1. Vimの起動引数 |vim-arguments|
2. Amiga版のVim |starting-amiga|
3. eVimについて |evim-keys|
4. 初期化 |initialization|
5. $VIM と $VIMRUNTIME |$VIM|
6. サスペンド |suspend|
7. 終了 |exiting|
8. 設定の保存 |save-settings|
9. ビューとセッション |views-sessions|
10. viminfo ファイル |viminfo-file|
==============================================================================
1. Vimの起動引数 *vim-arguments*
たいていは1つのファイルを編集するために次のようなコマンドでVimを起動する
vim filename *-vim*
より一般的に言えば、Vimは次の書式で起動することができる:
vim [option | filename] ..
オプション引数とファイル引数は混在でき、幾つでも与える事ができる。しかし引数を
取るオプションには注意が必要である。
さまざまなViのバージョンとの互換性に付いては|cmdline-arguments|を参照。
正確には、以下の5つの項目から1つを選んで編集が開始される:
*-file* *---*
filename 1つ以上のファイル名が与えられた場合。まずは最初の1つが編集ファ
イルとしてバッファに読み込まれる。カーソルはそのバッファの1行
目に置かれる。
'-' で始まるファイル名を指定するには、オプションと区別するため
に、引数に "--" を置く。例: >
vim -- -filename
< "--" の後の全ての引数はファイル名として解釈されるので、その他
のオプションや引数 "+command" は使用することができない。
MS-Windows におけるクォートの動作については |win32-quotes| を
参照。
*--*
- この引数はExモードで起動するかどうかで意味が異なる。
ノーマルモードで起動する場合: >
vim -
ex -v -
< 新しいバッファに、標準入力を読み込んで編集を始める。コマンドは
通常であれば標準入力から読み込まれるが、この場合代わりに標準エ
ラー出力から読み込まれる。例: >
find . -name "*.c" -print | vim -
< バッファに「変更(modified)」のマークが付けられるので、終了しよ
うとする時にテキストの保存するように指摘される。それが好ましく
ないなら、vimrc に以下の行を加える: >
" 標準入力から読むときは 'modified' を設定しない
au StdinReadPost * set nomodified
<
Exモードで起動する場合: >
ex -
vim -e -
exim -
vim -E -
< サイレントモードで起動する。|-s-ex|を参照。
*-t* *-tag*
-t {tag} タグを開く。{tag}がtagsファイルから検索され、関連づけられた
ファイルが現在のファイルとされ、関連づけられたコマンドが実行さ
れる。大抵これはCプログラムを編集するときに使用され、"tag" は
関数名である事が多い。それにより、その関数を含むファイルが自動
的に開かれ、カーソルがその関数の定義位置に設定される(|tags|を
参照)。
*-q* *-qf*
-q [errorfile] quickfixモードで起動。 [errorfile]に指定したファイルが読み込ま
れ最初のエラーが表示される。|quickfix|を参照。
[errorfile]が与えられない場合、オプション 'errorfile' がファイ
ル名として使用される。省略値に関しては 'errorfile' を参照。
(nothing) 上記の4つのうち、どれも指定せずにVimを起動すると、新しいバッ
ファが用意される。それは名前のない空のバッファである。
起動時のモードはプログラム名を "vim" とは別の名前にすることで指定できる。それ
は次のようにオプションを与えたのと同じである:
ex vim -e Exモードで起動 (|Ex-mode| を参照)。 *ex*
exim vim -E 改良版Exモードで起動 (|Ex-mode| を参照)。 *exim*
(通常はインストールされない)
view vim -R 読み込み専用モードで起動 (|-R| を参照)。 *view*
gvim vim -g GUIで起動 (|gui| を参照)。 *gvim*
gex vim -eg GUIのEXモードで起動。 *gex*
gview vim -Rg GUIの読み込み専用モードで起動。 *gview*
rvim vim -Z "vim" の制限モードで起動 (|-Z| を参照)。 *rvim*
rview vim -RZ "view" の制限モード。 *rview*
rgvim vim -gZ "gvim" の制限モード。 *rgvim*
rgview vim -RgZ "gview" の制限モード。 *rgview*
evim vim -y 簡易操作のVim: set 'insertmode' (|-y| を参照) *evim*
eview vim -yR "evim" と同じ。読み込み専用モード。 *eview*
vimdiff vim -d 差分モードで起動 |diff-mode|
gvimdiff vim -gd 差分モードで起動 |diff-mode|
これらの別名の後ろに付けられる文字は無視される。例えばGUIで起動するのに
"gvim-8" という名前を付けることができる。もちろんその名前で実行可能なファイル
がなければならない。
Unixでは通常、"vim" という名前の実行可能ファイルが一つあり、それに対して違う名
前のリンクが用意される。使用しているシステムがリンクをサポートせず、実行可能
ファイルのコピーを幾つも作りたくないのならば、リンクの代わりにエイリアスを使う
こともできる。例えば、C シェル系の場合: >
alias view vim -R
alias gvim vim -g
<
*startup-options*
オプション引数はどんな順番で与えても良い。一文字のオプションは一つのダッシュ
(-)の後に組み合わせる。引数 "--" の後にはオプション引数を置くことはできない。
VMSでは全てのオプション引数は小文字であるとみなされる。大文字を指定するにはス
ラッシュを前に置く。つまり "-R" でリカバリモード、"-/R" で読み込み専用となる。
--help *-h* *--help* *-?*
-?
-h 使用法(ヘルプ)を表示して終了する。
そのテキストを保存するには|info-message|を参照。
*--version*
--version バージョン情報を表示して終了する。出力は|:version|コマンドと一
緒。
そのテキストを保存するには|info-message|を参照。
*--noplugin*
--noplugin プラグインを読み込まない。'loadplugins' オプションをオフにす
る。
Note: |-u|引数でもプラグインを読み込まないようにできる:
引数 load: vimrcファイル プラグイン defaults.vim ~
なし yes yes yes
-u NONE no no no
-u DEFAULTS no no yes
-u NORC no yes no
--noplugin yes no yes
--startuptime {fname} *--startuptime*
起動処理の間、経過時間のメッセージをファイル {fname} に書き出
す。.vimrc やプラグインの読み込み、最初のファイルの読み込みに
おいて、どこで時間がかかっているかを調べるために役に立つ。
{fname} が既に存在するときはそのファイルに追記される。
{|+startuptime| 付きでコンパイルされたときのみ有効}
*--literal*
--literal ファイル名を文字どおり解釈する。ワイルドカードを展開しない。
Unixでは必要ない、Vimは常にファイル名を文字どおり解釈する(シェ
ルがワイルドカードを展開する)。
全てのファイル名に適用される。この引数の前に指定したものも同
じ。
*-+*
+[num] 最初に編集されるファイルの "num" 行目にカーソルを置いて開く。
"num" がなかった場合には、カーソルは最終行に置かれる。
*-+/*
+/{pat} 最初に編集されるファイルの、"pat" を含む最初の行にカーソルを置
いて起動する(指定可能な検索パターンについては|pattern|を参
照)。検索はカーソル位置から開始される。カーソルの位置は最初の
行か、もしくは |viminfo| から復元された最後に使われた位置の場
合もある。必ず最初の行から検索したい場合は "+1 +/pat" を使う。
+{command} *-+c* *-c*
-c {command} 最初のファイルが読み込まれた後(加えてそのファイルに適用される
autocommandとmodelineが処理された後)に{command}が実行される。
"command" はExコマンドとして解釈される。"command" にスペースを
含んでいる場合には、ダブルクォートで挟まれている必要がある(こ
れは使われているシェルに依存する)。例: >
vim "+set si" main.c
vim "+find stdio.h"
vim -c "set ff=dos" -c wq mine.mak
<
Note: Vimコマンドの引数として "+" か "-c" をあわせ、最大10個ま
で使うことができる。これらの引数は与えられた順番で実行される。
"-S" 引数は "-c" として同じように数える。
--cmd {command} *--cmd*
vimrcファイルを処理する前に{command}を実行する。それ以外は、
-c {command} と同じである。"-c" 引数とは別に、10個まで使うこと
ができる。
*-S*
-S {file} 最初のファイルが読み込まれた後に{file}を実行する。これは次のも
のを簡単にしたものである: >
-c "source {file}"
< "-c" と混ぜて使うことができ、複数指定できる。"-c" と合わせて
10個まで指定できる。
{file}の先頭文字には "-" は使えない。
作業をして Vim を終了するスクリプトを実行するのには使わない
こと、エラーメッセージが見えないだろう。代わりに |-u| を使うこ
と。
-S "-S Session.vim" と同じ。最後の引数として使われたときや、その
後に他のオプション引数が続いたときのみこのように解釈される。
*-r*
-r リカバリモード。ファイル名の引数なしで実行した場合には、存在す
るスワップファイルのリストが表示される。ファイルを指定すると、
クラッシュしたセッションを復活させるために、スワップファイルが
読み込まれる。|crash-recovery|を参照。
*-L*
-L -rと同じ。
*-R*
-R 読み込み専用モード。オプション 'readonly' が、編集される全ての
ファイルに設定される。これにより、まだバッファを編集することは
できるが、偶然にファイルを上書きしてしまうようなことは防がれ
る。もしも、読み込み専用モードにいることを忘れてバッファへ変更
を行ったとしても、":w!" のようにExコマンドに「ビックリマーク」
を付けることで上書きすることが可能。'readonly' オプションは
":set noro" としてオフに設定することが可能である(オプションを
説明した章|options|を参照)。その後の編集は読み込み専用モードで
はなくなる。実行可能ファイルを "view" として起動した場合は、こ
の-R引数と同じ動作になる。オプション 'updatecount' は10000に設
定され、これはスワップファイルがそう頻繁には自動更新されなくな
るということである。
変更を不許可とするには |-M| を参照。
*-m*
-m 変更を保存できなくする。オプション 'write' がオフに設定され、
ファイルを保存することができなくなる。オプション 'write' をオ
ンすれば、再び保存することが可能になる。
*-M*
-M 変更できないようにする。オプション 'modifiable' がオフに設定さ
れ、変更を加えることができなくなる。さらに、オプション 'write'
がオフに設定され、ファイルを保存することができなくなる。
'modifiable' と 'write' をオンにすれば、変更を加えて保存できる
ようになる。
*-Z* *restricted-mode* *E145* *E981*
-Z 制限モード。外部シェルを実行するあらゆるコマンドの使用を許可
しない。これにはサスペンドであるCTRL-Zや、":sh"、フィルタリン
グ、|system()| 関数、バッククォートの評価、libcall() が含まれ
る。
|delete()|, |rename()|, |mkdir()|, |job_start()|, |setenv()|
なども許可されていない。
Python、Ruby、Luaなどのインターフェイスも、シェルコマンドの実
行に使用される可能性があるため無効になっている。PerlはSafeモ
ジュールを使用している。
Unix での制限モードは、$SHELL の最後が "nologin" か "false" の
場合に使用される。
Note ユーザーはまだシェルコマンドを実行する抜け穴を見つけるか
もしれない、それが困難になっただけである。
*-g*
-g VimをGUIモードで起動する。|gui|を参照。逆は|-v|を参照。
*-v*
-v ExをViモードで起動する。実行可能ファイルが "ex" や "gvim" であ
る時にだけ、違いが現れる。gvimでは可能ならば "GUI" ではないモー
ドで起動する。
*-e*
-e VimをExモードで起動する、|Ex-mode| を参照。実行可能ファイルの
名前が "ex" 以外の時に意味がある。
*-E*
-E Vimを改良版Exモードで起動する|gQ|。実行可能ファイルの名前が
"exim" 以外の時に意味がある。
*-s-ex*
-s サイレント(もしくはバッチ)モード。Vimが "ex" で起動されるか、
このオプションよりも先に "-e" が付いていた場合にだけ働く。それ
以外は、|-s|を参照。|-s|として使うときには引数をとる。
端末の替わりにファイルからExコマンドを実行する場合に使用され
る。ほとんどのプロンプトとメッセージは抑制される。警告とエラー
のメッセージも抑制される。
次のコマンドの出力は標準出力へ表示される:
:print
:list
:number
:set オプション値を表示するため。
'verbose' が0以外の場合は、メッセージは抑制されずに標準エラー
出力へ表示される(デバッグ用)。
'term' と $TERM は考慮されない。
Vimが停止しているようだったら、"qa!<Enter>" と入力してみてほし
い。Vimがユーザーの入力を待っているときでも、プロンプトは表示
されない。
初期化処理はスキップされる(このオプションが引数 "-u" と一緒に
使われた場合は除く)。
例: >
vim -e -s < thefilter thefile
< 逆に、スクリプトからのエラーを見るには、|-u| フラグを付けファイ
ルを実行する: >
vim -u thefilter thefile
<
*-b*
-b バイナリモード。ファイルを入出力する再に<NL>だけを行のセパレー
タとして認識するようになる。オプション 'expandtab' は無効化さ
れる。オプション 'textwidth' は0に設定される。'modeline' はオ
フに設定される。オプション 'binary' がオンに設定される。これは
vimrc/exrcのファイルが読み込まれた直後、引数で与えられたファイ
ルが読み込まれるよりも前に行われる。|edit-binary|も参照。
*-l*
-l Lispモード。オプション 'lisp' と 'showmatch' をオンに設定する。
*-A*
-A アラビア語モード。オプション 'arabic' をオンに設定する。
{|+arabic|(これは|+rightleft|も含んでいる)が有効なときだけ使用
できる。そうでない場合、Vimはエラーメッセージを出力して終了す
る}
*-F*
-F これはFarsi(ペルシア語モード)で使用されていましたが、削除され
た。|farsi.txt| を参照。
*-H*
-H Hebrew(ヘブライ語)モード。オプション 'hkmap' と 'rightleft' を
オンに設定する。{|+rightleft|を有効にしてコンパイルした時にだ
け使用可。そうでない場合、Vimはエラーメッセージを表示して終了
する}
*-V* *verbose*
-V[N] 詳細表示する。オプション 'verbose' を[N]に設定する(Nを省略した
場合は10が設定される)。":source" が実行される度、viminfoの読み
書きを行う度に情報が表示される。Vimの起動時と終了時の動作を調
べるときに便利である。
例: >
vim -V8 foobar
-V[N]{filename}
-V と同様で、さらに 'verbosefile' を {filename} に設定する。そ
の結果、メッセージは表示されずにファイル {filename} に書き出さ
れる。{filename} は数字で始まってはならない。
例: >
vim -V20vimlog foobar
<
--log {filename} *--log*
ログの出力を開始し、ファイル {filename} に書き込む。
これは、起動時の非常に早い段階で
`ch_logfile({filename}, 'ao')` を呼び出すのと同様な動作である。
{|+eval| および |+channel| が有効な場合のみ利用可能}
*-D*
-D デバッグする。スクリプトの最初のコマンドを実行するところからデ
バッグを開始する。|debug-mode|
{|+eval|が有効な場合のみ利用可能}
*-C*
-C 互換モード。オプション 'compatible' をオンに設定する。.vimrc
ファイルが存在する場合にもViとの互換性を得ることができる。プラ
グインや起動時スクリプトで ":set nocompatible" とするとこのオ
プションより優先されるため、起動後には 'nocompatible'になって
しまうだろう。どこで最後に設定されたかを調べるには次のコマンド
を使う: >
:verbose set compatible?
< 'compatible' がオンになっていると動かないプラグインもある。起
動処理の後でこれをセットするにはこのようにする: >
vim "+set cp" filename
< |compatible-default| も参照。
*-N*
-N 非互換モード。オプション 'compatible' をオフに設定する。
.vimrc ファイルがないときや、"-u NONE" としているときに、
'nocompatible' (Vimの拡張を有効) にすることができる。
|compatible-default|も参照。
*-y* *easy*
-y 簡易モード。|evim|や|eview|と同じ。'insertmode' をオンに設定し
て起動し、モードレスエディタのように振舞う。このスイッチを指定
すると、$VIMRUNTIME/evim.vimが自動的に読み込まれ、一般的なエ
ディタと同じ操作ができるようなマッピングが設定される。
|evim-keys|を参照。利用可能ならGUIが使用される。
*-n*
-n スワップファイルを使用しない。クラッシュしたときに編集していた
ファイルを復旧することはできなくなる。フロッピーディスクのよう
な非常に低速なメディアのファイルを読んだり編集したいときに有用
である。":set updatecount=0" と設定するのと同じである。オプ
ション 'updatecount' に0より大きい値を設定することで、スワップ
ファイルの使用を有効にすることができる。例、":set uc=100"。
NOTE: -n と -b を合わせて -nb としないこと。-nb には別の意味が
ある: |-nb|
vimrc ファイルの実行解釈の直後で、GUIが初期化される前に
'updatecount' が0に設定される。よって vimrc ファイルの中で
'updatecount' を設定しても上書きされてしまうが、gvimrcでの設定
は上書きされない。|startup|を参照。ディスクへのアクセスを減ら
したいのならば(ノートPCを使用している場合など)、"-n" を使用す
る替わりに、'updatetime' を設定し、'updatecount' に非常に大き
い値を設定して、編集中のファイルを保存する時に ":preserve" を
利用すると良い。この方法だとクラッシュからの復旧の可能性を保て
る。
*-o*
-o[N] N個のウィンドウを水平分割して開く。[N]が与えられない場合には、
引数で指定された全てのファイルに対して1個のウィンドウが開かれ
る。画面に十分な広さがない場合には、始めのほうの数個のファイル
だけがウィンドウを伴って表示される。逆にファイルの数よりもウィ
ンドウの数が多く指定された場合、多い分のウィンドウは空ファイル
の編集用として開かれる。
*-O*
-O[N] N個のウィンドウを垂直分割して開く。それ以外は、|-o| と同じ。
-oと-Oが両方指定されたときは最後に指定された方を使用する。
*-p*
-p[N] N 個のタブページを開く。[N] が省略されると、引数として与えられ
た各ファイルに対し1つずつタブページを開く。最大値は
'tabpagemax' ページ(既定値は 10)である。引数よりも多くのタブペー
ジが作られる場合は、最後の数個のタブページは空ファイルを開く。
|tabpage| も参照。
*-T*
-T {terminal} 端末の種類を "terminal" に設定する。これはVimがユーザーの端末
へ送るコードに影響を与える。Vimはユーザーが使用している端末の
種類を自分で判断することができるので、通常これは必要がない
(|terminal-info|を参照)。
*--not-a-term*
--not-a-term 入力と出力(もしくはどちらか一方)が端末に接続されていないこと
を、ユーザーが把握しているということをVimに伝える。これにより
警告が表示され2秒間の遅延が発生するのを避けられる。
また、"Reading from stdin..." や "N files to edit" というメッ
セージも回避する。
--gui-dialog-file {name} *--gui-dialog-file*
GUIの使用時、ダイアログを表示する代わりとして、ファイル {name}
へダイアログのタイトルとメッセージを書き込む。このファイルは作
成されるか追記される。テストにみ有用で、見ることができないダイ
アログによってテストが中断されるのを防ぐ。GUI以外ではこの引数
は無視される。
*--ttyfail*
--ttyfail 標準入力か標準出力が端末(tty)でない場合、すぐに終了する。
*-d*
-d 差分モードで起動する。|vimdiff|と同じ。
{|+diff|が有効な場合のみ利用可能}
-d {device} Amiga専用機能。|+diff|が無効な場合のみ利用可能。|-dev|と同じよ
うに機能する。
*-dev*
-d {device} Amiga専用機能: {device}が編集用に開かれる。
普通、ウィンドウの位置とサイズを設定するために
"-d con:x/y/width/height" の形式で指定する。例、
"-d con:30/10/600/150"。しかしその他のAUX:のようなデバイスの編
集を開始することにも使用できる。
*-f*
-f GUI: Vimを起動したプログラム(プロセス)から独立しない。
'f' は "foreground" を意味する。省略すると、GUI版のVimは新しい
プロセスへforkして、現在のプロセスは終了してしまう。gvimの編集
セッションが終わるのを待つプログラム(メールソフトやニュースリー
ダーなど)には、"-f" を使うべきだろう。gvimがforkしないようにす
るには、自分の .gvimrc の中で 'guioptions' に 'f' を加えれば良
い。
Note: "-gf" でGUIをフォアグラウンドで実行開始できるが、"-fg"
だと前景色の設定になってしまう。|gui-fork|参照。
Amiga: Vimを新しいウィンドウで起動しない。編集作業が終わるのを
待つプログラム(メールソフトやニュースリーダー)によって Vimが起
動される時に、このオプションは使用される。|amiga-window|を参照。
MS-Windows: このオプションはサポートされない。vim.bat や
gvim.bat 経由で起動した場合は機能する。
*--nofork*
--nofork GUI: forkしない。|-f|と同じ。
*-u* *E282*
-u {vimrc} 初期化のためにファイル{vimrc}が読込まれる。その他の初期化はス
キップされる。|initialization|を参照。
これにより特殊なマッピングや設定をした、特殊なモードでVimを起
動することができる。これを簡単に使用するにはシェルのエイリア
スが使えるだろう。例えば、C シェル系の場合: >
alias vimc 'vim -u ~/.c_vimrc \!*'
< そして、Bash シェルの場合: >
alias vimc='vim -u ~/.c_vimrc'
< autocommandを使うことも考慮すべきである。|autocommand|を参照。
{vimrc}に "NONE" (全て大文字)が指定された時には、設定ファイル
や環境変数による初期化、.gvimrcによるGUIの初期化も含め、全て省
略される。プラグインも読み込まれない。
{vimrc}が "NORC" (全部大文字)のときは "NONE" と同じように処理
されるが、プラグインは読み込まれる。
{vimrc} が "DEFAULTS" (全部大文字) のときは "NONE" と同じよう
に処理されるが、|defaults.vim| スクリプトが読み込まれる。また
'nocompatible' が設定される。|--clean| も参照すること。
"DEFAULTS" 以外の引数と共に "-u" 引数を使用すると、副作用とし
てオプション 'compatible' がデフォルトでオンに設定される。これ
は予期せぬ動作を引き起こすかもしれない。|'compatible'| を参照。
*-U* *E230*
-U {gvimrc} GUIがスタートする時にファイル{gvimrc}が読込まれる。その他のGUI
初期化はスキップされる。{gvimrc}にNONEが指定された場合、初期化
ファイルは何も読込まれない。 |gui-init|
例外: システムのメニューファイルは常に読込まれる。
*-i*
-i {viminfo} デフォルトのviminfoの代わりにファイル{viminfo}を使用する。
"NONE" (全て大文字)が指定された場合には、'viminfo' が指定され
たり、":rv" や ":wv" が使われても、viminfoは読み書きともに使用
されない。|viminfo-file|参照。
*--clean*
--clean "-u DEFAULTS -U NONE -i NONE" に類似している:
- ファイルや環境変数からの初期化はスキップされる。
- 'runtimepath' および 'packpath' は、ホームディレクトリのエン
トリを除外するように設定されます (-u DEFAULTS では発生しませ
ん)。
- |defaults.vim| スクリプトが読み込まれる。これは
'nocompatible' を含む: Vim のデフォルトを使う。
- |gvimrc| スクリプトは読み込まれない。
- viminfo ファイルは読み書きされない。
Note 以降の "-u" 引数は "-u DEFAULTS" を上書きする。
*-x*
-x ファイルの読み書き時に暗号化を施す。暗号の鍵としてオプション
'key' に設定された値を使用する。全ての書き込みは、テキストに対
して鍵を使って暗号化を行ってから なされる。ファイルを読込む時
には、Vimは暗号化ファイルかチェックし、自動的に鍵を聞いてくる
ので、引数 '-x' は必要でない。|encryption|
{|+cryptv| 機能付きでコンパイルされたときのみ有効}
*-X*
-X Xサーバーと通信しない。そうして、カレントウィンドウのタイトル
を取得したり、Xのクリップボードを使ったコピー/ペーストを使用し
たりしない。端末エミュレータでVimを使用するときにXサーバーとの
通信速度が遅い場合にそれを回避できる。
この効果があるか確かめるには |--startuptime| を使ってみること。
UnixかVMSでは、|+X11| 機能つきでコンパイルした場合のみ違いがあ
る。それ以外は、無視される。
特定の端末を使用するときだけ通信を無効にするには、オプション
'clipboard' を参照。
X11 Session Management Protocol (XSMP) の処理が組み込まれてい
る場合、その通信にも大きな延滞が生じるため、無効にする。
(例えばクライアントとサーバーが通信するため)あとからXサーバー
との通信をつなげるには|serverlist()|関数を呼び出す。ただしXSMP
の処理は有効にならない。
*-s*
-s {scriptin} スクリプトファイル{scriptin}が読込まれる。ファイルの中のキャラ
クタは、全てユーザーがタイプしたものとして解釈される。エディタ
が終了する前にファイルの終端に達した場合、以降のキャラクタは
キーボードから読込まれる。Exモード動作時には働かない、|-s-ex|
を参照。|complex-repeat|も参照。
*-w_nr*
-w {number}
-w{number} オプション 'window' を {number} に設定する。
*-w*
-w {scriptout} Vimを終了するまで、ユーザーが入力した全部の文字が記録され、ファ
イル{scriptout}に書き出される。これは "vim -s" や ":source!"
で読込まれるスクリプトファイルを作成するのに役立つ。既にファイ
ル "scriptout" が存在する場合には、そのファイルに追加保存する。
|complex-repeat|も参照。
{scriptout} は数字で始まってはならない。
入力された内容を人間が読める形式で記録したい場合は、
|ch_logfile()| を使用することができる。これは "raw key input"
行を追加する。
|--log| も参照。
*-W*
-W {scriptout} -wに似ているが、アペンド(追加)せずに、既にあるファイルを上書き
する。
--remote [+{cmd}] {file} ...
サーバーとして機能している他のVimで{file}を開く。
この引数の前にファイルを指定することはできない。
|--remote|を参照。
--remote-silent [+{cmd}] {file} ...
--remoteと同じ。ただしサーバーがなくてもメッセージを出さない。
|--remote-silent|を参照。
--remote-wait [+{cmd}] {file} ...
--remoteと同じ。ただしサーバーが終了するまで待機する。
|--remote-wait|を参照。
--remote-wait-silent [+{cmd}] {file} ...
--remote-waitと同じ。ただしサーバーがなくてもメッセージを出さ
ない。|--remote-wait-silent|を参照。
--servername {name}
Vimサーバーの名前を指定する。これは通信先のサーバー名、あるい
は起動するVimが使用する名前である。
|--servername|を参照。
--remote-send {keys}
{keys}をVimサーバーに送り、終了する。
|--remote-send|を参照。
--remote-expr {expr}
Vimサーバーで{expr}を評価し、その結果を標準出力に出力する。
|--remote-expr|を参照。
--serverlist
稼動しているVimサーバーの一覧を出力する。
|--serverlist|を参照。
--socketid {id} *--socketid*
GTK+ GUIのVimのみ。GtkPlugを使用し、別アプリケーションのウィン
ドウで起動するようにする。詳細は|gui-gtk-socketid|を参照。
--windowid {id} *--windowid*
Win32 GUI の Vim のみ。ウィンドウ {id} を親ウィンドウにしよう
と試みる。成功するとそのウィンドウの内側で起動する。詳しくは
|gui-w32-windowid| を参照。
--echo-wid *--echo-wid*
GTK+ GUIのVimのみ。ウィンドウのIDを標準出力に出力する。この値
はgvimをkpartウィジェットに埋め込むのに使用できる。出力の書式
は: >
WID: 12345\n
--role {role} *--role*
GTK+ 2 GUIのみ。メインウィンドウの役割(role)を{role}に設定す
る。ウィンドウの役割はウィンドウマネージャーがウィンドウを識
別して、ウィンドウの位置等を復元するのに使われる。この引数は
ログイン時にセッションを復元するときに自動的に使用される。
|gui-gnome-session|を参照。
-P {parent-title} *-P* *MDI* *E671* *E672*
Win32のみ。親になるアプリケーションのタイトルを指定する。可能
であればVimはそのMDIアプリケーションのウィンドウ内で起動する。
{parent-title}が親アプリケーションのウィンドウのタイトルに使わ
れていて、明確に区別できる必要がある。
Note: まだ簡単に実装されているだけである。全てのアプリケーショ
ンで動くわけではない。メニューは機能しない。
-nb *-nb*
-nb={fname}
-nb:{hostname}:{addr}:{password}
Netbeansと接続し、エディタサーバーになる。2番目の型は接続情報
を格納したファイルを指定する。3番目の型はNetbeansに接続するた
めのホスト名、アドレス、パスワードを指定する。|netbeans-run|
{|+netbeans_intg| 機能つきでコンパイルされたときのみ有効; もし
そうでなければ、-nb は Vim を終了させる}
実行可能ファイルが "view" だったならば、Vimは読込み専用モードで起動する。
"view" から "vim" へハードリンクかシンボリックリンクを作成すると便利だろう。
"vim -R" とすることでも読込み専用モードで起動できる。
実行可能ファイルの名前が "ex" ならば、VimはExモードで起動する。これは ":" コマ
ンドだけしか使えないことを意味している。しかし引数 "-v" が与えられれば、Vimは
常にノーマルモードで起動する。
Unix互換のシステムでX11 GUIサポートが有効ならさらに多くの引数が利用可能であ
る。|gui-resources|を参照。
==============================================================================
2. Amiga版のVim *starting-amiga*
VimをWorkbenchから起動する *workbench*
--------------------------
Workbench上でアイコンを2度クリックすればVimを起動することができる。そうすると
空のバッファで起動するだろう。
"Project" アイコンを使用することで、1つ以上のファイルを開くことができる。アイ
コンの "Default Tool" にはVimの実行可能ファイルの完全なパスを設定し、".info"
ファイルの名前には、編集するテキストファイルの名前を設定する。このアイコンを2
度クリックすると、Vimが起動してそのファイルを開く(そのファイルがあれば)。シフ
トキーを押しながらアイコンをクリックし、最後のファイルを2度クリックすることで、
複数のファイルを開くことができる。これら全てのアイコンの "Default Tool" は同じ
でなければならない。
Workbenchからではファイル名以外の引数は、Vimへ与えることができない。
Vimウィンドウ *amiga-window*
-------------
Vimは起動されたCLIウィンドウの中で動作する。Vimが "run" や "runback" コマンド、
あるいやWorkbenchから起動された場合には、自分自身でウィンドウを開く。
技術的詳細:
新しいウィンドウを開くためにちょっとしたトリックを使う。Vimは普通のCLI
ウィンドウの中で起動されていないことを検出するとすぐに、"t:" にあるス
クリプトファイルを作成する。このスクリプトファイルにはVimを起動したの
と同じコマンドに加えて "endcli" コマンドが含まれている。このスクリプト
ファイルは "newcli" コマンドと一緒に実行される (これが行われる時には
"c:run" と "c:newcli" コマンドが必要)。スクリプトファイルはリブートす
るか、手動で消すまで存在しつづける。この方法は ":sh" と ":!" コマンド
が正しく機能する必要がある。しかしVimが-fオプション(フォアグラウンド
モード)で起動された時には、この方法は使われない。Vimを-fオプションで起
動した時には、その終了を待つからである。スクリプトのトリックを使うと、
Vimを呼び出したプログラムはその終了を知ることができない。オプション-f
はメールプログラムなど編集のセッションが終わったことを 検出したい場合
に、Vimを起動する方法として使用される。だからオプション-fが指定された
時には、":sh" と ":!" コマンドは使用することができない。
Vimは自動的にウィンドウのサイズを認識して対応する。Amiga DOS 1.3の元では、表示
の更新速度を上げるために、fastfontsのプログラム "FF" の支援を受けて動作する。
==============================================================================
3. eVimについて *evim-keys*
EVimはVimをモードレスエディタとして実行する。これはViらしくない発想ではある
が、Vimの操作方法を覚えられるほどには使用しない人の助けになる。ノーマルモード
のコマンドを覚えることで編集作業がより簡単になるということを利用者が感付いてく
れれば幸いである。
Evimでは以下のオプションが標準設定から変更される:
:set nocompatible ViにはないVim独自の機能を使う
:set insertmode 常時挿入モードを使用する
:set hidden 非表示になったバッファを開放しない
:set backup バックアップファイルを消さない(VMS以外)
:set backspace=2 どこでもバックスペースを使用できるようにする
:set autoindent 新しい行を入力するときに自動的にインデントする
:set history=50 Exコマンドの使用履歴を50回前まで記録する
:set ruler カーソルの位置を表示する
:set incsearch 検索時、入力途中にマッチ箇所を表示する
:set mouse=a 全てのモードでマウスを使う
:set hlsearch 検索した文字を強調表示する
:set whichwrap+=<,>,[,] <Left>と<Right>を使った左右の移動で行を跨ぐ
:set guioptions-=a 非Unixのみ。選択時に自動的にコピーしない
キーマッピング:
<CTRL-Q> 終了する、変更があれば `:confirm` のプロンプトを使う
<Down> 実際の行ではなく表示された行の単位で移動する
<Up> 同上
Q "gq" コマンドで文章整形する。
<BS> ビジュアルモードで選択範囲を削除する
CTRL-X ビジュアルモードで選択範囲を切り取ってクリップボードに
コピーする
<S-Del> 同上
CTRL-C ビジュアルモードで選択範囲をクリップボードにコピーする
<C-Insert> 同上
CTRL-V クリップボードから貼り付ける(どのモードでも)
<S-Insert> 同上
CTRL-Z 元に戻す(undo)
CTRL-Y やり直し(redo)
<M-Space> システムメニューを表示
CTRL-A 全てを選択する
<C-Tab> 次のウィンドウへ。CTRL-W w と同じ
<C-F4> ウィンドウを閉じる。CTRL-W c と同じ
追記:
- ":behave mswin" が使用される|:behave|
- 構文強調表示が有効になる
- ファイルタイプ別の機能が有効になる。ファイルタイプ用のプラグインやインデント
が使用される。
- テキストファイルでは 'textwidth' が78に設定される
ヒント: ノーマルモードのコマンドを連続して使用するにはCTRL-Lを使用する。
|i_CTRL-L|
"簡易モード" を終了させる方法はない、Vimを終了させる必要がある。
==============================================================================
4. 初期化 *initialization* *startup*
このセクションはVimの非GUIバージョンについて書く。GUIをスタートさせた時の追加
の初期化は|gui-fork|を参照。
スタート時に、Vimは環境変数とファイルを調べ、然るべく値を設定する。Vimはこの順
序で取り掛かる。
1. オプション 'shell' と 'term' を設定する *SHELL* *COMSPEC* *TERM*
環境変数SHELLが存在するならば、オプション 'shell' を設定するのに使われ
る。Win32ではSHELLが設定されていない場合COMSPECの値が使用される。
環境変数TERMが存在するならば、オプション 'term' を設定するのに使われ
る。しかし、後で GUI を開始するときに 'term' は変更される(下のステップ
8を参照。
2. 引数を処理する
Vimを起動するときに指定したオプション引数やファイル名を調べる。
引数 |-V| を使うと、初期化処理のデバッグ用にこれ以降で起こることを表示
したりログに書き出したりできる。
|--cmd| 引数が実行される。
指定されたファイルのバッファを作成する(まだ読み込まない)。
3. 環境変数とファイルのExコマンドを実行する
環境変数の値は一つのExコマンドラインとして読まれるので、複数のコマンド
を実行したい時には '|' か "<NL>" で区切る必要がある。
*vimrc* *exrc*
"vimrc" ファイルは初期化コマンドを含んだファイルである。vimrcファイル
は一行ずつExコマンドとして実行される。"exrc" とほぼ等価である。それら
は同じタイプのファイルであるが、"exrc" が常にViによって使われるのに対
して、"vimrc" はVim特有のものである。|vimrc-intro|も参照。
個人の初期化ファイルの配置場所:
Unix $HOME/.vimrc、$HOME/.vim/vimrc
または $XDG_CONFIG_HOME/vim/vimrc
MS-Windows $HOME/_vimrc、$HOME/vimfiles/vimrc、
$VIM/_vimrc
Amiga s:.vimrc、home:.vimrc、home:vimfiles:vimrc、
$VIM/.vimrc
Haiku $HOME/config/settings/vim/vimrc
初期化ファイルは上記の順に検索され、最初に見つかったものだけが読み込ま
れる。
推奨: Vimの設定ファイルは全て $HOME/.vim/ ディレクトリ(MS-Windowsでは
$HOME/vimfiles/)に置くこと。そうすれば設定ファイルを別のシステムにコ
ピーするのが容易になる。
Vimが "-u filename" で起動された場合、デフォルトのvimrcの代わりに
"filename" が使われる。続く初期化処理の 4. までがスキップされる。
`$MYVIMRC` と `$MYVIMDIR` は設定されない (ただし、'rtp' が更新されると
`$MYVIMDIR` が設定される)。
"vim -u NORC" によりファイルを読み込むことなくこれらの初期化を省略する
ことができる。"vim -u NONE" を使用するとさらにプラグインも読み込まな
い。|-u|
起動引数 "-s" によりVimがExモードで起動されたならば、続く4.までの初期
化処理がスキップされる。オプション "-u" だけが処理される。
*evim.vim*
a. Vimを|evim|や|eview|として、あるいは|-y|引数を指定して起動すると
$VIMRUNTIME/evim.vim が実行される。
*system-vimrc*
b. Unix、MS-Windows、VMS、Macintosh、そしてAmigaでは、システムのvimrcファ
イルが初期化のために読み込まれる。このファイルのパスは ":version" コマ
ンドによって確認できる。普通は "$VIM/vimrc" である。Note: このファイル
は 'compatible' モードであっても読み込まれる。'compatible' の自動リセッ
トはこれが終わった後に行われることになっている。必要ならば ":set nocp"
コマンドを追加する。Macintosh では $VIMRUNTIME/macmap.vim が読み込まれ
る。
*VIMINIT* *.vimrc* *_vimrc* *EXINIT* *.exrc* *_exrc*
*$MYVIMRC* *$MYVIMDIR*
c. 初期化のために5つの場所が検索される。最初に見つかったものが使用され、
残りは無視される。環境変数 `$MYVIMRC` は、`$MYVIMRC` がすでに設定され
ている場合、および VIMINIT を使用している場合を除き、最初に見つかった
ファイルに設定される。環境変数 `$MYVIMDIR` は、個人の 'rtp' ディレクト
リに設定されるが、そのディレクトリが実際に存在するかどうかは検証されな
い。
I 環境変数VIMINIT(|compatible-default|も参照) (*)
その内容はExコマンドとして解釈される。
II ユーザーvimrcファイル:
"$HOME/.vimrc" (for Unix) (*)
"$HOME/.vim/vimrc" (for Unix) (*)
"$XDG_CONFIG_HOME/vim/vimrc" (for Unix) (*)
"s:.vimrc" (for Amiga) (*)
"home:.vimrc" (for Amiga) (*)
"home:vimfiles:vimrc" (for Amiga) (*)
"$VIM/.vimrc" (for Amiga) (*)
"$HOME/_vimrc" (for Win32) (*)
"$HOME/vimfiles/vimrc" (for Win32) (*)
"$VIM/_vimrc" (for Win32) (*)
"$HOME/config/settings/vim/vimrc" (for Haiku) (*)
Note: UnixとAmigaでは、".vimrc" がなかった場合には、MS-DOS互換
のファイルシステムを使用することを考え、"_vimrc" も試みられる。
MS-Windowsでは "_vimrc" を探したあとで、ロングファイルネームが
使われる場合は ".vimrc" が探される。
Note: Win32では "$HOME" がまず検査される。"_vimrc" と ".vimrc"
のどちらもない場合には、"$VIM" が調べられる。$VIMが設定されて
いない場合については|$VIM|参照。
III 環境変数EXINIT。
その内容はExコマンドとして解釈される。
IV ユーザーのexrcファイル。vimrcと同じだが、vimrcがexrcによって置き換
えられている。しかし ".exrc" と "_exrc" のどちらか1つだけが使われ
る。これはシステムによる。(*)の注釈は適用されない。
V デフォルトの $VIMRUNTIME/defaults.vim を読み込む。これは、大半の新
規ユーザーが必要するであろう各種オプションを設定し、"syntax on" 及
び "filetype on" コマンドを含んでいる。|defaults.vim| を参照。
d. 'exrc' オプションがオン(初期状態ではオフ)の場合、現在のディレクトリで3
つのファイルが検索される。最初に見つかったものだけが使用され、残りは無
視される。
- The file ".vimrc" (for Unix, Amiga) (*)
"_vimrc" (for Win32) (*)
- The file "_vimrc" (for Unix, Amiga) (*)
".vimrc" (for Win32) (*)
- The file ".exrc" (for Unix, Amiga)
"_exrc" (for Win32)
(*) このファイルを使用するか環境変数を使用した場合、自動的に 'compatible'
オプションがオフに設定される。|compatible-default|を参照。
Note: |mzscheme| インターフェイスを使用する場合は、vimrc ファイルの読み込
みの後に初期化される。それより後に 'mzschemedll' を変更しても効果はない。
4. プラグインスクリプトを読み込む *load-plugins*
次のコマンドと同じことを実行する: >
:runtime! plugin/**/*.vim
< オプション 'runtimepath' に指定された各ディレクトリのサブディレクトリ
"plugin" にある拡張子が ".vim" となっているファイルを実行する(各ディレ
クトリごとに名前順で実行される)。サブディレクトリに対しても再帰的に検
索される。
ただし 'rumtimepath' 内の "after" で終わるディレクトリはここではスキッ
プされ、パッケージの読み込み後にロードされる。下の説明を参照。
次の場合にはプラグインを読み込まない:
- vimrcファイルでオプション 'loadplugins' がオフに設定された。
- 起動時の引数に|--noplugin|が指定された。
- 起動時の引数に|--clean|が指定された。
- 起動時の引数に "-u NONE" が指定された。
- |+eval|の機能を無効にしてVimをコンパイルした。
Note: 引数に "-c set noloadplugins" と指定しても意味がない。このコマン
ドはこの時点ではまだ実行されない。"--cmd 'set noloadplugins'" または
"--cmd 'set loadplugins'" とすればよい。|--cmd|
パッケージが読み込まれる。'packpath' 内の各エントリの "start" ディレク
トリの下で見つかったプラグインだけが上記の要領で読み込まれる。見つけた
pluginディレクトリはすべて 'runtimepath' に追加され、すべてのプラグイ
ンが読み込まれる。詳細は |packages| を参照。
プラグインスクリプトが読み込まれるが、しかし上で言及したように、ここで
は "after" で終わるディレクトリに限られる。パッケージが見つかった際に
は 'runtimepath' が変更されるが、"after" で終わるディレクトリは追加さ
れないことに注意。
5. 'shellpipe' と 'shellredir' を設定する
それ以前に設定されていなければ、'shell' オプションに従って 'shellpipe'
と 'shellredir' オプションが設定される。つまり自分で設定しなくても、
Vimが適切な 'shellpipe' と 'shellredir' の値を設定してくれる。
6. "-n" コマンド引数が使用されていたら、'updatecount' を0に設定する。
7. バイナリオプションを設定する
Vimの起動時に "-b" フラグが与えられた場合、この時点でバイナリ編集用の
フラグが設定される。|-b|参照。
8. GUIの初期化を行う
"gvim" として起動された場合、GUIの初期化が行われる。|gui-init|参照。
9. viminfoファイルを読み込む
'viminfo' オプションが空でなければ、viminfoファイルが読み込まれる。
|viminfo-file|参照。
10. quickfixファイルを読み込む
Vimに "-q" フラグが与えられた場合、quickfixファイルが読み込まれる。こ
れに失敗するとVimは終了する。
11. 全てのウィンドウを開く
|-o|フラグが与えられた場合、ウィンドウが開く(しかしまだ表示されない)。
|-p|フラグが与えられた場合、タブページが作られる(しかしまだ表示されな
い)。
スクリーンが切り替えられると、描画が始まる。
"-q" フラグがVimに与えられた場合、最初のエラーにジャンプする。全ての
バッファが |BufAdd| 自動コマンドを起動することなくロードされる。
12. スタートアップコマンドが実行される
"-t" フラグがVimに与えられた場合、タグにジャンプする。
|-c|と|+cmd|引数で与えられたコマンドが実行される。
'insertmode' オプションがセットされていると、挿入モードに入る。
スタートフラグがリセットされ、has("vim_starting") がゼロを返すようにな
る。
|v:vim_did_enter| 変数が 1 にセットされる。
|VimEnter|のautocommandが実行される。
環境変数 `$MYVIMRC` または `$MYGVIMRC` は、最初に見つかった vimrc ファイル、
gvimrc ファイルに設定され、`$MYVIMDIR` はユーザーの個人用ランタイムディレクトリ
'rtp' (通常は 'runtimepath' の最初のエントリ) に設定される。'rtp' が変更される
と、`$MYVIMDIR` が更新される。
Note: これらの環境変数はシンボリックリンクを解決するが、'rtp' は解決しない。
初期化のヒント ~
スタンダードセットアップ:
全ての編集セッションに有効な、デフォルト設定とキーマッピングを設定するvimrc
ファイルを作成する。それを既に 3b. で述べた位置に置く:
~/.vimrc (Unix)
s:.vimrc (Amiga)
$VIM\_vimrc (Win32)
~/config/settings/vim/vimrc (Haiku)
Note vimrcファイルを作るとデフォルトで 'compatible' オプションがオフに設定され
る。|compatible-default|参照。
ローカルセットアップ:
特定のディレクトリだけにおいて編集時に必要になるコマンドを vimrcファイルに書
き、そのディレクトリに ".vimrc" (Win32は "_vimrc")という名前で置く。NOTE: Vim
に、これらのファイルを見るように指定するには、'exrc' オプションをオンにする必
要がある。|trojan-horse|(トロイの木馬)も参照。
システムセットアップ:
これは複数人で使うUnixシステムを管理し、全員のデフォルト設定を行いたい時に適用
される。デフォルト設定とキーマッピングを行うコマンドをvimrcファイルに記述し、
":version" コマンドで表示される場所に置く。
Vimの現在状態をファイルに保存する ~
オプションの値を変えたときや、キーマッピングを作成した時には、それらを後で再利
用するためにvimrcファイルに保存したいだろう。現在の設定状態をファイルに保存す
るためには|save-settings|を参照。
Viユーザーの設定の問題の回避 ~
Viは環境変数EXINITとファイル "~/.exrc" を初期化に使用する。もし(Vimの設定が)Vi
に干渉して欲しくないならば、それらを使う替わりにVIMINITとvimrcを使用する。
Amigaの環境変数 ~
Amigaには2種類の環境変数が存在する。1つはDOS 1.3(かそれ以上)のsetenvコマンド
で、これはVimによって認識される。AmigaDos 1.3のマニュアルを参照。古いManxのSet
コマンド(バージョン5.0以前)の環境変数は、認識されない。