web-dev-qa-db-ja.com

Synergyホットキー:1つのボックスにそれらをファネリングする

Synergy(GUI)を使用していて、現在アクティブな画面に関係なく、1台のコンピューターの音量を変更する音量キーを作成しようとしています。 2つの画面があり、AとBと呼びます。簡単にするために、音量を上げるホットキーのみを参照します。どちらかを理解できれば、音量を下げると音量をミュートするのは簡単なはずです。

AまたはBのいずれかでF12を押すと、Bの音量を上げたいです。

私はいくつかのセットアップを試しました:

1)

On keystroke(F12):
   Switch to Screen B
   Send key VolumeUp

2)

On keystroke(F12):
   Switch to Screen B
   Send key F12

AHK Script defines F12 as hotkey VolumeUp On B

3)

Both of the above
Switch to Screen A

これらのどれも私が探している機能を私に与えてくれませんでした。多くの場合、音量は変化せず、画面も変化しません。実際、これらを設定すると、AHKスクリプトが機能しなくなることがありました。私の絶対に好ましい機能は次のとおりです。

On keystroke(F12):
  Determine which screen is currently active
  Make Screen B active if it isn't already
  Increase the system volume
  Return to the previously active screen

誰かがこれを機能させる方法について何かアドバイスがありますか?

==編集、詳細== AHKスクリプト:

F11::Send {Volume_Down 3} ; Lower the master volume by 3 interval (typically 5%)
Return

F12::Send {Volume_Up 3}  
Return

F10::Send {Volume_Mute} ; Mutes The system Volume
Return

繰り返しますが、このスクリプトはローカルでうまく機能することに注意してください。

Synergy Config:

section: screens
balthazar:
    halfDuplexCapsLock = false
    halfDuplexNumLock = false
    halfDuplexScrollLock = false
    xtestIsXineramaUnaware = false
    switchCorners = none 
    switchCornerSize = 0
midnight:
    halfDuplexCapsLock = false
    halfDuplexNumLock = false
    halfDuplexScrollLock = false
    xtestIsXineramaUnaware = false
    switchCorners = none 
    switchCornerSize = 0
end

section: aliases
end

section: links
balthazar:
    right = midnight
midnight:
    left = balthazar
end

section: options
relativeMouseMoves = false
screenSaverSync = true
win32KeepForeground = false
switchDelay = 10
switchCorners = none 
switchCornerSize = 0
keystroke(F11) = switchToScreen(midnight), keyDown(F11,midnight) ; keyUp(F11,midnight)
keystroke(F12) = switchToScreen(midnight), keyDown(F12,midnight) ; keyUp(F12,midnight)
keystroke(F10) = switchToScreen(midnight), keyDown(F10,midnight) ; keyUp(F10,midnight)
end

ご覧のとおり、私はホットキーをいじっています。私はこれがうまくいくとかなり確信していましたが、そうではありません:(

==編集、詳細==

さて、私が行ってきたいくつかのIRCチャットに基づいて、私はこの方法でアプローチすることにしました。クライアントは必要なキーを個別にAudioUpに変換する必要があり、SynergyはプッシュしますすべてのAudioUpコマンドは深夜まで。Synergyのホットキーは次のようになります。

keystroke(AudioUp) = keystroke(AudioUp,midnight)

それから、私はまだAHKをセットアップしています:

F12::Send {Volume_Up 3}

そして、私はそれがそれをすることを望んでいました。しかし、そうではありませんでした。ここでAHKが原因かどうかを調査します(多分Volume_Up!= AudioUp)

4
Cody S

基本的に2回目の試行であると言ったことを使用して、これを機能させることができたと言いたかっただけです。

これが私のために働いたので、あなたはおそらくAHKとSynergyと衝突していたでしょう:

メインコンピュータで音量を下げる/上げる再生/一時停止を押すと、他のPC(音楽を再生しているPC)に影響を与えたいです。

    keystroke(AudioDown,PC1) = keystroke(AudioDown,PC2)
    keystroke(AudioUp,PC1) = keystroke(AudioUp,PC2)
    keystroke(AudioNext,PC1) = keystroke(AudioNext,PC2)
    keystroke(AudioPrev,PC1) = keystroke(AudioPrev,PC2)

私のアドバイスは、構成ファイルを保存してから、保存したファイルを開いて編集することです。

これが私の完全な設定ファイルです:

section: screens
PC1:
    halfDuplexCapsLock = false
    halfDuplexNumLock = false
    halfDuplexScrollLock = false
    xtestIsXineramaUnaware = false
    switchCorners = none 
    switchCornerSize = 0
PC2:
    halfDuplexCapsLock = false
    halfDuplexNumLock = false
    halfDuplexScrollLock = false
    xtestIsXineramaUnaware = false
    switchCorners = none 
    switchCornerSize = 0
end

section: aliases
end

section: links
PC1:
    right = PC2
PC2:
    left = PC1
end

section: options
    keystroke(AudioDown,PC1) = keystroke(AudioDown,PC2)
    keystroke(AudioUp,PC1) = keystroke(AudioUp,PC2)
    keystroke(AudioNext,PC1) = keystroke(AudioNext,PC2)
    keystroke(AudioPrev,PC1) = keystroke(AudioPrev,PC2)
    relativeMouseMoves = false
    screenSaverSync = true
    win32KeepForeground = false
    switchCorners = none 
    switchCornerSize = 0
 end
1
user1274820