tmux가 내 Mac에서 무언가를 차단합니다

tmux가 내 Mac에서 무언가를 차단합니다

저는 이 기능을 정말 좋아 tmux하고 많이 사용하기 때문에 다음과 같이 설정했습니다 .zprofile.

[[ $TERM != "screen" ]] && exec tmux

그래서 새 창을 열면 그 사람들이 tmux저를 위해 거기에 있어요.

tmux그러나 실행할 때 이상한 일이 발생합니다.

  • gnuplot, octave그래픽을 그리기 위해 X11을 시작해야 하는 다른 프로그램은 그렇게 할 수 없는 것처럼 보입니다(또는진짜길다 – 약 10분). X11이 이미 실행 중이면 이 문제가 발생하지 않습니다.
  • osascript어떤 일이 발생했을 때 알려주기 위해 제가 작성한 일부 스크립트는 다음과 같습니다 .

    osascript -e 'display notification "some text" with title "Foo"'
    

    이는 tmux비활성 상태에서는 잘 작동하지만 세션 내에서 호출되면 아무 작업도 수행하지 않습니다 tmux. (다른 osascript작업 참고하다일하다)

왜 이런 일이 발생하는지, 그리고 이를 해결하기 위해 무엇을 할 수 있는지 아는 사람이 있습니까?

노트:나는첫 번째 질문과 비슷한 질문얼마 전에 apple.se 웹사이트에 접속했지만 응답이 없었습니다. 두 번째 문제는 최근에 발생했기 때문에 여기서 행운을 시험해 봐야겠다고 생각했습니다.

답변1

[[ $TERM != "screen" ]] && exec tmux파일 로 이동해 보세요 .zshrc. 이렇게 하면 명령이 대화형 셸에서만 실행됩니다.

대화형 셸은 단순히 명령을 입력하고 해당 명령의 출력을 얻는 데 사용하는 셸 프로세스입니다. 즉, 상호작용하는 쉘입니다.

답변2

두 번째 문제는 tmux에도 있는 것 같습니다 osascript. 래퍼를 설치하여 문제를 해결할 수 있습니다.

당신은 설치하고 싶을 것입니다사용자 네임스페이스에 다시 연결Homebrew 또는 MacPorts를 통해 호출을 다음으로 래핑합니다 osascript.

reattach-to-user-namespace osascript  -e 'display notification "Hello, world"'

관련 정보