there are quite a few answers here: https://unix.stackexchange.com/questions/12032/create-new-window-with-current-directory-in-tmux
in summary:
from the tmux FAQ, one obtuse (but very general and fairly shell independent) way:
- How can I open a new window in the same directory as the current window?
One option is to just run "TMUX= tmux" in the window. However, this
only works if no command is running, so that you can input the
command.
A workaround is to let tmux know about the current path through an
environment variable. To do so, use the following command:
[ -n "$TMUX" ] && tmux setenv TMUXPWD_$(tmux display -p "#I") $PWD
Which sets TMUXPWD_i (where i is the number of the current window) to
the path of the current directory. This command can be added to PS1,
for example:
PS1='$([ -n "$TMUX" ] && tmux setenv TMUXPWD_$(tmux display -p "#I") $PWD)\h$ '
When a new window is created, the shell should be asked to change
directory. You can define a new binding (for example, if using GNU
bash):
bind-key C-c run-shell 'tmux neww "cd $(tmux display -p "\$TMUXPWD_#I"); exec bash"'
This solution will work even if a command is currently running in the
terminal, but it will not work from a window that has just been
swapped with another because TMUXPWD_i will not be updated after a
swap. However, once a new prompt is displayed, TMUXPWD_i is updated
properly.
simply replace calls to the shell as appropriate for yours.
also, apparently newer versions of tmux have this addressed with a command
tmux new-window
older versions are claimed to work thusly:
calling
tmux neww
from your shell will open tmux in that dir.
if you would like to be able to open new windows or panes from the current working directory in tmux then you should instead:
tmux set-option default-path "$PWD"