Steam 내에서 게임 시작 시 HUD 단축키를 자동으로 비활성화하고 게임 종료 시 다시 활성화하려면 어떻게 해야 합니까?

Steam 내에서 게임 시작 시 HUD 단축키를 자동으로 비활성화하고 게임 종료 시 다시 활성화하려면 어떻게 해야 합니까?

나는 보았다이 질문하지만 자동으로 이루어지는 것은 없습니다. 게임을 시작하고 중지할 때마다 GUI를 열고 설정을 조작하려고 하지 않습니다.

Steam에서는 게임의 시작 옵션을 편집할 수 있습니다. 예를 들어 저는 Bumblebee를 사용하여 primusrun %command%시작 옵션을 추가하여 노트북의 NVIDIA 카드를 활성화합니다 . 여기서 우리는 게임플레이 도중 HUD 핫키 버튼을 비활성화하고 나중에 다시 활성화하기 위해 시작 및 종료 스크립트(또는 일부 명령을 함께 연결)를 호출할 수 있어야 합니다. 아마도 라인을 따라 뭔가 launchscript ; %command% ; endscript.

즉, HUD 단축키를 활성화 및 비활성화하려면 명령줄 방식이 필요합니다.이 답변CLI 방법을 보여줍니다. 이것을 시도했는데 터미널에서는 작동하지만 Steam 내의 실행 옵션을 통해 호출하려고 하면 작동하지 않습니다. 시도할 때 bash -c구분 기호에 문제가 발생했지만 대신 gsettings를 사용하여 해결되었습니다.

다음을 모두 시도했지만 성공하지 못했습니다.

dconf write /org/compiz/integrated/show-hud '[""]' ; primusrun %command%

bash -c 'dconf write /org/compiz/integrated/show-hud '[""]'' ; primusrun %command%

bash -c 'dconf write /org/compiz/integrated/show-hud '[""]' ; primusrun %command%'

bash -c "dconf write /org/compiz/integrated/show-hud '[""]' ; primusrun %command%"

또한 dconf 대신 gsettings를 사용해 보았습니다. 예 bash -c 'gsettings set org.compiz.integrated show-hud '[""]'' ; primusrun %command%를 들어 터미널에서는 작동하지만 시작 옵션에서는 작동하지 않습니다.

구문 문제가 발생했다고 확신합니다. 이 문제가 제대로 작동하도록 하려면 어떻게 해야 합니까?

답변1

스크립트 만들기노후룬같은프리머스런수행:

#!/bin/sh

old_key="$(LD_LIBRARY_PATH=/usr/lib dconf read /org/compiz/integrated/show-hud)"
LD_LIBRARY_PATH=/usr/lib dconf write /org/compiz/integrated/show-hud "['']" 
"$@"
LD_LIBRARY_PATH=/usr/lib dconf write /org/compiz/integrated/show-hud "$old_key"

그리고 다음과 같이 호출합니다.

nohudrun primusrun %command%

LD_LIBRARY_PATH=/usr/lib는 Steam의 x32 환경에서 벗어나기 위한 것입니다. dconf가 x64 libs를 찾을 수 없기 때문입니다(더 나은 방법이 있을 수도 있습니다). 그것이 '실행 옵션'에서 실패하는 원인이라고 생각합니다.

여러 게임이 해당 스크립트를 통해 실행될 때 키 바인딩을 올바르게 복원할 수 있도록 일부 잠금을 추가할 수도 있습니다.

추신무엇이 잘못되었는지 어떻게 알 수 있나요? stderr를 파일로 인쇄하십시오.

dconf write /org/compiz/integrated/show-hud "['']" 2>>/home/velkan/errr

관련 정보