これは実際にはformatlistpatによって非常にうまくサポートされていますが、明らかに文書化されていないかなり難しい問題です。私は自分のvimrcで再生したい設定として、formatlistpatとformatoptionsを特定するだけで、複数のスタイルのリストをサポートすることができました。
次との完全な概要を取得することができますにgqapまたはgqipを入力することにより
- this is item one that
is indented correctly
- this is item two that
is also indented
correctly
:
:help 'formatlistpat'
:help 'formatoptions'
あなたの作業例では、Vimは以下の を変換する方法を好むことを示しています通常モードでは次のようになります。
- this is item one that is indented correctly
- this is item two that is also indented correctly
しかし、あなたは、次のようなものが提示されている場合は、ここにあなたがあなたの構成でのvimでインデントunorderリストをことができないという問題がある:
gpaqが誤って次のようにフォーマットされます。この場合
# - this is item one that
# is not indented correctly
# - this is item two that
# is also not indented
# correctly
# + this is item one that
# is not indented correctly
# + this is item two that
# is also not indented
# correctly
# * this is item one that
# is not indented correctly
# * this is item two that
# is also not indented
# correctly
:
# - this is item one that is not indented correctly - this is item two that
# is also not indented correctly + this is item one that is not
# indented correctly + this is item two that is also not indented
# correctly * this is item one that is not indented correctly * this
# is item two that is also not indented correctly
を
あなたはすぐに次のように、このインデントの問題を修正することができます。再フォーマットします
:set formatoptions+=n
:set formatlistpat=^\\s*[\\-\\+\\*]\\+\\s\\+
をあなたのコメントは、あなたが意図した方法で:
# - this is item one that is not indented correctly
# - this is item two that is also not indented correctly
# + this is item one that is not indented correctly
# + this is item two that is also not indented correctly
# * this is item one that is not indented correctly
# * this is item two that is also not indented correctly
あなたもサポートしたいいや、他のリストがあります:
# a) this is item one that is not
# indented correctly
# b) this is item two that is also not
# indented correctly
# C. this is item three that is also not
# indented correctly
は正確でフォーマットすることができます:
:set formatlistpat=^\\s*\\w[.\)]\\s\\+
次:
# 1 this is item one that
# is not indented correctly
# 2) this is item two that
# is also not indented
# correctly
# 33. this is item three that
# is also not indented
# correctly
正確でフォーマットすることができます。
:set formatlistpat=^\\s*\\d\\+[.\)]\\s\\+
次
# i. this is item one that
# is not indented correctly
# ii. this is item two that
# is also not indented
# correctly
# iv) this is item three that
# is also not indented
# correctly
は正確でフォーマットすることができます。
:set formatlistpat=^\\s*[ivxIVX]\\+[.\)]\\s\\+
次の2本のシンプルなラインと一緒にそのすべてに置くことができます。
:set formatoptions+=n
:set formatlistpat=^\\s*\\w\\+[.\)]\\s\\+\\\\|^\\s*[\\-\\+\\*]\\+\\s\\+