Synergy

From Dual-Boxing Wiki

Jump to: navigation, search

Contents

What is it?

Synergy lets you easily share a single mouse and keyboard between multiple computers with different operating systems, each with its own display, without special hardware. It's intended for users with multiple computers on their desk since each system uses its own monitor(s).

Redirecting the mouse and keyboard is as simple as moving the mouse off the edge of your screen. Synergy also merges the clipboards of all the systems into one, allowing cut-and-paste between systems. Furthermore, it synchronizes screen savers so they all start and stop together and, if screen locking is enabled, only one screen requires a password to unlock them all.


Setup & Configuration

The standard version of Synergy can be downloaded from the original Synergy website.

The Multibox version with key broadcasting is vailable from here

Client Mouse Look

If your mouse look is going berzerk on your clients, try the following configuration options.

  1. Edit synergy.sgc with a text editor. This file is typically in your My Documents folder on Windows.
  2. Add the following options in your existing options sections
    • This example uses the right mouse button. Change '3' to '1' for left mouse button, '2' for middle mouse button.
    • CAUTION: do not erase your current settings
  3. Save the file
  4. Right click on the Synergy icon on your taskbar and select 'Reload Configuration' (or (re-)start Synergy)
section: options
   relativeMouseMoves = true
   mousebutton(3) = mouseDown(3), lockCursorToScreen(on); mouseUp(3), lockCursorToScreen(off)
end

A couple source hacks to make the above work without centering mouse constantly

Hack the synergy source code to get better behavior in WoW(could help other games too; I just tested WoW and regular Windows apps like Outlook). Note that this change is to prevent centering of the mouse after every mouse click(which I found way too annoying to be usable).

In CServer.h, Add this line:

 SInt32 m_oldX, m_oldY;

CServer.cpp:

In CServer::handleLockCursorToScreenEvent, right after the log entry, add this:

 if(m_active != m_primaryClient && true == m_lockedToScreen)
 {
   m_oldX = m_x;
   m_oldY = m_y;
 }

In CServer::handleLockCursorToScreenEvent, right after the stopRelativeMoves if block:

 if(false == m_lockedToScreen && m_active != m_primaryClient)
 {
   m_x = m_oldX;
   m_y = m_oldY;
 }

In CServer::stopRelativeMoves, comment this line:

 // m_active->mouseMove(m_x, m_y);

NOTE: these source code changes have only been tested with Synergy 1.3.1 source on MS Windows client and server. Use at your own risk.


Another fix for crazy mice

Lock the cursor to a single screen and your mouse won't go crazy. Then you can toggle between the two screens use hotkeys.

  1. Add keybindings to assign keys to each monitor (F1 for monitor1, F2 for monitor 2).
  2. Then enable cursor locking on each screen using SCROLL LOCK key.
  3. Use above instructions on how to edit synergy.sgc.
section: options
   relativeMouseMoves = true
   keystroke(F1) = switchToScreen(screen1)
   keystroke(F2) = switchToScreen(screen2)
end

Useful Links

Personal tools