@@ -126,31 +126,29 @@ pane_creation_command() {
126
126
new_window () {
127
127
local session_name=" $1 "
128
128
local window_number=" $2 "
129
- local window_name=" $3 "
130
- local dir=" $4 "
131
- local pane_index=" $5 "
129
+ local dir=" $3 "
130
+ local pane_index=" $4 "
132
131
local pane_id=" ${session_name} :${window_number} .${pane_index} "
133
132
dir=" ${dir/# \~ / $HOME } "
134
133
if is_restoring_pane_contents && pane_contents_file_exists " $pane_id " ; then
135
134
local pane_creation_command=" $( pane_creation_command " $session_name " " $window_number " " $pane_index " ) "
136
- tmux new-window -d -t " ${session_name} :${window_number} " -n " $window_name " - c " $dir " " $pane_creation_command "
135
+ tmux new-window -d -t " ${session_name} :${window_number} " -c " $dir " " $pane_creation_command "
137
136
else
138
- tmux new-window -d -t " ${session_name} :${window_number} " -n " $window_name " - c " $dir "
137
+ tmux new-window -d -t " ${session_name} :${window_number} " -c " $dir "
139
138
fi
140
139
}
141
140
142
141
new_session () {
143
142
local session_name=" $1 "
144
143
local window_number=" $2 "
145
- local window_name=" $3 "
146
- local dir=" $4 "
147
- local pane_index=" $5 "
144
+ local dir=" $3 "
145
+ local pane_index=" $4 "
148
146
local pane_id=" ${session_name} :${window_number} .${pane_index} "
149
147
if is_restoring_pane_contents && pane_contents_file_exists " $pane_id " ; then
150
148
local pane_creation_command=" $( pane_creation_command " $session_name " " $window_number " " $pane_index " ) "
151
- TMUX=" " tmux -S " $( tmux_socket) " new-session -d -s " $session_name " -n " $window_name " - c " $dir " " $pane_creation_command "
149
+ TMUX=" " tmux -S " $( tmux_socket) " new-session -d -s " $session_name " -c " $dir " " $pane_creation_command "
152
150
else
153
- TMUX=" " tmux -S " $( tmux_socket) " new-session -d -s " $session_name " -n " $window_name " - c " $dir "
151
+ TMUX=" " tmux -S " $( tmux_socket) " new-session -d -s " $session_name " -c " $dir "
154
152
fi
155
153
# change first window number if necessary
156
154
local created_window_num=" $( first_window_num) "
@@ -162,50 +160,45 @@ new_session() {
162
160
new_pane () {
163
161
local session_name=" $1 "
164
162
local window_number=" $2 "
165
- local window_name=" $3 "
166
- local dir=" $4 "
167
- local pane_index=" $5 "
163
+ local dir=" $3 "
164
+ local pane_index=" $4 "
168
165
local pane_id=" ${session_name} :${window_number} .${pane_index} "
169
166
if is_restoring_pane_contents && pane_contents_file_exists " $pane_id " ; then
170
167
local pane_creation_command=" $( pane_creation_command " $session_name " " $window_number " " $pane_index " ) "
171
168
tmux split-window -t " ${session_name} :${window_number} " -c " $dir " " $pane_creation_command "
172
169
else
173
170
tmux split-window -t " ${session_name} :${window_number} " -c " $dir "
174
171
fi
175
- tmux rename-window -t " ${session_name} :${window_number} " " $window_name "
176
172
# minimize window so more panes can fit
177
173
tmux resize-pane -t " ${session_name} :${window_number} " -U " 999"
178
174
}
179
175
180
176
restore_pane () {
181
177
local pane=" $1 "
182
- while IFS=$d read line_type session_name window_number window_name window_active window_flags pane_index dir pane_active pane_command pane_full_command; do
178
+ while IFS=$d read line_type session_name window_number window_active window_flags pane_index dir pane_active pane_command pane_full_command; do
183
179
dir=" $( remove_first_char " $dir " ) "
184
- window_name=" $( remove_first_char " $window_name " ) "
185
180
pane_full_command=" $( remove_first_char " $pane_full_command " ) "
186
181
if [ " $session_name " == " 0" ]; then
187
182
restored_session_0_true
188
183
fi
189
184
if pane_exists " $session_name " " $window_number " " $pane_index " ; then
190
- tmux rename-window -t " ${session_name} :${window_number} " " $window_name "
191
185
if is_restoring_from_scratch; then
192
186
# overwrite the pane
193
187
# happens only for the first pane if it's the only registered pane for the whole tmux server
194
188
local pane_id=" $( tmux display-message -p -F " #{pane_id}" -t " $session_name :$window_number " ) "
195
- new_pane " $session_name " " $window_number " " $window_name " " $ dir" " $pane_index "
189
+ new_pane " $session_name " " $window_number " " $dir " " $pane_index "
196
190
tmux kill-pane -t " $pane_id "
197
191
else
198
192
# Pane exists, no need to create it!
199
193
# Pane existence is registered. Later, its process also won't be restored.
200
194
register_existing_pane " $session_name " " $window_number " " $pane_index "
201
195
fi
202
196
elif window_exists " $session_name " " $window_number " ; then
203
- tmux rename-window -t " ${session_name} :${window_number} " " $window_name "
204
- new_pane " $session_name " " $window_number " " $window_name " " $dir " " $pane_index "
197
+ new_pane " $session_name " " $window_number " " $dir " " $pane_index "
205
198
elif session_exists " $session_name " ; then
206
- new_window " $session_name " " $window_number " " $window_name " " $ dir" " $pane_index "
199
+ new_window " $session_name " " $window_number " " $dir " " $pane_index "
207
200
else
208
- new_session " $session_name " " $window_number " " $window_name " " $ dir" " $pane_index "
201
+ new_session " $session_name " " $window_number " " $dir " " $pane_index "
209
202
fi
210
203
done < <( echo " $pane " )
211
204
}
@@ -292,9 +285,11 @@ handle_session_0() {
292
285
fi
293
286
}
294
287
295
- restore_pane_layout_and_autonaming_for_each_window () {
288
+ restore_window_properties () {
296
289
\g rep ' ^window' $( last_resurrect_file) |
297
- while IFS=$d read line_type session_name window_number window_active window_flags window_layout automatic_rename; do
290
+ while IFS=$d read line_type session_name window_number window_name window_active window_flags window_layout automatic_rename; do
291
+ window_name=" $( remove_first_char " $window_name " ) "
292
+ tmux rename-window -t " ${session_name} :${window_number} " " $window_name "
298
293
tmux select-layout -t " ${session_name} :${window_number} " " $window_layout "
299
294
if [ " ${automatic_rename} " = " :" ]; then
300
295
tmux set-option -u -t " ${session_name} :${window_number} " automatic-rename
@@ -381,7 +376,7 @@ main() {
381
376
execute_hook " pre-restore-all"
382
377
restore_all_panes
383
378
handle_session_0
384
- restore_pane_layout_and_autonaming_for_each_window > /dev/null 2>&1
379
+ restore_window_properties > /dev/null 2>&1
385
380
execute_hook " pre-restore-history"
386
381
if save_shell_history_option_on; then
387
382
restore_shell_history
0 commit comments