aboutsummaryrefslogtreecommitdiff
path: root/base/tmux/status
blob: e96d10c3184548471a8667a682e4e8bb89927f46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/bash

if [[ "$1" = "toggle-task" ]]; then
  if tmux showenv TMUX_SHOW_TASK &>/dev/null; then
    tmux setenv -u TMUX_SHOW_TASK
  else
    tmux setenv TMUX_SHOW_TASK 1
  fi
fi

STATUS="#[bg=colour$HOST_COLOR]#[fg=black] $SHORT_HOSTNAME"
if [[ `tmux ls | wc -l` -gt 1 ]]; then STATUS="$STATUS  #S"; fi
STATUS="$STATUS #[fg=colour$HOST_COLOR]#[bg=colour18] #(bash $0)"
tmux set -g status-left "$STATUS"
#█ ^Vue0b0

if tmux showenv TMUX_SHOW_TASK &>/dev/null; then
  TASKCFG="rc.verbose= rc.gc=off rc.color=no"
  TASKCOUNT="$(task $TASKCFG +READY count)"
  TASKCTX="$(task $TASKCFG _get rc.context | sed "s/.*/\L&/;s/[a-z]*/\u&/g")"
  TOPTASK="$(task $TASKCFG rc.report.x.columns=id rc.report.x.filter=+READY \
    rc.report.x.sort=start-,urgency- x | head -n1 | xargs)"

  if [[ "$TASKCTX" ]]; then
    TASKCOUNT="#[fg=colour19]#[bg=colour19,fg=colour7] $TASKCTX: $TASKCOUNT #[fg=colour18]#[bg=colour18]#[fg=colour20]"
  else
    TASKCOUNT="#[fg=colour8]#[fg=colour20] $TASKCOUNT #[fg=colour8]#[fg=colour20]"
  fi

  TASKLINE="$TASKCOUNT $TOPTASK. $(task $TASKCFG _get ${TOPTASK}.description) "
else TASKLINE=""; fi

STATUS="$TASKLINE#[fg=colour19]#[bg=colour19,fg=colour7] %a %m.%d %R"
STATUS="$STATUS #[fg=colour8]#{?client_prefix,#[bg=colour8]💛,💜}"
tmux set -g status-right-length "$(echo "$STATUS" | wc -c)"
tmux set -g status-right "$STATUS"