VirtualBindings man page on Ultrix

Man page or keyword search:  
man Server   3690 pages
apropos Keyword Search (all sections)
Output format
Ultrix logo
[printable version]

VirtualBindings(3X)		   OSF/Motif		   VirtualBindings(3X)

NAME
       VirtualBindings - Bindings for virtual mouse and key events

DESCRIPTION
       The  1/Motif  manual  pages  describe  translations in terms of virtual
       bindings, based on those described in the OSF/Motif Style Guide.	 Mouse
       events  are  described  in terms of virtual buttons, and key events are
       described in terms of virtual keys.  The term virtual implies that  the
       events  as  described do not necessarily correspond to a fixed set of X
       Window System events.  Instead, virtual buttons and keys are linked  to
       actual events by means of virtual bindings.

   Virtual Modifiers
       Both  virtual  buttons  and virtual keys may contain virtual modifiers.
       Each virtual modifier corresponds to one or more actual modifiers.  The
       following table lists the bindings of virtual modifiers to actual modi‐
       fiers in 1/Motif:

			      Virtual Modifier Bindings
			 Virtual Modifier   Actual Modifiers
			 ────────────────────────────────────
			 MAlt		    Mod1
			 MCopy		    Ctrl
			 MCtrl		    Ctrl
			 MLink		    Ctrl Shift
			 MMove		    Shift
			 MShift		    Shift

       Mod1 refers to the first modifier key.  1/Motif requires that it corre‐
       spond to either Alt or Meta.

       The  virtual modifier MAny indicates that any modifier can be used.  If
       MAny is not specified and the user presses an actual modifier  that  is
       not explicitly included in a translation, that modifier may prevent the
       translation from being matched.

   Virtual Buttons
       Each virtual button corresponds to one  or  more	 actual	 button	 event
       descriptions.  Each button event description contains a button name and
       possibly modifiers.  These  button  event  descriptions,	 appropriately
       ordered	and possibly further modified, are used in translation tables.
       The following table lists the bindings of  virtual  buttons  to	actual
       button event descriptions in 1/Motif:

			       Virtual Button Bindings
			Virtual Button	 Actual Button Events
			──────────────────────────────────────
			BCustom		 <Btn3>
			BDrag		 <Btn2>
			BExtend		 Shift<Btn1>
			BMenu		 <Btn3>
			BSelect		 <Btn1>
			BToggle		 Ctrl<Btn1>

   Virtual Keys
       Each  virtual  key corresponds to one or more actual key event descrip‐
       tions.  Each key event description contains a keysym name and  possibly
       modifiers.   These  key	event  descriptions, appropriately ordered and
       possibly further modified, are used in translation tables.  The follow‐
       ing  table  lists  the  bindings	 of  virtual  keys to actual key event
       descriptions in 1/Motif:

				Virtual Key Bindings
			─────────────────────────────────────
			Virtual Key    Actual Key Events
			─────────────────────────────────────
			KActivate      <Key>Return
				       Ctrl<Key>Return
				       <Key>osfActivate
			─────────────────────────────────────
			KAddMode       <Key>osfAddMode
			─────────────────────────────────────

			KBackSpace     <Key>osfBackSpace
			─────────────────────────────────────
			KBackTab       Shift<Key>Tab
			─────────────────────────────────────
			KBeginData     Ctrl<Key>osfBeginLine
			─────────────────────────────────────
			KBeginLine     <Key>osfBeginLine
			─────────────────────────────────────
			KCancel	       <Key>osfCancel
			─────────────────────────────────────
			KClear	       <Key>osfClear
			─────────────────────────────────────
			KCopy	       <Key>osfCopy
				       Ctrl<Key>osfInsert
			─────────────────────────────────────
			KCut	       <Key>osfCut
				       Shift<Key>osfDelete
			─────────────────────────────────────
			KDelete	       <Key>osfDelete
			─────────────────────────────────────
			KDeselectAll   Ctrl<Key>backslash
			─────────────────────────────────────
			KDown	       <Key>osfDown
			─────────────────────────────────────
			KEndData       Ctrl<Key>osfEndLine
			─────────────────────────────────────
			KEndLine       <Key>osfEndLine
			─────────────────────────────────────
			KEnter	       <Key>Return
			─────────────────────────────────────
			KEscape	       <Key>Escape
			─────────────────────────────────────
			KExtend	       Ctrl Shift<Key>space
				       Shift<Key>osfSelect
			─────────────────────────────────────
			KHelp	       <Key>osfHelp
			─────────────────────────────────────
			KInsert	       <Key>osfInsert
			─────────────────────────────────────

			  Virtual Key Bindings (Continued)
		      ─────────────────────────────────────────
		      Virtual Key     Actual Key Events
		      ─────────────────────────────────────────
		      KLeft	      <Key>osfLeft
		      ─────────────────────────────────────────
		      KMenu	      <Key>osfMenu
		      ─────────────────────────────────────────
		      KMenuBar	      <Key>osfMenuBar
		      ─────────────────────────────────────────
		      KNextField      <Key>Tab
				      Ctrl<Key>Tab
		      ─────────────────────────────────────────
		      KNextMenu	      Ctrl<Key>osfDown
				      Ctrl<Key>osfRight
		      ─────────────────────────────────────────
		      KPageDown	      <Key>osfPageDown
		      ─────────────────────────────────────────
		      KPageLeft	      Ctrl<Key>osfPageUp
				      <Key>osfPageLeft
		      ─────────────────────────────────────────
		      KPageRight      Ctrl<Key>osfPageDown
				      <Key>osfPageRight
		      ─────────────────────────────────────────
		      KPageUp	      <Key>osfPageUp
		      ─────────────────────────────────────────
		      KPaste	      <Key>osfPaste
				      Shift<Key>osfInsert
		      ─────────────────────────────────────────
		      KPrevField      Shift<Key>Tab
				      Ctrl Shift<Key>Tab
		      ─────────────────────────────────────────
		      KPrevMenu	      Ctrl<Key>osfUp
				      Ctrl<Key>osfLeft
		      ─────────────────────────────────────────
		      KPrimaryCopy    Ctrl<Key>osfPrimaryPaste
				      Mod1<Key>osfCopy
				      Mod1 Ctrl<Key>osfInsert
		      ─────────────────────────────────────────

		      KPrimaryCut     Mod1<Key>osfPrimaryPaste
				      Mod1<Key>osfCut
				      Mod1 Shift<Key>osfDelete
		      ─────────────────────────────────────────
		      KPrimaryPaste   <Key>osfPrimaryPaste
		      ─────────────────────────────────────────
		      KQuickCopy      Ctrl<Key>osfQuickPaste
		      ─────────────────────────────────────────
		      KQuickCut	      Mod1<Key>osfQuickPaste
		      ─────────────────────────────────────────
		      KQuickExtend    Shift<Key>osfQuickPaste
		      ─────────────────────────────────────────

			  Virtual Key Bindings (Continued)
		       ───────────────────────────────────────
		       Virtual Key   Actual Key Events
		       ───────────────────────────────────────
		       KQuickPaste   <Key>osfQuickPaste
		       ───────────────────────────────────────
		       KReselect     Ctrl Shift<Key>osfSelect
		       ───────────────────────────────────────
		       KRestore	     Ctrl Shift<Key>osfInsert
		       ───────────────────────────────────────
		       KRight	     <Key>osfRight
		       ───────────────────────────────────────
		       KSelect	     <Key>space
				     Ctrl<Key>space
				     <Key>osfSelect
		       ───────────────────────────────────────
		       KSelectAll    Ctrl<Key>slash
		       ───────────────────────────────────────
		       KSpace	     <Key>space
		       ───────────────────────────────────────
		       KTab	     <Key>Tab
		       ───────────────────────────────────────
		       KUndo	     <Key>osfUndo
				     Mod1<Key>osfBackSpace
		       ───────────────────────────────────────
		       KUp	     <Key>osfUp
		       ───────────────────────────────────────
		       KAny	     <Key>
		       ───────────────────────────────────────

   Bindings for osf Keysyms
       Keysym strings that begin with "osf" are not part  of  the  X  server's
       keyboard	 mapping.   Instead,  these keysyms are produced on the client
       side at run time.  They are interpreted by the routine  XmTranslateKey,
       and  are	 used  by  the translation manager when the server delivers an
       actual key event.   For	each  application,  a  mapping	is  maintained
       between "osf" keysyms and keysyms that correspond to actual keys.  This
       mapping is based on information obtained at  application	 startup  from
       one of the following sources, listed in order of precedence: A default‐
       VirtualBindings application resource in the resource database.  A prop‐
       erty  on the root window, which can be set by mwm on startup, or by the
       xmbind client, or on prior startup of a Motif  application.   The  file
       .motifbind  in  the  user's home directory.  A set of bindings based on
       the vendor string and optionally the vendor release of  the  X  server.
       Motif  searches	for these bindings in the following steps: If the file
       xmbind.alias exists in the user's home directory, Motif	searches  this
       file  for a pathname associated with the vendor string or with the ven‐
       dor string and vendor release.  If it finds such a pathname and if that
       file  exists,  Motif  loads the bindings contained in that file.	 If it
       has found no bindings, Motif next looks for the	file  xmbind.alias  in
       the  directory  specified  by  the  environment	variable XMBINDDIR, if
       XMBINDDIR is set, or in the directory /usr/lib/Xm/bindings if XMBINDDIR
       is not set.  If this file exists Motif searches it for a pathname asso‐
       ciated with the vendor string or with  the  vendor  string  and	vendor
       release.	  If  it  finds such a pathname and if that file exists, Motif
       loads the bindings contained in that file.  If it still	has  found  no
       bindings, Motif loads a set of hard-coded fallback bindings.

       The xmbind.alias file contains zero or more lines of the form:

       "vendor_string[ vendor_release]"bindings_file

       where  vendor_string  is	 the X server vendor name as returned by the X
       client xdpyinfo or the Xlib function XServerVendor, and must appear  in
       double  quotes.	If vendor_release is included, it is the X server ven‐
       dor release number as returned by the X client  xdpyinfo	 or  the  Xlib
       function	 XVendorRelease,  and must also be contained within the double
       quotes separated by one space from  vendor_string.   vendor_release  is
       provided	 to  allow support of changes in keyboard hardware from a ven‐
       dor, assuming that the vendor increments the  release  number  to  flag
       such changes.  Alternatively, the vendor may simply use a unique vendor
       string for each different keyboard.

       bindings_file is the pathname of the file containing the bindings them‐
       selves.	 It  can be a relative or absolute pathname.  If it is a rela‐
       tive pathname, it is relative to the location of the xmbind.alias file.

       Comment lines in the xmbind.alias file begin with !.

       The bindings found in either the .motifbind file or the vendor  mapping
       are  placed in a property on the root window.  This property is used to
       determine the bindings for subsequent Motif applications.

       On startup mwm attempts to load the file .motifbind in the user's  home
       directory.   If	this  is unsuccessful, it loads the vendor bindings as
       described above.	 It places the bindings it loads in a property on  the
       root window for use by subsequent Motif applications.

       xmbind loads bindings from a file if that file is specified on the com‐
       mand line.  If no file is specified on the command line, it attempts to
       load  the file .motifbind in the user's home directory.	If this fails,
       it loads the vendor bindings as described above.	 It places  the	 bind‐
       ings  it	 loads	in a property on the root window for use by subsequent
       Motif applications.

       The format of the specification for mapping  "osf"  keysyms  to	actual
       keysyms is similar to that of a specification for an event translation.
       The syntax is specified here in EBNF notation using the following  con‐
       ventions:

       [a]	 Means either nothing or a {a}	     Means zero or more occur‐
       rences of a

       Terminals are enclosed in double quotation marks.

       The syntax of an "osf" keysym binding specification is as follows:

       binding_spec   = {line "\n"} [line] line		  = virtual_keysym ":"
       key_event key_event	= {modifier_name} "<Key>" actual_keysym vir‐
       tual_keysym = keysym actual_keysym  = keysym keysym	   = A valid
       X11 keysym name that is			mapped by XStringToKeysym

       As  with event translations, more specific event descriptions must pre‐
       cede less specific descriptions.	 For example, an event description for
       a key with a modifier must precede a description for the same key with‐
       out the same modifier.

       Following is an example of a specification for the  defaultVirtualBind‐
       ings  resource in a resource file: *defaultVirtualBindings: \	  osf‐
       BackSpace   :	<Key>BackSpace\n\				osfIn‐
       sert	 :    <Key>InsertChar\n\				   ...
	    osfDelete	   :	<Key>DeleteChar

       The format of a .motifbind file or of a file containing vendor bindings
       is  the	same, except that the binding specification for each keysym is
       placed on a separate line.  The example specification above appears  as
       follows	  in	a   .motifbind	 or   vendor   bindings	  file:	  osf‐
       BackSpace   :	<Key>BackSpace osfInsert      :	   <Key>InsertChar ...
       osfDelete      :	   <Key>DeleteChar

       The following table lists the fixed fallback default bindings for "osf"
       keysyms:

		     Fallback Default Bindings for "osf" Keysyms
		     "osf" Keysym      Fallback Default Binding
		     ────────────────────────────────────────────
		     osfActivate       <unbound>
		     osfAddMode	       Shift F8
		     osfBackSpace      Backspace
		     osfBeginLine      Home
		     osfClear	       Clear
		     osfCopy	       <unbound>
		     osfCut	       <unbound>
		     osfDelete	       Delete
		     osfDown	       Down
		     osfEndLine	       End

		     osfCancel	       Escape
		     osfHelp	       F1
		     osfInsert	       Insert
		     osfLeft	       Left
		     osfMenu	       F4
		     osfMenuBar	       F10
		     osfPageDown       Next
		     osfPageLeft       <unbound>
		     osfPageRight      <unbound>
		     osfPageUp	       Prior
		     osfPaste	       <unbound>
		     osfPrimaryPaste   <unbound>
		     osfQuickPaste     <unbound>
		     osfRight	       Right
		     osfSelect	       Select
		     osfUndo	       Undo
		     osfUp	       Up

RELATED INFORMATION
       xmbind(1X)

							   VirtualBindings(3X)
[top]

List of man pages available for Ultrix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net