VimでHaskellのソースファイルを編集していて、自動的にオーバーラインの行を折り返すように 'textwidth'オプションを設定しています。今、私は長い最後の単語が自動的に次の行に取られます78文字以上である行を書くとき自動的にHaskellの先頭のダッシュを続けます。Vimのテキストラップに関するコメント
set tw=78
:だから私の〜/ .vimrcとのように見えます。これは、ソースファイルにコメントを書くときに非常に便利です。いいところは、コメントの中で、最後の行が長すぎて自動的にラップされたときに先頭のコメントシンボルが各行の先頭に自動的に挿入されることです。しかしこれはCスタイルのコメントのためだけに機能しますが、残念なことにHaskellの先頭のダッシュはありません。
したがって、たとえばJSファイル内
/**
* This is a very long comment which is longer than 78 chars, yeah really
* longer than 78 chars...
は
のように、同じことがHaskellのコメントで発生したのであれば、今、それはいいだろうきれいに包まれただけでなく、// This is a very long comment which is longer than 78 chars, yeah really
// longer than 78 chars...
ます
------------------------------------------------------------------------------
-- | This is a very long module description which is longer than 78 chars,
-- yeah really longer than 78 chars...
これが可能かどうか、どのように知ることができますか?この動作はどこで指定されていますか?それは:formatexprを設定するか、または:formatoptionsを設定するとそこに助けられますか?
ご協力いただきありがとうございます。
= < <ヨハネス
/編集:ところで、私はあなたがformatoptions
設定を確認してくださいVimの7.3.X
これは自動的に発生します。あなたのオプションを上書きしている可能性があるものを確認することができます。 @daniel kullmannのように、 '' formatoptions''に 'c'フラグをつけてください。 Vimがコメントを認識するためのメカニズムについては、第30章で説明します。また、 'format-comments'のトピックの下で、より深く理解してください。 – sidyll
RTFMヒントをありがとう。 :)それは私の質問をほぼ解決しました。 [manual](http://vimdoc.sourceforge.net/htmldoc/change.html#format-comments)で説明されているように、カスタマイズされたコメントを設定することは可能です。これを私のhaskell.vim構文ファイルに追加しました: 'set comments = s1: - \ \ |、m: - e: - ' これはCスタイルのコメントとしてはうまくいくようですVimはとてもスマートなので、コメントの 'e'と' m'部分の始めに空白が入ります。これをどこで設定できるのか? – JHannes
Vimは最近(わずか1年または2年以内)、Haskell用の構文ファイルでの出荷を開始しました。おそらくアップグレードする必要があります。 –