0

I use a couple cheap fire tablets I have left over + ssh + tmux to run as an always up to date visual look at my taskwarrior and timewarrior status.

it works great!

but because of the limited screen real estate on some of these lower end devices i'd rather not have the status bar showing on them...

i know i can hide the status bar for ALL tmux sessions but when i use tmux on my desktop/laptop i'd definitely like to have it visible. anyway to turn off the status bar for all windows in a given session?

many thanks!

running tmux on os x in this case if it matters.

1 Answers1

2

Tmux command set status off (or from a shell: tmux set status off) turns the status line off for a single session.

I suspect you may have mistaken the terminology. In your workflow you probably use two or more clients attached to the same session. I'm not aware of any method to turn the status line off for a particular client. I think you need more than one session.

(Note: whenever this answer states a command starting with tmux, it's a command to be run in a shell. A command not starting with tmux is a command to run in tmux (after prefix: or from a key binding). Usually you can convert one form to the other (or vice versa) by removing (or prepending) the tmux word.)

There are at least two ways to get the same window in another session:

  1. You can share one or more windows between multiple sessions. Let's suppose there already is session 0 with a window 0:0. Instead of attaching to the session 0 with another client (tmux attach), create a new session (tmux new-session or tmux new in short). Let's say the new session is 1. Then you can link-window the old window to the new session:

    tmux link-window -s 0:0 -t 1:
    

    A complementary command is unlink-window. Other windows can be created, linked or unlinked in each session independently.

  2. You can create a new session in the same session group. Instead of attaching to the session 0 with another client (tmux attach), create a new session like this:

    tmux new -t 0:
    

    The new session will be denoted 0-1 or similar. Sessions in the same group share the same set of windows. New windows are linked to all sessions in the group and any windows closed removed from all sessions.

Please compare this another answer of mine posted under a question from a person who inadvertently did something like this.

One way or another now you have two sessions that share at least one window. You can set status off or set status on for each session independently. Doing it from a shell from within a shared window may target the wrong session, so either explicitly specify the session you want to affect:

tmux set -t 0-1: status off

or don't do this via a shell, do this directly in tmux:

prefix:set status offEnter

Possibly you will need just two sessions: one with a status line and one without. Remember you can name them (from the start with new-session -s … or later with rename-session). This way instead of 0:, 1: or 0-1: you can use more descriptive custom names, e.g. w (like warriors: task- and timewarrior) and w-noline.