2017-01-14 27 views
1

Я хотел бы определить, есть ли его панель или окно tmux. Если его оконная арка должна работать, если ее другая панель, а не.zsh обнаружить, если его окно или панель tmux

Я пробовал следовать, но это явно не сработает.

# Only run if archey is actually installed 
if which archey &> /dev/null 
    then 
     if [[ "$ARCHEY_STARTED" != "true" ]] 
      then 
       export ARCHEY_STARTED=true 
       archey 
     fi 
else 
    print "zsh archey plugin: archey not found. Please install archey before using this plugin: brew install archey" 
fi 

am Я пытаюсь иметь яблочный логотип только в новых окнах, а не в стеклах. Вы согласны с тем, в стеклах становится раздражающим:

enter image description here

Я хочу, чтобы достичь этого:

enter image description here

+0

Программы всегда запускаются в панелях, а окно представляет собой набор из 1 или более панелей. Команды 'tmux', которые принимают форматы, имеют переменную' window_panes', которая расширяется до количества окон в окне. Вы могли бы что-то сделать с этим, только выполнив команду, если счетчик == 1. – chepner

+0

@chepner $ TMUX не возвращает ничего полезного, знаете ли вы какой-либо env var, который возвращает информацию о панели или окне? –

ответ

0

Используя @chepners предложение, вы можете использовать это в качестве отправной точки

# Only run if archey is actually installed 
if which archey &> /dev/null 
then 
    if [[ "$ARCHEY_STARTED" != "true" -a "1x" == "$(tmux list-panes -F'#{window_panes}' | head -n 1)x" ]] 
     then 
      export ARCHEY_STARTED=true 
      archey 
    fi 
else 
    print "zsh archey plugin: archey not found. Please install archey before using this plugin: brew install archey" 
fi 

I труба tmux с выходом head, так как команда g iven выведет счетчик панели для каждой панели текущего окна.