4

私はvimの折り畳みを説明するブログを書いています。だから私はこのようなコードが必要です。

+-- 15 lines: set_up_socket_dir () {--------------------------------------------

しかし、私が行をヤンクするとき、実際には折りたたまれたコードをヤンクします。どうすればvimからその行を取得できますか?

4

3 に答える 3

5

あなたがチェックしたいと思うかもしれないvim関数があります:

:h foldclosed(

:gこの関数を使用してコマンドラインを作成できます。

:g/^/if line('.')==foldclosed('.') || foldclosed('.')==-1|y Z |endif

したがって、ワークフローは次のようになります。

qzq レジスターをクリアするz

...visual select lines...

'<,'>g/^/if line('.')==foldclosed('.') || foldclosed('.')==-1|y Z |endif

"zp貼り付けます

頻繁に使用する場合は、マッピングまたはコマンドを作成できます。

それは次のように機能します:

ここに画像の説明を入力してください

于 2013-02-27T10:36:45.213 に答える
3

バッファ/範囲をVimで表示されるようにレンダリングするには(構文の強調表示と折りたたみを含む)、組み込みの:TOhtmlコマンドを使用できます。これにより、HTMLが取得されます。ウィンドウレイアウト全体には、ScreenShotプラグインがあります。

プレーンテキストだけが必要な場合は、コンソールVimを起動し、マウスでコンテンツ全体を選択し、端末のコピー機能を使用して、選択内容をシステムのクリップボードにコピーします。(screenまたはtmuxでもこれを実行できると思います。)

于 2013-02-27T10:17:08.803 に答える
3

IIUC、閉じた折り畳みテキストの見出しをコピーします。これは、モードレス選択で実行できます(を参照:help modeless-selection)。Ctrl+をShift押してテキストをマークします。

于 2013-02-27T10:19:02.707 に答える