2

screen から tmux に切り替えようとしています。私のscreenrc構成の1つは、画面の上部の水平部分のほとんどでvim(NERD_tree +多くのvim分割を使用)を実行し、シェルコマンド用に下部にはるかに小さな分割ウィンドウを保持できるようにします。ウィンドウの分割を扱う私のscreenrcの一部:

# start two sessions
screen -t code vim
screen -t shell
# goto screen 0 and split it
select 0
split
# switch to bottom split and make it 8 lines smaller
focus
resize -8
# select screen 1 to show in bottom split
select 1
focus
4

2 に答える 2

0

おそらく、私の他の答えに代わるより良い方法は、シェルスクリプトを使用して、キーバインディング、ステータスバーの設定などのために設定ファイルを予約することです.

#!/bin/bash
tmux new-session -d -s coding-session -n code vim
tmux split-window -p 30
tmux attach-session -t coding-session

ここでは、シェルから 3 つの tmux コマンドを実行します。最初のものは新しいセッションを作成しますが、それにアタッチしません (プロセスが終了する可能性があるため)。split-window2 番目は、(おそらく) 最後に作成されたセッションにコマンドを送信します。3 番目は、クライアントを名前付きセッションに接続します。

于 2012-03-24T14:58:26.127 に答える
-1

(注:これは私の以前の回答の改善です)

必要なtmuxコマンドを「vim-session」という名前のファイルに追加します。まず内容を見てから、ファイルの使い方を見ていきましょう。

new-session -n code vim
split-window
resize-pane -D 8

最初に行うことは、新しいセッションを作成することです。は-d、まだセッションに接続できないようにします。-nオプションは、を実行するセッションの初期ウィンドウに名前を付けますvim。次に、ウィンドウを垂直方向に2つのペインに分割します。1つは上に、もう1つは下に配置します。フォーカスは自動的に下部の新しいペインに移動します。最後に、現在のペインのサイズを下(-D)に8行変更します。

を使用してtmuxセッションを開始します

$ tmux -f vim-session attach

これは、デフォルトのファイルの代わりに、作成したばかりの構成ファイルを使用することを意味します~/.tmux.conf。tmuxに明示的なコマンドを与えてattach、「vim-session」で作成した(ただしアタッチしなかった)セッションにアタッチするようにします。がないattachと、tmuxは暗黙的に新しいセッションを作成し、「vim-session」で作成したセッションの代わりにそれに接続します。

サイズ変更基準を少し変更することで、次の呼び出しを削除できますresize-pane

new-session -d -n code vim
split-window -p 30         # Make the new pane 30% of your screen
#split-window -l 10        # Make the new pane exactly 10 lines.

split-windowただし、半分より8行小さい新しいペインを作成する方法はないと思います。

于 2012-03-22T18:45:15.953 に答える