1. ホーム
  2. vim

[解決済み] VimでのWord Wrap(インデント保持)

2023-03-10 20:30:37

質問

私はちょうど見ていた この投稿 で、vim で単語全体をラップする方法について説明しています。 認められた解決策はこれでした。

:set formatoptions=l
:set lbr

このようなテキストを取ります(タブは"☑"で表示されます)。

 *Inside of window                        *Outside of window
|---------------------------------------|    
|\t\tthis is a like of text that will wr|ap here                            
|\t\tcan you see the wrap               |
|                                       |
|---------------------------------------|

このような挙動を実現します(タブは "week "で表示されます)。

 *Inside of window                        *Outside of window
|---------------------------------------|    
|\t\tthis is a like of text that will   |
|wrap here                              |
|\t\tcan you see the wrap               |
|                                       |
|---------------------------------------|

しかし、私はこの関数を再定義したいと思います。 私は、折り返された行の前に、上の行が持っているのと同じ数のタブに1を加えたものを持ちたいのです。 すなわち

 *Inside of window                        *Outside of window
|---------------------------------------|    
|\t\tthis is a like of text that will   |
|\t\t\twrap here                        |
|\t\tcan you see the wrap               |
|                                       |
|---------------------------------------|

何かアイデアはありますか?

どのように解決するのですか?

この ブレークインデントパッチ には、あなたが探しているものがあります。私はこのスレッドにある手順を使用して、それを適用することに成功しました。

Homebrew で OS X 上で Vim に breakindent パッチを適用する

具体的には、echristophersonさんのHomebrew式。

このスレッドは古いのですが、googleで人気があり、解決策を探そうとして何度も出会いました。

EDIT: このパッチは現在、パッチ 7.4.338 として vim に含まれています。参照してください。 https://retracile.net/blog/2014/07/18/18.00

Yosemite (Mac OS X)では、snowboundのコマンドをhombrewで使いました。

brew install macvim --with-features=huge --override-system-vim --HEAD