@@ -158,6 +158,7 @@ def _reattach(builder: WorkspaceBuilder):
158
158
159
159
If not, ``tmux attach-session`` loads the client to the target session.
160
160
"""
161
+ assert builder .session is not None
161
162
for plugin in builder .plugins :
162
163
plugin .reattach (builder .session )
163
164
proc = builder .session .cmd ("display-message" , "-p" , "'#S'" )
@@ -181,6 +182,7 @@ def _load_attached(builder: WorkspaceBuilder, detached: bool) -> None:
181
182
detached : bool
182
183
"""
183
184
builder .build ()
185
+ assert builder .session is not None
184
186
185
187
if "TMUX" in os .environ : # tmuxp ran from inside tmux
186
188
# unset TMUX, save it, e.g. '/tmp/tmux-1000/default,30668,0'
@@ -214,6 +216,8 @@ def _load_detached(builder: WorkspaceBuilder) -> None:
214
216
"""
215
217
builder .build ()
216
218
219
+ assert builder .session is not None
220
+
217
221
if has_gte_version ("2.6" ): # prepare for both cases
218
222
set_layout_hook (builder .session , "client-attached" )
219
223
set_layout_hook (builder .session , "client-session-changed" )
@@ -231,6 +235,7 @@ def _load_append_windows_to_current_session(builder: WorkspaceBuilder) -> None:
231
235
"""
232
236
current_attached_session = builder .find_current_attached_session ()
233
237
builder .build (current_attached_session , append = True )
238
+ assert builder .session is not None
234
239
if has_gte_version ("2.6" ): # prepare for both cases
235
240
set_layout_hook (builder .session , "client-attached" )
236
241
set_layout_hook (builder .session , "client-session-changed" )
@@ -244,6 +249,7 @@ def _setup_plugins(builder: WorkspaceBuilder) -> Session:
244
249
----------
245
250
builder: :class:`workspace.builder.WorkspaceBuilder`
246
251
"""
252
+ assert builder .session is not None
247
253
for plugin in builder .plugins :
248
254
plugin .before_script (builder .session )
249
255
@@ -458,8 +464,9 @@ def load_workspace(
458
464
)
459
465
460
466
if choice == "k" :
461
- builder .session .kill_session ()
462
- tmuxp_echo ("Session killed." )
467
+ if builder .session is not None :
468
+ builder .session .kill_session ()
469
+ tmuxp_echo ("Session killed." )
463
470
elif choice == "a" :
464
471
_reattach (builder )
465
472
else :
0 commit comments