Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
x2x(1)			    General Commands Manual			x2x(1)

NAME
       x2x - X to X connection

SYNTAX
	x2x  <[-to <DISPLAY>] |	[-fromwin | -from <DISPLAY>]> [options...]

DESCRIPTION
       x2x  allows the keyboard	and mouse on one ("from") X display to be used
       to control another ("to") X display.  Since x2x uses the	 XTEST	exten-
       sion, the "to" X	display	must support XTEST.

       If  x2x	is built under Cygwin (on Windows XP or	Windows	2000) then the
       -fromwin	option may be specified	to allow the "from" display to be  the
       Windows	desktop.  (The	Cygwin build also supports use of an X display
       for the "from" screen). Use of -fromwin sets the	default	 behaviour  as
       if the -big -west -capslockhack options had also	been given.

       In  the	default	 interface,  x2x  puts a window	on the "from" display.
       This window is labeled with the name of the "to"	 display.   Keystrokes
       typed  into  this  window go to the window on the "to" display that has
       the input focus.	 Clicking on the x2x window causes the	mouse  on  the
       "from" display to control the cursor on the "to"	display.  Performing a
       subsequent multiple button click	on the "to" display returns control to
       the "from" display.

       If  the	-fromwin, -north, -south, -east	or -west options are specified
       on the command line, x2x	starts up with a  different  interface.	  When
       the  mouse  moves to the	top, bottom, east side or west side of the de-
       fault screen on the "from" display, the cursor slides over to the  "to"
       display.	 When the mouse	returns	to to side of the "to" display that it
       entered,	it slides back onto the	"from" display.

       Unless the -nosel option	is specified, x2x relays X selections from one
       display to the other. (If -fromwin is specified then the	X selection is
       relayed to and from the Windows clipboard as text strings).

       Here are	a few hints  for  eXcursion  users  (based  on	Intel  version
       2.1.309).   First,  use the -big	option.	 Second, in the	control	panel,
       under mouse, check the box that enables "Automatically Capture Text  on
       Button Up."  X selections will then automatically move into the Windows
       clipboard.  As is the case with all X applications running  on  2.1.309
       (including  x2x),  you  will need to do an extra	mouse click after per-
       forming the X selection for this	operation to work.  x2x	 is  known  to
       work  poorly  with eXcursion running on Windows 95, probably due	to the
       Windows 95 task scheduler.  x2x does work well with  eXcursion  running
       on Windows NT.

       The  hints  for eXcursion are also valid	for Exceed, with the exception
       that X selections work better, as long as you  are  using  x2x  version
       1.25 or later.

OPTIONS
       Either the -to option or	the -from option (or both) must	be specified.

       -to display

	      Indicates	 the ("to") display that is remotely controlled	by the
	      "from" display.  Default is equivalent to	the default display.

       -from display

	      Indicates	the ("from") display that remotely controls  the  "to"
	      display.	Default	is equivalent to the default display.

       -fromwin

	      Available	 when x2x is built in the Cygwin environment. This op-
	      tion indicates the ("from") display should be the	Windows	 desk-
	      top.  In	this  case the "to" display must be specified with the
	      -to option. Setting this option forces -big and sets the default
	      to -west -capslockhack

	      The  -fromwin  option  works best	when Windows is	configured for
	      focus-follows-mouse also known as	X Mouse. This can be set using
	      TweakUI  for  Windows  XP	 (on  the  Mouse/X-Mouse panel)	or the
	      XMouse2000 program for Windows 2000. If Windows is set  for  its
	      default behaviour	x2x will attempt to get	the keyboard and mouse
	      focus but	may not	succeed. (The Windows XP TweakUI  has  a  Gen-
	      eral/Focus option	that can be unchecked to allow applications to
	      steal the	focus.)	If it fails the	first  try,  x2x  tries	 quite
	      hard to get the focus!

	      If  the  "to"  display supports mouse buttons 4 and 5 then mouse
	      wheel events on the Windows side are  translated	to  clicks  of
	      buttons  4  and  5  on  the X display. This matches with XFree86
	      servers using Option "ZAxisMapping" "4 5".

	      A	link may be created on the  Windows  desktop  to  conveniently
	      launch  x2x.  Assuming  cygwin  is  installed  to	 C:\cygwin and
	      x2x.exe is in /usr/X11R6/bin then	the link properties should  be
	      set to:

	      Target:
	      C:\cyg-
	      win\usr\X11R6\bin\run.exe	/usr/X11R6/bin/x2x -fromwin -to	some-
	      where:0.0	-east

	      Start In:	C:\cygwin\usr\X11R6\bin

	      The  "Start  In"	option is important to allow DLLs to be	loaded
	      and C:\cygwin\bin	must be	on the Windows	PATH  to  allow	 other
	      DLLs  to be loaded. (If either of	these are incorrect, launching
	      the application tends to silently	fail.)

	      There are	two magic key combinations activated by	-fromwin:

	      RightAlt-Home: Forces the	focus back to Windows without  needing
	      the mouse	to be moved. Useful when some popup window on the Win-
	      dows side	grabs the mouse!

	      RightAlt-End: Exit x2x

       -north

	      Slide off	the north side of the "to"  display  onto  the	"from"
	      display.

       -south

	      Slide  off  the  south  side of the "to" display onto the	"from"
	      display.

       -east

	      Slide off	the east side of the "to" display onto the "from" dis-
	      play.

       -west

	      Slide off	the west side of the "to" display onto the "from" dis-
	      play.

       -font fontname

	      The font used in the x2x window. (Overridden by -east or -west.)

       -geometry specification

	      The X geometry specification for the x2x window.	(Overridden by
	      -north, -south, -east or -west.)

       -wait

	      Tells  x2x to poll the "to" and "from" displays at startup until
	      they are ready.  Useful for login	scripts.

       -big

	      Workaround for a bug in the cursor grab  implementations	of  at
	      least one	X server.  Put a big window over the "from" display in
	      order to force the X server to track the cursor. (This option is
	      forced by	the -fromwin option).

       -buttonblock

	      If  this	option is enabled with -north, -south, -east or	-west,
	      the cursor will not slide	back onto the "from" display when  one
	      or more mouse buttons are	pressed.

       -buttonmap button# "KeySym ..."

	      Map  a  mouse  button to one or more keyboard events on the "to"
	      display.	This is	useful if you have a mouse with	 more  buttons
	      than the remote X	server can handle (e.g.	a wheel	mouse on a PC,
	      merged with a Sun/Sparc OpenWindows display).

       -nomouse

	      Don't capture the	mouse.	(Overridden by -north,	-south,	 -east
	      or -west.)

       -nopointermap

	      Since  x2x  uses	XTEST, which sends input at a lower level than
	      the pointer button mapping, x2x needs  to	 understand  the  "to"
	      display's	 button	 mapping  and  do appropriate conversion.  Use
	      this option to turn off the pointer button conversion.

       -nosel

	      Don't relay the X	selection between displays.

       -noautoup

	      Normally,	the autoup feature in x2x automatically	lifts  up  all
	      keys  and	 mouse	buttons	 when  it  removes the cursor from the
	      "from" display.  Note: the autoup	feature	changes	the  state  of
	      lock  functions  like Caps Lock.	The state of the lock function
	      may not correspond to the	state of the keyboard LEDs!   To  dis-
	      able this	feature, use the -noautoup command line	option.

       -resurface

	      Ugly  hack  to work-around window	manager	ugliness.  The -north,
	      -south, -east and	-west modes actually put a small window	on the
	      side  of	the "from" display.  This option causes	this window to
	      resurface	itself if another window ever obscures it.   This  op-
	      tion  can	 cause	really	nasty  behavior	if another application
	      tries to do the same thing.  Useful for login scripts.

       -win-output

	      Makes the	small window ("trigger window")	on  the	 side  of  the
	      "from"  display  an  InputOutput	window instead of an InputOnly
	      window. Visibility notification events are never	generated  for
	      InputOnly	 window, therefore -resurface would not	work for Inpu-
	      tOnly window. Use	-win-output together with -resurface.

       -win-transparent

	      Makes the	small window ("trigger window")	transparent. Use  with
	      -win-output option.

       -struts

	      Advertise	struts in _NET_WM_STRUT

	      Once  upon  a  time, the trigger window was a regular window and
	      could be arbitrarily stacked. If obscured	it would stop working.
	      Later  the trigger window	became a dock, to be treated specially
	      by the window manager. The EWMH spec suggests placing docks over
	      all  other windows... but	some window managers place docks below
	      before unmapping them. XMonad is one  such  window  manager.  In
	      this  case  we  would  like to advertise struts -	reserved space
	      along screen edges that is not normally obscured.	 However  this
	      should  not happen if the	dock is	already	above all windows. And
	      thus  the	 new  '-struts'	 settings  is  born,  which  uses  the
	      '_NET_WM_STRUT' property.

	      Note that	this is	a less hacky alternative to '-resurface'.

       -capslockhack

	      Ugly hack	to work-around the situation in	which the "to" Xserver
	      doesn't seem to honor the	state of the CapsLock  on  the	"from"
	      Xserver.	This  is the default when the -fromwin option is given
	      (although	the hack used is slightly less ugly).

       -nocapslockhack

	      Disable the -capslockhack	behaviour. Used	to change the  default
	      behaviour	after the -fromwin option is specified.

       -clipcheck

	      Check that clipboard entries are regular strings (XA_STRING) be-
	      fore forwarding to Windows. Enabling this	is safer but may  pre-
	      vent   copying   with   certain  setups  (eg  from  emacs	 under
	      KDE/XFree).

       -shadow display

	      Also sends mouse movements and keystrokes	to this	display.  Use-
	      ful for demos.  Amaze your friends: specify multiple shadows.

       -sticky sticky-key

	      This  option  is primarily for "lock" keys like Caps_Lock.  If a
	      lock key only seems to work on every other press,	try  this  op-
	      tion.   The sticky option	prevents autoup	for the	specified key.
	      Look in /usr/include/X11/keysymdef.h for a list of  valid	 names
	      of keys (remove the leading XK_).

       -singlesticky

	      Some X servers generate both a key down and a key	up when	a lock
	      key is toggled.  Some X servers generate a key down when a  lock
	      key is activated and a key up only when it is deactivated.  This
	      option will allow	an X server with the former behavior  to  con-
	      trol  one	 with the latter behavior.  Use	this if	Caps_Lock lock
	      is behaving like shift.

       -label label

	      Override the label of the	control	window	(useful	 when  running
	      over  ssh).   The	label is the text displayed within the control
	      window.

       -title title

	      Override the title of the	control	window	(useful	 when  running
	      over ssh).

       -copyright

	      Prints the full copyright	for the	x2x code.

       -noscale

	      This option turns	off the	mouse scaling.	In some	circumstances,
	      the remote screen	is so different	in physical size or resolution
	      that  the	normal mouse scaling applied by	x2x distorts the mouse
	      movement so much as to be	practially unusable.   Note:  this  is
	      only  useful  if	the remote screen is lower resolution than the
	      local screen and also causes the remote mouse  pointer  to  warp
	      around when it hits the edges.

       -completeregionleft

	      Describes	 leftmost  coordinate  of complete rectangle region in
	      from-display.  If	from-display is	configured with	multiple moni-
	      tors  and	 they have different resolution, few regions that does
	      not belongs to any monitor becomes dead space that mouse	cannot
	      move in.	In the case, the dead space can	be mapped to legal re-
	      gion of to-display.  If complete region in from-display is spec-
	      ified, X2X maps only complete region to to-display and avoid the
	      dead, but	legal regions.

       -completeregionright

	      Describes	rightmost coordinate of	complete rectangle  region  in
	      from-display.

       -completeregionup

	      Describes	 uppermost  coordinate of complete rectangle region in
	      from-display.

       -completeregionlow

	      Describes	lowermost coordinate of	complete rectangle  region  in
	      from-display.

EXAMPLES
       Calling the system whose	keyboard is to be used "primary" and the other
       system "secondary", you need to specify either -from  primary-x-display
       or  -to secondary-x-display.  The x2x program can be run	on either sys-
       tem.  The easiest way to	maintain security is to	tunnel an X connection
       over  ssh.   Since x2x can be run on either computer, it	can be invoked
       in either of the	following ways,	where we assume	the local  display  on
       each system is :0.

       run indirectly on secondary:

	      primary $	ssh -X secondary x2x -to :0 -east

       run indirectly on primary:

	      secondary	$ ssh -X primary x2x -from :0 -west

       run directly indirectly on primary:

	      primary  $  ssh -A secondary env DISPLAY=:0.0 ssh	-X primary x2x
	      -from :0 -east

SEE ALSO
       The synergy program <http://synergy-project.org>	has similar  function-
       ality  to  that	of x2x,	supports multiple platforms, and when I	try to
       use it my X session crashes.

       There is	a nice Linux Journal article on	x2x <http://
       www.linuxjournal.com/content/share-keyboardmouse-between-multiple-com-
       puters-x2x>.

AUTHOR
       David Chaiken <chaiken@pa.dec.com>
       Mark Hayter (-fromwin code, thanks to the WinVNC	sources)
       Addition	 of  -north  and  -south  options  by  Charles	 Briscoe-Smith
       <cpbs@debian.org>.
       Current maintaner is Mikhail Gusarov <dottedmag@dottedmag.net>

BUGS
       This software is	experimental!  Heaven help you if your network connec-
       tion should go down.  Caveat hacker.  TANSTAAFL.

       The x2x repository and issue tracker  <http://github.com/dottedmag/x2x>
       has moved to github.

       When  using the -fromwin	option if the Ctrl-Alt-Del keysequence is used
       while the mouse is forwarded to the X display then the Ctrl and Alt key
       press  events are reported to x2x and forwarded but no other key	events
       are generated. Thus if the Ctrl-Alt-Del sequence	is  used  to  manually
       lock  the  Windows  display when	the display is unlocked	the mouse will
       still be	forwarded to the X screen and the X server will	 believe  Ctrl
       and  Alt	 are still pressed. Pressing and releasing Ctrl	and Alt	should
       restore correct operation, as should returning the mouse	to the Windows
       display (or using the RightAlt-Home magic key sequence).

       If you have trouble with	some keys not working, try setting the keymaps
       on both systems to be the same using setxkbmap.	If that's not  enough,
       make  sure that the output of setxkbmap -query is identical on both ma-
       chines.

LAWYERESE
       Copyright (c) 1997 Digital Equipment Corporation.  All rights reserved.

       By downloading, installing, using, modifying or distributing this soft-
       ware, you agree to the following:

       1.  CONDITIONS.	Subject	to the following conditions, you may download,
       install,	use, modify and	distribute this	software in source and	binary
       forms:

       a) Any source code, binary code and associated documentation (including
       the online manual) used,	modified or distributed	must reproduce and re-
       tain  the  above	copyright notice, this list of conditions and the fol-
       lowing disclaimer.

       b) No right is granted to use any trade name, trademark or logo of Dig-
       ital  Equipment	Corporation.   Neither the "Digital Equipment Corpora-
       tion" name nor any trademark or logo of Digital	Equipment  Corporation
       may  be	used to	endorse	or promote products derived from this software
       without the prior written permission of Digital Equipment Corporation.

       2.  DISCLAIMER.	THIS SOFTWARE IS PROVIDED BY DIGITAL "AS IS"  AND  ANY
       EXPRESS	OR  IMPLIED WARRANTIES,	INCLUDING, BUT NOT LIMITED TO, THE IM-
       PLIED WARRANTIES	OF MERCHANTABILITY AND FITNESS FOR A  PARTICULAR  PUR-
       POSE ARE	DISCLAIMED.IN NO EVENT SHALL DIGITAL BE	LIABLE FOR ANY DIRECT,
       INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (IN-
       CLUDING,	 BUT  NOT  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SER-
       VICES; LOSS OF USE, DATA, OR PROFITS; OR	BUSINESS INTERRUPTION) HOWEVER
       CAUSED AND ON ANY THEORY	OF LIABILITY, WHETHER IN CONTRACT, STRICT LIA-
       BILITY, OR TORT (INCLUDING NEGLIGENCE OR	OTHERWISE) ARISING IN ANY  WAY
       OUT  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE	POSSIBILITY OF
       SUCH DAMAGE.

       Windows 95 and Windows NT are trademarks	of Microsoft Corporation.
       Exceed is a trademark of	Hummingbird Communications Ltd.

									x2x(1)

NAME | SYNTAX | DESCRIPTION | OPTIONS | EXAMPLES | SEE ALSO | AUTHOR | BUGS | LAWYERESE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=x2x&sektion=1&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help