web-dev-qa-db-ja.com

vimでの構文の強調表示?

私のubuntuサーバーでは、ファイル(構成、scipts ...)を開いたときにvimの構文が強調表示されませんでした。

私はで試しました

:syntax on
:syntax enable

そしてそれはvimでそれが有効になっているように見えますが、それは機能しません

誰かがそれを修正する方法を知っていますか?

ありがとう!

3
ajsie

vimは拡張子でファイルタイプを検出します。
拡張子のないファイルの構文を強調表示する場合は、ファイルを開いた後にこれを実行します。

:set ft=sh

ファイルがbashスクリプトであると仮定します。 ftはファイルタイプを表します。同様に、filetypeをxml、html、php、pythonに設定することで、他のファイルの構文を強調表示できます。これについてさらに情報が必要な場合は、

:help ft

お役に立てれば。

編集:ファイルタイプを保持するため。
これは一時的な解決策にすぎません。

if &filetype == ""
    set viewoptions=options
    autocmd BufWinLeave * mkview
    autocmd BufWinEnter * loadview
endif

これをvimrcファイルに追加します。このコードは、vimの終了時にファイルに設定されたファイルタイプとその他のローカルオプションを格納します。ファイルタイプを設定する必要があるのは1回だけです。
ファイルの名前を変更すると、保存されているオプションは失われます。保存するには、ファイルタイプをもう一度設定する必要があります。
これに関する詳細については、コマンドのvimマニュアルをお読みください。

:help mkview
:help loadview
:help viewoptions
3
asdfg

コメントにコメントとして追加します。

使用する構文ファイルをどのように知るのですか? 「vimfile.php」と「vimfile.html」を試しましたが、正しい構文ファイルを使用して強調表示されています。しかし、スクリプトファイルを強調表示して「vimfile」と入力したい場合はどうすればよいですか。次に、スクリプトコマンドを入力している間、何も強調表示されません。 bashスクリプト(forループ、ifステートメントなど)を強調表示するにはどうすればよいですか? – ajsie6時間前

ファイルの先頭にある Shebang は、vimに対してそれがどのようなスクリプトであるかを示します。 IIRCの場合、構文の強調表示がオンになる前に、ファイルを保存してから再度開く必要がある場合もあります。

1
Nitrodist

HOMEに少なくとも空の.vimrcがありますか?

AFAIK、そのファイルが欠落している場合、vimはvi互換モードで起動します。これが、構文の強調表示が欠落している理由である可能性があります。

1
geek

サーバー構成であるため、vim-commonパッケージがインストールされていない可能性があります。それを試して、それが機能するかどうかを確認してください。

0
Adrian Petrescu