Thanks, h.g. muller :) As usual, your answer is exactly what I needed. For
some reason, it never occurred to me to try Meta instead of Ctrl as the
modifier. Works great!

Cheers,
Adrian

On Sun, Sep 5, 2010 at 6:06 AM, h.g. muller <[email protected]> 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";
>

Reply via email to