4

vimで、特定の行から別の行までのファイルの一部を表示することは可能ですか(ファイルa.txtから10行目から25行目まで)。内容を削除して (10 行目から 25 行目) を編集してファイルに書き戻し、開始行 (10 行目) から現在のバッファーを配置することもできますか?

ファイル全体を開かずに、指定した行範囲からファイルの一部を編集したい。これは、パフォーマンスの問題ではなく、使いやすさのために必要です。

4

2 に答える 2

3

NrrwRgn プラグインがこれを行います。エディター機能は Emacs に由来します。を使用:NarrowRegionして、スクラッチ バッファー内の行の範囲を編集できます。

于 2012-10-18T07:51:23.043 に答える
1

vimだけでそれを行う方法はわかりませんが、そのような問題が発生した場合は、ファイルを分割します:

head -n 10 file > file1
tail -n +11 | head 15 > file2
tail -n +16 > file3

次に、中央のファイルを編集します

 vim file2

そして、ファイルを再度連結します。

cat file1 file2 file3 > file

もちろん、小さな関数ヘルパーを使用すると、1つのコマンドでそれを実行できます。

(ファイルが非常に大きいためではなく)ファイル全体を表示したくないという問題がある場合は、ファイルの残りの部分を非表示にする折り畳みを定義します。

1Gv9jzf16jvGzf

(説明:1Gv9j-一番上に移動し、ビジュアルブロックを開始し、9行下に移動します。zf折り目を作成し、16j26行目に移動し、26vG行目から最後までビジュアルブロックを作成しzf、ファイルの残りの部分を折り畳みます)

于 2012-10-18T07:22:29.410 に答える