start-ui 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #!/usr/bin/env bash
  2. MODE=$1
  3. if [ "x$MODE" == "xdaemon" ]; then
  4. while true; do bash; done
  5. exit
  6. fi
  7. if [ "x$TMUXCMD" = "x" ]; then
  8. export TMUXCMD="tmux -L MUD"
  9. fi
  10. SESSION=MUD
  11. # 等待终端状态同步
  12. echo 正在打开终端...
  13. sleep 0.5;
  14. echo 正在连接 UI...
  15. # 优先连接到已有的会话,继续之前的状态
  16. $TMUXCMD attach-session -t $SESSION && exit
  17. echo 正在生成 UI...
  18. HEIGHT=$(tput lines || ( [[ "x$LINES" != "x" ]] && echo $LINES ) || echo 30)
  19. HEIGHT=$(expr $HEIGHT - 1 - 1 - 1 - 6)
  20. # 如果尚未创建会话,则创建一个标准会话
  21. $TMUXCMD new-session -d -s $SESSION
  22. $TMUXCMD new-window -t $SESSION
  23. $TMUXCMD select-window -t $SESSION:0
  24. $TMUXCMD split-window -t $SESSION -vb
  25. $TMUXCMD send-keys -t $SESSION 'clear; echo "You could input \"mtail id\" to watch your game log."; mtail'
  26. $TMUXCMD send-keys -t $SESSION Enter
  27. $TMUXCMD last-pane
  28. $TMUXCMD send-keys -t $SESSION "sleep 0.1; tmux resize-pane -y $HEIGHT; clear; doc HOW-TO-PLAY.md"
  29. $TMUXCMD send-keys -t $SESSION Enter
  30. echo UI 已创建。
  31. exec $TMUXCMD attach-session -t $SESSION