-
-
Save todgru/6224848 to your computer and use it in GitHub Desktop.
#!/bin/sh | |
# | |
# Setup a work space called `work` with two windows | |
# first window has 3 panes. | |
# The first pane set at 65%, split horizontally, set to api root and running vim | |
# pane 2 is split at 25% and running redis-server | |
# pane 3 is set to api root and bash prompt. | |
# note: `api` aliased to `cd ~/path/to/work` | |
# | |
session="work" | |
# set up tmux | |
tmux start-server | |
# create a new tmux session, starting vim from a saved session in the new window | |
tmux new-session -d -s $session -n vim #"vim -S ~/.vim/sessions/kittybusiness" | |
# Select pane 1, set dir to api, run vim | |
tmux selectp -t 1 | |
tmux send-keys "api;vim" C-m | |
# Split pane 1 horizontal by 65%, start redis-server | |
tmux splitw -h -p 35 | |
tmux send-keys "redis-server" C-m | |
# Select pane 2 | |
tmux selectp -t 2 | |
# Split pane 2 vertiacally by 25% | |
tmux splitw -v -p 75 | |
# select pane 3, set to api root | |
tmux selectp -t 3 | |
tmux send-keys "api" C-m | |
# Select pane 1 | |
tmux selectp -t 1 | |
# create a new window called scratch | |
tmux new-window -t $session:1 -n scratch | |
# return to main vim window | |
tmux select-window -t $session:0 | |
# Finished setup, attach to the tmux session! | |
tmux attach-session -t $session |
Great script, helped me figure out default startup parameters,, cheers
Found this on google. Great way to startup common tasks
Rock star. Thanks!!
Legend!
Thank you for this! But there are several things that I don't understand.
-
What is the function of whitespace after
C-m
on line 20 and 24? I remove the whitespace and it is still works. -
I try to use my script without
tmux start-server
, and it still work perfectly.
Once again, thank you! this gist is the best.
Great script!!
Love it, thanks a ton for the script.
Carefuly read man page: http://man7.org/linux/man-pages/man1/tmux.1.html @AffanIndo
Thank you for this! But there are several things that I don't understand.
- What is the function of whitespace after
C-m
on line 20 and 24? I remove the whitespace and it is still works.
m Mark the current pane (see select-pane -m).
- I try to use my script without
tmux start-server
, and it still work perfectly.Once again, thank you! this gist is the best.
start-server
(alias: start)
Start the tmux server, if not already running, without creating
any sessions.
send-keys [-lMRX] [-N repeat-count] [-t target-pane] key ...
(alias: send)
Send a key or keys to a window. Each argument key is the name
of the key (such as βC-aβ or βNPageβ) to send; if the string is
not recognised as a key, it is sent as a series of characters.
The -l flag disables key name lookup and sends the keys literβ
ally. All arguments are sent sequentially from first to last.
The -R flag causes the terminal state to be reset.-M passes through a mouse event (only valid if bound to a mouse key binding, see MOUSE SUPPORT). -X is used to send a command into copy mode - see the WINDOWS AND PANES section. -N specifies a repeat count.
awesome, thanks!
Very nice, much thanks, it makes my day easier.
As long as we are here, you might consider getting on the tmux-resurrect train https://github.com/tmux-plugins/tmux-resurrect along with other plugins with tmux-plugin-manager. Pretty simple to save and restore apps that are running, but some are non-default and you can add them with
set -g @resurrect-processes '~cmus'
Brilliant!
Thank you!!
Thank you @todgru
This is excellent, thank you! I was going to toil away writing my own but i'm glad i found yours :D
Thanks!
Very helpful, thanks for posting this!
@niouby you're too kind! β€οΈ glad I could help!
@joshbaptiste you are welcome!
@azizLIGHT glad you like it!
@jpdippenaarS excellent! π€
@iosifv too kind!
@AffanIndo you're welcome! great questions - see @develforever got you covered.
@zackyaple thanks!
@kosivantsov anytime!
@develforever thanks for the contribution - nice work!
@rcgoodfellow you're welcome!
@botenvouwer nice! work smarter not harder π
@cmdcolin tmux-resurrect looks like a very useful tool! thank you!
@mcai4gl2 nah, i just searched man pages to figure this stuff out π thank you!
@bilalelhoudaigui you're welcome!
@maluramichael you're welcome, anytime!
@aamnah you're welcome! i'm happy to have helped you save time and effort!
@setymedia you're welcome!
@darzyx glad i could help out!
thanks to everyone for the stars! π€©
π happy holidays! π π βͺοΈ π
Nice
Thanks for posting it π
Thanks!
thanks for posting, helped me a lot to set up my startup script ππΌ
Much appreciated for this script. I was able to modify it to automate the launch of different ncmpcpp
panes for displaying the media library, playlist and visualization.
Amazing
This is great! Thank you
thanks !
I love you! You help me to automatize all my tmux lauch, I will save so much time each morning!