[解決済み】vimで開いている2つのファイル(splits)の位置を入れ替えるには?
2022-03-26 20:13:51
質問
vimで任意に分割したレイアウトを用意したとします。
____________________
| one | two |
| | |
| |______|
| | three|
| | |
|___________|______|
を入れ替える方法はありますか?
one
と
two
と同じレイアウトを維持することができますか? この例では単純ですが、もっと複雑なレイアウトの場合に役立つ解決策を探しています。
UPDATEしてください。
もっとはっきりさせるべきですね。 私の前の例は、実際のユースケースを単純化したものでした。 実際のインスタンスで
同じレイアウトを維持したまま、これらの分割のうち任意の2つを入れ替えるにはどうしたらよいでしょうか。
更新しました 3年以上経って...
sgriffinの解決策を、簡単にインストールできるVimプラグインにしました! お気に入りのプラグインマネージャでインストールして、試してみてください。 ウィンドウズ・スワップ.vim
解決方法は?
ちょっと投稿が遅れましたが、他のものを探していてこれに出会いました。 私はしばらく前に、ウィンドウをマークし、ウィンドウ間のバッファを交換するための2つの関数を書きました。 これは、あなたが求めているもののように思えます。
これらを.vimrcに追加して、好きなように関数をマッピングしてください。
function! MarkWindowSwap()
let g:markedWinNum = winnr()
endfunction
function! DoWindowSwap()
"Mark destination
let curNum = winnr()
let curBuf = bufnr( "%" )
exe g:markedWinNum . "wincmd w"
"Switch to source and shuffle dest->source
let markedBuf = bufnr( "%" )
"Hide and open so that we aren't prompted and keep history
exe 'hide buf' curBuf
"Switch to dest and shuffle source->dest
exe curNum . "wincmd w"
"Hide and open so that we aren't prompted and keep history
exe 'hide buf' markedBuf
endfunction
nmap <silent> <leader>mw :call MarkWindowSwap()<CR>
nmap <silent> <leader>pw :call DoWindowSwap()<CR>
使用するには(mapleaderが "the \"に設定されていると仮定して)、次のようになります。
- スワップの対象となるウィンドウに移動します。 ctrl-wの移動
- タイプ \ʕ-̫͡-ʔ
- 入れ替えたいウィンドウに移動する
- タイプ \ʕ-ᴥ-ʔ
ほらね。 ウィンドウのレイアウトを崩すことなく、バッファを交換することができます。
関連
-
[解決済み] Vimエディタを終了するにはどうすればよいですか?
-
[解決済み] Vimで文字を改行で置き換える方法
-
[解決済み] Vimで大文字小文字を区別しない検索をする方法
-
[解決済み] Vimで行全体を複製する方法は?
-
[解決済み] Vimで行末に移動するにはどうしたらいいですか?
-
[解決済み] vimのレジスタはどのように使うのですか?
-
[解決済み] vimでシステムのクリップボードからペースト(とコピー)するには?
-
[解決済み] Vimレコーディングとは何ですか、またそれを無効にするにはどうしたらいいですか?
-
[解決済み】vimの「sudoで書く」トリックはどうやるの?
-
[解決済み】Vimで複数のファイルを効率的に操作する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン