ZSH의 사용자 정의 기능을 기반으로 TMUX 창 이름 바꾸기

ZSH의 사용자 정의 기능을 기반으로 TMUX 창 이름 바꾸기

내 파일 ~/.zshrc에 사용자 정의 기능이 있습니다 .

function getCustomWindowName {
  # runs 'sed' on 'pwd' to get special dir name
  # and set it to $workspace
  if $workspace is valid; then
    echo $workspace
    return 0
  else
    echo ""
    return 1
  fi
}

~/.tmux.conf프로필 에는생각하다다음과 같이 하십시오:

set-option -g status-interval 5
set-option -g automatic-rename on
set-option -g automatic-rename-format '#{getCustomWindowName}'

이를 수행할 수 있는 방법이 있습니까?

getCustomWindowName보너스 질문: 에코(또는 s)가 없을 경우 기본 창 이름으로 사용하고 싶습니다 return 1. 어쨌든 이렇게 할 수 있나요?

답변1

NotTheDr01ds로부터 ZSH에서 창 이름을 바꿀 수 있다는 것을 배웠으므로 다음 방법을 사용했습니다.

function getCustomWindowName {
  # runs 'sed' on 'pwd' to get special dir name
  # and set it to $workspace
  if $workspace is valid; then
    tmux rename-window $workspace
  fi
}

# only allow unique values in this array
typeset -U chpwd_functions
# run this function when current working directory changes.
# Variables $PWD and $OLDPWD.
chpwd_functions+=(getCustomWindowName)
# Try to update when a new window is opened.
getCustomWindowName

관련 정보