.Dd $Mdocdate$ .Dt REMUX 1 .Sh NAME .Nm remux .Nd a command shortener for .Xr tmux 1 .Sh SYNOPSIS .Nm remux .Op Fl dhnqrtv .Op Fl D Ar path .Op Ar command .Op args... .Sh DESCRIPTION .Nm is a wrapper and command shortener for .Xr tmux 1 , primarily focused on improving the ergonomics of using named sessions. .Pp If no command is provided, remux will use the context action. Inside a repository, remux will attach or create. If in a session or outside a repository, remux will list sessions. .Sh COMMANDS .Nm remux commands are split into two categories: global commands, which can be used anywhere, and session commands, which can only be used from inside a session. .Ss GLOBAL COMMANDS .Bl -tag -width Ds .It Xo Ic attach .Op Fl dnr .Op Ar title .Op Ar window .Xc .Bd -literal -compact aliases: a Attaches to an existing session. .Ed .Pp .Bl -tag -width Ds -compact .It Fl d , Fl -detach Detach all other connections to the session. .It Fl D , Fl -dir Ar path Sets the working directory for the given command. .It Fl n , Fl -nest Allow nesting (attaching a session from inside another session). .It Fl r , Fl -read-only Attach the session in read-only mode. .It Ar title The title of the target session. If not given, remux will try to use the name of the repository containing the current directory. .It Ar window The name of the window to attach to. .El .It Xo Ic detach .Op Ar title .Xc .Bd -literal -compact aliases: d Detaches all clients from the target session. .Ed .It Xo Ic has .Op Fl q .Op Ar title .Xc .Bd -literal -compact aliases: h Checks whether or not a session exists. .Ed .Pp .Bl -tag -width Ds -compact .It Fl q , Fl -quiet Run silently without printing to standard output. .It Ar title The title of the target session. If not given, remux will attempt to use the name of the repository containing the current directory. .El .It Ic list .Bd -literal -compact aliases: l, ls Pretty-prints a list of tmux sessions. .Ed .It Xo Ic new .Op Fl dn .Op Fl t\ |\ --target Ar path .Op Ar title .Op Ar command .Xc .Bd -literal -compact aliases: n Creates a new session. .Ed .Pp .Bl -tag -width Ds -compact .It Fl d , Fl -detach Creates the session without attaching. .It Fl n , Fl -nest Allow nesting (attaching a session from inside another session). .It Fl t , Fl -target Ar path Sets the session path to the provided directory. .It Ar title Create the session with the given title. If not given, remux will attempt to use the name of the repository containing the current directory. .El .El .Ss SESSION COMMANDS .Bl -tag -width Ds .It Ic path .Bd -literal -compact aliases: p Prints the session path. .Ed .It Xo Ic switch .Op Fl rd .Op Ar title .Xc .Bd -literal -compact aliases: s Switches from the current session to the target. .Ed .Pp .Bl -tag -width Ds -compact .It Fl d , Fl -detach Detaches other clients from the target session. .It Fl r , Fl -read-only Switch to the target session in read-only mode. .It Ar title The title of the session to switch to. If blank, the previous session will be used. .El .It Ic title .Bd -literal -compact aliases: t, which Prints the session title. .El .Sh ENVIRONMENT .Bl -tag -width Ds .It Ev REMUX_ATTACH_SYMBOL Changes the symbol displayed for attached sessions in the .Ic list command. Default: '*' .It Ev REMUX_CURRENT_SYMBOL Changes the symbol displayed for the current session in the .Ic list command. Default: '>' .It Ev REMUX_NEW_WINDOW Provides a default windows name when creating a new session. Unused if empty. Default: (unset) .It Ev REMUX_PREVIOUS_SYMBOL Changes the symbol displayed for the previous session in the .Ic list command. Default: '-' .It Ev REMUX_REPO_FILE The filename to match on when trying to find the root of a repository. Default: '.git' .El .Sh EXIT STATUS .Bl -tag -Width Ds .It 1 Unmatched command name. .It 2 Unmatched target session. .It 3 Unmatched help topic. .It 4 Missing or invalid target; target was not given or is the same as the current session. .It 5 .Nm remux is not running from within a terminal. .It 6 Nesting error; nest flag is missing or inappropriate. .It 7 A session command was attempted outside a session. .Sh EXAMPLES Use .Ic path to navigate to the session path: .Pp .Dl $ cd `remux p` .Pp .Sh SEE ALSO .Xr tmux 1 .Sh AUTHORS .An -nosplit .An Valerie Wolfe Aq Mt sleeplessval@gmail.com