Blame data/keymaps/atari/atari-de.map

Packit Service 50ad14
#           Keyboard Mapping for Atari Keyboards, German Layout
Packit Service 50ad14
#           ---------------------------------------------------
Packit Service 50ad14
#
Packit Service 50ad14
# Copyright 1994 Roman Hodek
Packit Service 50ad14
#
Packit Service 50ad14
# This file is subject to the terms and conditions of the GNU General Public
Packit Service 50ad14
# License.  See the file README.legal in the main directory of this archive
Packit Service 50ad14
# for more details.
Packit Service 50ad14
#
Packit Service 50ad14
# Notes:
Packit Service 50ad14
# ------
Packit Service 50ad14
#
Packit Service 50ad14
# This file assumes that the currently active mapping is the Atari default
Packit Service 50ad14
# mapping (US layout) in my version as found in drivers/char/defkeymap.c
Packit Service 50ad14
# (conditionalized to machine type). Only the necessary alternations are
Packit Service 50ad14
# done!
Packit Service 50ad14
#
Packit Service 50ad14
# Dead keys (i.e. pressing ^ and e gives œ, an e with hat) are not
Packit Service 50ad14
# used, because I consider this annoying. All characters needed for 
Packit Service 50ad14
# German are possible without deadkeys. If you want them, apply the following
Packit Service 50ad14
# replacements:
Packit Service 50ad14
#   grave       -> dead_grave
Packit Service 50ad14
#   apostrophe  -> dead_acute
Packit Service 50ad14
#   asciicircum -> dead_circumflex
Packit Service 50ad14
#   asciitelde  -> dead_tilde
Packit Service 50ad14
#
Packit Service 50ad14
# Lines commented out by '!' are settings that are done implicitly by
Packit Service 50ad14
# loadkeys.
Packit Service 50ad14
#
Packit Service 50ad14
# There is no natural way to generate Meta codes for the characters [,],{,},
Packit Service 50ad14
# @ and \, that already need Alt to be pressed together with one of the 
Packit Service 50ad14
# umlaut keys. I've choosen the following scheme, though it may not be
Packit Service 50ad14
# very intuitive in all cases (who knows a better solution??):
Packit Service 50ad14
# 1) The key with Alt (and maybe shift) gives the character engraved to the
Packit Service 50ad14
#    right (i.e. [,@,\,...)
Packit Service 50ad14
# 2) The key with Control (and maybe shift) gives the control character
Packit Service 50ad14
#    corresponding the the character engraved to the _right_, if one exists.
Packit Service 50ad14
#    This happens because the umlaut characters have no corresponding control
Packit Service 50ad14
#	 character anyway.
Packit Service 50ad14
# 3) The key with Control and Alt (and maybe shift) gives the Meta equivalent
Packit Service 50ad14
#    (with 8. bit set or prepended by ESC) of the character engraved to the
Packit Service 50ad14
#	 right. Again, Meta's of the umlaut characters do not exist, since they
Packit Service 50ad14
#	 already have their 8. bit set.
Packit Service 50ad14
# One could argue that it would be more consistent to require Alt and Control
Packit Service 50ad14
# to be pressed to get the control characters (case 2). That's true, but in
Packit Service 50ad14
# my opinion, it is even more inconsistent to generate Meta codes without the
Packit Service 50ad14
# Alt key pressed (but just with Control). And it would be very bad, if the
Packit Service 50ad14
# Meta versions of [,{,@,... could not be typed at all!
Packit Service 50ad14
#
Packit Service 50ad14
# I've kept the convention that the digit keys 2..8 on the main keyboard
Packit Service 50ad14
# generate the control characters not corresponding to letters (^@, ^[ .. ^_
Packit Service 50ad14
# and ^?=DEL) when pressed with Control. It is convention, too, that the shift
Packit Service 50ad14
# key must not be pressed for this effect. Also, Meta+Control plus these keys
Packit Service 50ad14
# give the Metas of these controls.
Packit Service 50ad14
#
Packit Service 50ad14
# The standard loadkeys (at least the version I have) doesn't understand the
Packit Service 50ad14
# combination of Meta and Control in symbolic names (i.e. Meta_Control_a is
Packit Service 50ad14
# invalid, but some names like Meta_Backspace or Meta_Tab are). For this
Packit Service 50ad14
# reason, I replaced the offending names by their numeric equivalent. This
Packit Service 50ad14
# depends on KT_META being 8!
Packit Service 50ad14
#
Packit Service 50ad14
# The umlaut keys cannot be set via ?diaeresis, because this would make them
Packit Service 50ad14
# to be of type KT_LATIN1, and they should be type KT_LETTER to be affected
Packit Service 50ad14
# by CAPSLOCK. Their definition is thus in hex :-(
Packit Service 50ad14
#
Packit Service 50ad14
Packit Service 50ad14
keycode   2 = one exclam
Packit Service 50ad14
!	control       keycode   2 = VoidSymbol
Packit Service 50ad14
!	shift control keycode   2 = VoidSymbol
Packit Service 50ad14
    alt           keycode   2 = Meta_one
Packit Service 50ad14
	shift alt     keycode   2 = Meta_exclam
Packit Service 50ad14
Packit Service 50ad14
keycode   3 = two quotedbl
Packit Service 50ad14
	control       keycode   3 = nul # = Control_at
Packit Service 50ad14
!	shift control keycode   3 = VoidSymbol
Packit Service 50ad14
    alt           keycode   3 = Meta_two
Packit Service 50ad14
	shift alt     keycode   3 = Meta_quotedbl
Packit Service 50ad14
	alt control   keycode   3 = 0x0800 # Meta_Control_at
Packit Service 50ad14
Packit Service 50ad14
keycode   4 = three section
Packit Service 50ad14
	control       keycode   4 = Escape # = Control_bracketleft
Packit Service 50ad14
!	shift control keycode   4 = VoidSymbol
Packit Service 50ad14
    alt           keycode   4 = Meta_three
Packit Service 50ad14
!	shift alt     keycode   4 = VoidSymbol  # already has 8. bit set!
Packit Service 50ad14
	alt control   keycode   4 = Meta_Escape # = Meta_Control_bracketleft
Packit Service 50ad14
Packit Service 50ad14
keycode   5 = four dollar
Packit Service 50ad14
	control       keycode   5 = Control_backslash
Packit Service 50ad14
!	shift control keycode   5 = VoidSymbol
Packit Service 50ad14
    alt           keycode   5 = Meta_four
Packit Service 50ad14
	shift alt     keycode   5 = Meta_dollar
Packit Service 50ad14
	alt control   keycode   5 = 0x081c # Meta_Control_backslash
Packit Service 50ad14
Packit Service 50ad14
keycode   6 = five percent
Packit Service 50ad14
	control       keycode   6 = Control_bracketright
Packit Service 50ad14
!	shift control keycode   6 = VoidSymbol
Packit Service 50ad14
    alt           keycode   6 = Meta_five
Packit Service 50ad14
	shift alt     keycode   6 = Meta_percent
Packit Service 50ad14
	alt control   keycode   6 = 0x081d # Meta_Control_bracketright
Packit Service 50ad14
Packit Service 50ad14
keycode   7 = six ampersand
Packit Service 50ad14
	control       keycode   7 = Control_asciicircum
Packit Service 50ad14
!	shift control keycode   7 = VoidSymbol
Packit Service 50ad14
    alt           keycode   7 = Meta_six
Packit Service 50ad14
	shift alt     keycode   7 = Meta_ampersand
Packit Service 50ad14
	alt control   keycode   7 = 0x081e # Meta_Control_asciicircum
Packit Service 50ad14
Packit Service 50ad14
keycode   8 = seven slash
Packit Service 50ad14
	control       keycode   8 = Control_underscore
Packit Service 50ad14
!	shift control keycode   8 = VoidSymbol
Packit Service 50ad14
    alt           keycode   8 = Meta_seven
Packit Service 50ad14
	shift alt     keycode   8 = Meta_slash
Packit Service 50ad14
	alt control   keycode   8 = 0x081f # Meta_Control_underscore
Packit Service 50ad14
Packit Service 50ad14
keycode   9 = eight parenleft
Packit Service 50ad14
	control       keycode   9 = Delete
Packit Service 50ad14
!	shift control keycode   9 = VoidSymbol
Packit Service 50ad14
    alt           keycode   9 = Meta_eight
Packit Service 50ad14
	shift alt     keycode   9 = Meta_parenleft
Packit Service 50ad14
	alt control   keycode   9 = Meta_Delete
Packit Service 50ad14
Packit Service 50ad14
keycode  10 = nine parenright
Packit Service 50ad14
!	control       keycode  10 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  10 = VoidSymbol
Packit Service 50ad14
    alt           keycode  10 = Meta_nine
Packit Service 50ad14
	shift alt     keycode  10 = Meta_parenright
Packit Service 50ad14
Packit Service 50ad14
keycode  11 = zero equal
Packit Service 50ad14
!	control       keycode  11 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  11 = VoidSymbol
Packit Service 50ad14
    alt           keycode  11 = Meta_zero
Packit Service 50ad14
	shift alt     keycode  11 = Meta_equal
Packit Service 50ad14
Packit Service 50ad14
keycode  12 = ssharp question
Packit Service 50ad14
!	control       keycode  12 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  12 = VoidSymbol
Packit Service 50ad14
!	alt           keycode  12 = VoidSymbol  # already has 8. bit set!
Packit Service 50ad14
	shift alt     keycode  12 = Meta_question
Packit Service 50ad14
Packit Service 50ad14
keycode  13 = apostrophe grave
Packit Service 50ad14
!	control       keycode  13 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  13 = VoidSymbol
Packit Service 50ad14
    alt           keycode  13 = Meta_apostrophe
Packit Service 50ad14
	shift alt     keycode  13 = Meta_grave
Packit Service 50ad14
Packit Service 50ad14
keycode  14 = Delete Delete
Packit Service 50ad14
	control       keycode  14 = Delete
Packit Service 50ad14
	control shift keycode  14 = Delete
Packit Service 50ad14
	alt           keycode  14 = Meta_Delete
Packit Service 50ad14
	alt shift     keycode  14 = Meta_Delete
Packit Service 50ad14
	alt control   keycode  14 = Meta_Delete
Packit Service 50ad14
	alt control shift keycode  14 = Meta_Delete
Packit Service 50ad14
Packit Service 50ad14
keycode  21 = z
Packit Service 50ad14
	# rest done by loadkeys!
Packit Service 50ad14
Packit Service 50ad14
keycode  26 = 0x0bfc 0x0bdc # udiaeresis Udiaeresis with type KT_LETTER
Packit Service 50ad14
	control       keycode  26 = nul # = Control_at
Packit Service 50ad14
	shift control keycode  26 = Control_backslash
Packit Service 50ad14
    alt           keycode  26 = at
Packit Service 50ad14
	shift alt     keycode  26 = backslash
Packit Service 50ad14
	# Who knows a better way to implement these?
Packit Service 50ad14
	alt control       keycode  26 = Meta_at
Packit Service 50ad14
	shift alt control keycode  26 = Meta_backslash
Packit Service 50ad14
Packit Service 50ad14
keycode  27 = plus asterisk
Packit Service 50ad14
!	control       keycode  27 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  27 = VoidSymbol
Packit Service 50ad14
    alt           keycode  27 = Meta_plus 
Packit Service 50ad14
	shift alt     keycode  27 = Meta_asterisk
Packit Service 50ad14
Packit Service 50ad14
keycode  39 = 0x0bf6 0x0bd6 # odiaeresis Odiaeresis with type KT_LETTER
Packit Service 50ad14
	control       keycode  39 = Escape # = Control_bracketleft
Packit Service 50ad14
!	shift control keycode  39 = VoidSymbol
Packit Service 50ad14
    alt           keycode  39 = bracketleft
Packit Service 50ad14
	shift alt     keycode  39 = braceleft
Packit Service 50ad14
	# Who knows a better way to implement these?
Packit Service 50ad14
	alt control       keycode  39 = Meta_bracketleft
Packit Service 50ad14
	shift alt control keycode  39 = Meta_braceleft
Packit Service 50ad14
Packit Service 50ad14
keycode  40 = 0x0be4 0x0bc4 # adiaeresis Adiaeresis with type KT_LETTER
Packit Service 50ad14
	control       keycode  40 = Control_bracketright
Packit Service 50ad14
!	shift control keycode  40 = VoidSymbol
Packit Service 50ad14
    alt           keycode  40 = bracketright
Packit Service 50ad14
	shift alt     keycode  40 = braceright
Packit Service 50ad14
	# Who knows a better way to implement these?
Packit Service 50ad14
	alt control       keycode  40 = Meta_bracketright
Packit Service 50ad14
	shift alt control keycode  40 = Meta_braceright
Packit Service 50ad14
Packit Service 50ad14
keycode  41 = numbersign asciicircum
Packit Service 50ad14
	control       keycode  41 = Control_asciicircum # for convenience
Packit Service 50ad14
	shift control keycode  41 = Control_asciicircum
Packit Service 50ad14
    alt           keycode  41 = Meta_numbersign
Packit Service 50ad14
	shift alt     keycode  41 = Meta_asciicircum
Packit Service 50ad14
	alt control       keycode  41 = 0x081e # Meta_Control_asciicircum
Packit Service 50ad14
	shift alt control keycode  41 = 0x081e # Meta_Control_asciicircum
Packit Service 50ad14
Packit Service 50ad14
keycode  43 = asciitilde bar
Packit Service 50ad14
!	control       keycode  43 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  43 = VoidSymbol
Packit Service 50ad14
    alt           keycode  43 = Meta_asciitilde
Packit Service 50ad14
	shift alt     keycode  43 = Meta_bar
Packit Service 50ad14
Packit Service 50ad14
keycode  44 = y
Packit Service 50ad14
	# rest done by loadkeys!
Packit Service 50ad14
Packit Service 50ad14
keycode  51 = comma semicolon
Packit Service 50ad14
!	control       keycode  51 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  51 = VoidSymbol
Packit Service 50ad14
    alt           keycode  51 = Meta_comma
Packit Service 50ad14
	shift alt     keycode  51 = Meta_semicolon
Packit Service 50ad14
Packit Service 50ad14
keycode  52 = period colon
Packit Service 50ad14
!	control       keycode  52 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  52 = VoidSymbol
Packit Service 50ad14
    alt           keycode  52 = Meta_period
Packit Service 50ad14
	shift alt     keycode  52 = Meta_colon
Packit Service 50ad14
Packit Service 50ad14
keycode  53 = minus underscore
Packit Service 50ad14
	control       keycode  53 = Control_underscore # for convenience
Packit Service 50ad14
	shift control keycode  53 = Control_underscore
Packit Service 50ad14
    alt           keycode  53 = Meta_minus
Packit Service 50ad14
	shift alt     keycode  53 = Meta_underscore
Packit Service 50ad14
	alt control       keycode  53 = 0x081f # Meta_Control_underscore
Packit Service 50ad14
	shift alt control keycode  53 = 0x081f # Meta_Control_underscore
Packit Service 50ad14
Packit Service 50ad14
# These two are for Emacs-style editing: Alt+Cursor Left/Right send
Packit Service 50ad14
# Meta b or f to jump over words.
Packit Service 50ad14
	alt keycode  75 = Meta_b
Packit Service 50ad14
	alt keycode  77 = Meta_f
Packit Service 50ad14
Packit Service 50ad14
keycode  83 = Remove Remove
Packit Service 50ad14
	control       keycode  83 = Remove
Packit Service 50ad14
	control shift keycode  83 = Remove
Packit Service 50ad14
	alt           keycode  83 = Meta_d
Packit Service 50ad14
	alt shift     keycode  83 = Meta_d
Packit Service 50ad14
	alt control   keycode  83 = Boot
Packit Service 50ad14
	alt shift control keycode  83 = 0x0804 # Meta_Control_d
Packit Service 50ad14
Packit Service 50ad14
keycode  96 = less greater
Packit Service 50ad14
!	control       keycode  96 = VoidSymbol
Packit Service 50ad14
!	shift control keycode  96 = VoidSymbol
Packit Service 50ad14
    alt           keycode  96 = Meta_less
Packit Service 50ad14
	shift alt     keycode  96 = Meta_greater