On Sun, Sep 5, 2010 at 6:06 AM, h.g. muller
<address@hidden> wrote:
XBoard and WinBoard have always had different key bindings upto
now.
But when they wil be unified in the cross-platform GTK branch, we figured
they should also have the same key bindings.
We decided to use the WinBoard bindings, for several reasons:
1) They were more complete, and more logical, as we had just given them a
go-over for the JAWS version
2) Normal letters (as opposed to Ctrl and Alt keystrokes) are not
acceptable, because they could be typed move input
So one of the patches I made in the master branch replace all the key
bindings of XBoard by the corresponding WinBoard keystroke.
I guess I might not have made the correspondng change in the docs
yet.
The arrows should still work, I think (and otherwise Alt+Left or
Alt+Right).
Things from the Action menu (Accept, Decline, Rematch) now all have
bindings to the function-keys.
Most primary menu items have Ctrl+letter (Ctrl-W = Machine White, etc.),
sometimes with standard binding (e.g. Ctrl-O = Load Game).
Commands for a position have the same keystroke as the corresponding
command for game, with Shift added.
Otherwise Ctrl+Shift+Letter directly toggle options from the General
Options dialog (which is still a main menu in XBoard), e.g. Ctrl+Shft+Q =
Always Queen,
and Alt+Shift+letter opens a menu dialog or auxiliary window (e.g.
Alt+Shift+E = Show Evaluation Graph).
Alt+Letter is reserved for the commands from the JAWS menu.
char globalTranslations[] =
":<Key>F9: ResignProc() \n \
:Ctrl<Key>n: ResetProc() \n \
:Meta<Key>V: NewVariantProc() \n \
:Ctrl<Key>o: LoadGameProc() \n \
:Meta<Key>Next: LoadNextGameProc() \n \
:Meta<Key>Prior: LoadPrevGameProc() \n \
:Ctrl<Key>s: SaveGameProc() \n \
:Ctrl<Key>c: CopyGameProc() \n \
:Ctrl<Key>v: PasteGameProc() \n \
:Ctrl<Key>O: LoadPositionProc() \n \
:Shift Meta<Key>Next: LoadNextPositionProc() \n
\
:Shift Meta<Key>Prior: LoadPrevPositionProc() \n
\
:Ctrl<Key>S: SavePositionProc() \n \
:Ctrl<Key>C: CopyPositionProc() \n \
:Ctrl<Key>V: PastePositionProc() \n \
:Ctrl<Key>q: QuitProc() \n \
:Ctrl<Key>w: MachineWhiteProc() \n \
:Ctrl<Key>b: MachineBlackProc() \n \
:Ctrl<Key>t: TwoMachinesProc() \n \
:Ctrl<Key>a: AnalysisModeProc() \n \
:Ctrl<Key>f: AnalyzeFileProc() \n \
:Ctrl<Key>e: EditGameProc() \n \
:Ctrl<Key>E: EditPositionProc() \n \
:Meta<Key>O: EngineOutputProc() \n \
:Meta<Key>E: EvalGraphProc() \n \
:Meta<Key>G: ShowGameListProc() \n \
:Meta<Key>H: ShowMoveListProc() \n \
:<Key>Pause: PauseProc() \n \
:<Key>F3: AcceptProc() \n \
:<Key>F4: DeclineProc() \n \
:<Key>F12: RematchProc() \n \
:<Key>F5: CallFlagProc() \n \
:<Key>F6: DrawProc() \n \
:<Key>F7: AdjournProc() \n \
:<Key>F8: AbortProc() \n \
:<Key>F10: StopObservingProc() \n \
:<Key>F11: StopExaminingProc() \n \
:Meta Ctrl<Key>F12: DebugProc() \n \
:Meta<Key>End: ToEndProc() \n \
:Meta<Key>Right: ForwardProc() \n \
:Meta<Key>Home: ToStartProc() \n \
:Meta<Key>Left: BackwardProc() \n \
:Ctrl<Key>m: MoveNowProc() \n \
:Ctrl<Key>x: RetractMoveProc() \n \
:Meta<Key>J: EngineMenuProc() \n \
:Meta<Key>U: UciMenuProc() \n \
:Meta<Key>T: TimeControlProc() \n \
:Ctrl<Key>Q: AlwaysQueenProc() \n \
:Ctrl<Key>F: AutoflagProc() \n \
:Ctrl<Key>A: AnimateMovingProc() \n \
:Ctrl<Key>P: PonderNextMoveProc() \n \
:Ctrl<Key>L: TestLegalityProc() \n \
:Ctrl<Key>H: HideThinkingProc() \n \
:<Key>-: Iconify() \n \
:<Key>F1: ManProc() \n \
:<Key>F2: FlipViewProc() \n \
<KeyDown>.: BackwardProc() \n \
<KeyUp>.: ForwardProc() \n \
Shift<Key>1: AskQuestionProc(\"Direct
command\",\
\"Send to chess program:\",,1) \n \
Shift<Key>2: AskQuestionProc(\"Direct
command\",\
\"Send to second chess program:\",,2) \n";