diff options
author | InigoGutierrez <inigogf.95@gmail.com> | 2022-09-25 16:02:54 +0200 |
---|---|---|
committer | InigoGutierrez <inigogf.95@gmail.com> | 2022-09-25 16:02:54 +0200 |
commit | 6afdd9d74da250e47ac64d6690bd19d037045e99 (patch) | |
tree | 661f6cfb244c02bcd1fbfe8fb9b2bd9242a91394 /keyboards/keyboardio | |
parent | 93a55e61b59d20f7cd842cce02e5b18a63a23612 (diff) | |
parent | 1bdf4cdc22ae57d111efb2f7d71e405e5c7b3f11 (diff) | |
download | qmk_firmware-6afdd9d74da250e47ac64d6690bd19d037045e99.tar.gz qmk_firmware-6afdd9d74da250e47ac64d6690bd19d037045e99.zip |
Merge branch 'master' into taamas
Diffstat (limited to 'keyboards/keyboardio')
16 files changed, 187 insertions, 29 deletions
diff --git a/keyboards/keyboardio/atreus/config.h b/keyboards/keyboardio/atreus/config.h index 74b56ceb7d..6e6e68dcaf 100644 --- a/keyboards/keyboardio/atreus/config.h +++ b/keyboards/keyboardio/atreus/config.h @@ -18,14 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ - -#define VENDOR_ID 0x1209 -#define PRODUCT_ID 0x2303 -#define DEVICE_VER 0x0000 -#define MANUFACTURER Keyboardio -#define PRODUCT Atreus - /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 12 @@ -57,7 +49,6 @@ #define MATRIX_ROW_PINS { F6, F5, F4, F1 } #define MATRIX_COL_PINS { F7, E2, C7, C6, B6, B5, D7, D6, D4, D5, D3, D2 } -#define UNUSED_PINS /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/keyboardio/atreus/info.json b/keyboards/keyboardio/atreus/info.json index a23d81ac9d..8431c1e62d 100644 --- a/keyboards/keyboardio/atreus/info.json +++ b/keyboards/keyboardio/atreus/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "Keyboardio Atreus", + "keyboard_name": "Atreus", + "manufacturer": "Keyboardio", "url": "", "maintainer": "keyboardio", + "usb": { + "vid": "0x1209", + "pid": "0x2303", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/keyboardio/atreus/keymaps/ardumont/keymap.c b/keyboards/keyboardio/atreus/keymaps/ardumont/keymap.c index 6faabbc3ed..373438e4b4 100644 --- a/keyboards/keyboardio/atreus/keymaps/ardumont/keymap.c +++ b/keyboards/keyboardio/atreus/keymaps/ardumont/keymap.c @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LW] = LAYOUT( /* [> LOWER <] */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, KC_NO, KC_NO, KC_NO, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO , - KC_NO, KC_NO, KC_NO, DEBUG, RESET, EEP_RST, _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO , + KC_NO, KC_NO, KC_NO, DEBUG, QK_BOOT, EEP_RST, _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO , _______, _______, _______, _______, _______, FN2, FN2, _______, _______, KC_NO, KC_ESC, _______ ) }; diff --git a/keyboards/keyboardio/atreus/keymaps/dshields/keymap.c b/keyboards/keyboardio/atreus/keymaps/dshields/keymap.c index e9daa7fab8..0077c4d836 100644 --- a/keyboards/keyboardio/atreus/keymaps/dshields/keymap.c +++ b/keyboards/keyboardio/atreus/keymaps/dshields/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [DEF] = LAYOUT( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P , - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + MT_A, MT_S, MT_D, MT_F, KC_G, KC_H, MT_J, MT_K, MT_L, MT_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TAB, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSMLCTL, MT_ESC, OSMLALT, OSL_FUN, MT_BSPC, OSL_LWR, OSL_RSE, MT_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT ), @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FUN] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 , KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, _______, KC_WH_L, KC_WH_D, KC_WH_U, KC_WH_R, - _______, _______, _______, _______, _______, RESET, EEP_RST, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3, + _______, _______, _______, _______, _______, QK_BOOT, EEP_RST, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R ) }; diff --git a/keyboards/keyboardio/atreus/keymaps/kkokdae/config.h b/keyboards/keyboardio/atreus/keymaps/kkokdae/config.h new file mode 100644 index 0000000000..f66f840bfd --- /dev/null +++ b/keyboards/keyboardio/atreus/keymaps/kkokdae/config.h @@ -0,0 +1,27 @@ +/* Copyright 2022 kkokdae <kkokdae@me.com> + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#pragma once +//#define PERMISSIVE_HOLD +#define IGNORE_MOD_TAP_INTERRUPT +#define TAPPING_TERM 200 +#define ONESHOT_TAP_TOGGLE 5 +#define ONESHOT_TIMEOUT 5000 + +#define AUTO_SHIFT_DISABLED_AT_STARTUP +#define AUTO_SHIFT_TIMEOUT 0 +#define NO_AUTO_SHIFT_SPECIAL +#define NO_AUTO_SHIFT_NUMERIC diff --git a/keyboards/keyboardio/atreus/keymaps/kkokdae/keymap.c b/keyboards/keyboardio/atreus/keymaps/kkokdae/keymap.c new file mode 100644 index 0000000000..0110c64395 --- /dev/null +++ b/keyboards/keyboardio/atreus/keymaps/kkokdae/keymap.c @@ -0,0 +1,127 @@ +/* Copyright 2022 kkokdae <kkokdae@me.com> + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include QMK_KEYBOARD_H + +enum my_layers { + _COLEMAK, + _QWERTY, + _FUNC, + _NUMPAD, + _SYMBOL +}; + +enum my_tds { + TdH, + TdL +}; + +#define FUNC LT(_FUNC, KC_SPC) +#define NUMPAD LT(_NUMPAD, KC_BSPC) +#define DNUMPAD LT(_NUMPAD, KC_DEL) +#define SYMBOL OSL(_SYMBOL) + +#define OSMCMD OSM(MOD_LGUI) +#define OSMOPT OSM(MOD_LALT) +#define OSMCTL OSM(MOD_LCTL) +#define OSMSFT OSM(MOD_LSFT) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_COLEMAK] = LAYOUT( + KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_QUOT, + KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, + KC_Z, KC_X, KC_C, KC_D, KC_V, _______, _______, KC_K, KC_H, KC_COMM, KC_DOT, KC_ENT, + OSMCMD, OSMOPT, OSMCTL, OSMSFT, FUNC, KC_TAB, KC_ESC, NUMPAD, SYMBOL, OSMCTL, OSMOPT, OSMCMD + ), + + [_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, + KC_Z, KC_X, KC_C, KC_V, KC_B, _______, _______, KC_N, KC_M, KC_COMM, KC_DOT, KC_ENT, + OSMCMD, OSMOPT, OSMCTL, OSMSFT, FUNC, KC_TAB, KC_ESC, NUMPAD, SYMBOL, OSMCTL, OSMOPT, OSMCMD + ), + + [_FUNC] = LAYOUT( + KC_MRWD, KC_VOLU, KC_VOLD, KC_MFFD, KC_MPLY, KC_INS, KC_F7, KC_F8, KC_F9, KC_CAPS, + KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, KC_BRIU, KC_F12, KC_F4, KC_F5, KC_F6, TD(TdL), + KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_BRID, _______, _______, KC_F10, KC_F1, KC_F2, KC_F3, KC_F11, + _______, _______, _______, KC_ASTG, _______, _______, _______, DNUMPAD, _______, _______, _______, _______ + ), + + [_NUMPAD] = LAYOUT( + _______, _______, _______, _______, _______, S(KC_E), KC_7, KC_8, KC_9, S(KC_F), + TD(TdL), KC_EQL, KC_ASTR, KC_PLUS, _______, S(KC_C), KC_4, KC_5, KC_6, S(KC_D), + TD(TdH), KC_DOT, KC_SLSH, KC_MINS, _______, _______, _______, S(KC_A), KC_1, KC_2, KC_3, S(KC_B), + _______, _______, _______, KC_ASTG, _______, _______, _______, _______, KC_0, _______, _______, _______ + ), + + [_SYMBOL] = LAYOUT( + KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, KC_CIRC, KC_DLR, KC_BSLS, KC_PERC, KC_AT, KC_DQUO, + KC_QUES, KC_EXLM, KC_HASH, KC_ASTR, KC_AMPR, KC_PIPE, KC_MINS, KC_PLUS, KC_UNDS, KC_EQL, + KC_LT, KC_LPRN, KC_RPRN, KC_GT, KC_GRV, _______, _______, KC_TILD, KC_SLSH, C(KC_B), KC_COLN, KC_SCLN, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; + +bool get_custom_auto_shifted_key(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case KC_MINS: + case KC_UNDS: + case KC_BSPC: + return false; + } + + switch(keycode & 0xFF) { + case KC_1 ... KC_UP: + autoshift_disable(); + default: + return false; + } +} + +void dance_hex(qk_tap_dance_state_t *state, void *user_data) { + switch(state->count) { + case 1: + SEND_STRING("0x"); + break; + case 2: + SEND_STRING("\\x"); + break; + } +} + +void dance_lang(qk_tap_dance_state_t *state, void *user_data) { + uint32_t default_layer; + switch(state->count) { + case 1: + SEND_STRING(SS_LCTL(" ") SS_DELAY(200) SS_TAP(X_ENT)); + case 2: + default_layer = get_highest_layer(default_layer_state); + if (default_layer == _COLEMAK) { + set_single_persistent_default_layer(_QWERTY); + } + else if (default_layer == _QWERTY) { + set_single_persistent_default_layer(_COLEMAK); + } + break; + } +} + + +qk_tap_dance_action_t tap_dance_actions[] = { + [TdH] = ACTION_TAP_DANCE_FN(dance_hex), + [TdL] = ACTION_TAP_DANCE_FN(dance_lang) +}; diff --git a/keyboards/keyboardio/atreus/keymaps/kkokdae/readme.md b/keyboards/keyboardio/atreus/keymaps/kkokdae/readme.md new file mode 100644 index 0000000000..b67e31c49f --- /dev/null +++ b/keyboards/keyboardio/atreus/keymaps/kkokdae/readme.md @@ -0,0 +1,7 @@ +# kkokdae keymap - Keyboardio Atreus + +This is the keymap available for keyboardio/atreus keyboards. + +The default layout used [Colemak Mod-DH](https://colemakmods.github.io/mod-dh/). The prefix keys for vim/tmux users. The symbol is designed for ease of use by programmers. + +It used the idea of [Caps Work Behavior](https://zmk.dev/docs/behaviors/caps-word) by ZMK Firmware. I want to officially add this feature to QMK in the future diff --git a/keyboards/keyboardio/atreus/keymaps/kkokdae/rules.mk b/keyboards/keyboardio/atreus/keymaps/kkokdae/rules.mk new file mode 100644 index 0000000000..d24c14122a --- /dev/null +++ b/keyboards/keyboardio/atreus/keymaps/kkokdae/rules.mk @@ -0,0 +1,3 @@ +MOUSEKEY_ENABLE = no +TAP_DANCE_ENABLE = yes +AUTO_SHIFT_ENABLE = yes diff --git a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h b/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h index 3de799f942..4251834da2 100644 --- a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h +++ b/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/config.h @@ -1,6 +1,5 @@ // Copyright 2019 Manna Harbour // https://github.com/manna-harbour/miryoku -// generated -*- buffer-read-only: t -*- // This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. diff --git a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c index 7c5717a0fe..dbab7f9820 100644 --- a/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c +++ b/keyboards/keyboardio/atreus/keymaps/manna-harbour_miryoku/keymap.c @@ -1,5 +1,4 @@ // Copyright 2019 Manna Harbour // https://github.com/manna-harbour/miryoku -// generated -*- buffer-read-only: t -*- // This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. diff --git a/keyboards/keyboardio/atreus/keymaps/replicaJunction/keymap.c b/keyboards/keyboardio/atreus/keymaps/replicaJunction/keymap.c index 9e47155f44..2d4685c53a 100644 --- a/keyboards/keyboardio/atreus/keymaps/replicaJunction/keymap.c +++ b/keyboards/keyboardio/atreus/keymaps/replicaJunction/keymap.c @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [L_FN] = LAYOUT( _______,_______,_______,_______,_______, KC_VOLU,KC_F9, KC_F10, KC_F11, KC_F12, _______,_______,_______,_______,_______, KC_MUTE,KC_F5, KC_F6, KC_F7, KC_F8, - _______,K_SECR1,K_SECR2,K_SECR3,K_SECR4,MS_JIGL,RESET, KC_VOLD,KC_F1, KC_F2, KC_F3, KC_F4, + _______,K_SECR1,K_SECR2,K_SECR3,K_SECR4,MS_JIGL,QK_BOOT, KC_VOLD,KC_F1, KC_F2, KC_F3, KC_F4, DF_TYPE,DF_GAME,_______,_______,_______,KC_LCTL,KC_LALT,_______,_______,_______,_______,ooooooo ), diff --git a/keyboards/keyboardio/atreus/keymaps/xyverz/keymap.c b/keyboards/keyboardio/atreus/keymaps/xyverz/keymap.c index 2bd30bc586..9d7dc826fb 100644 --- a/keyboards/keyboardio/atreus/keymaps/xyverz/keymap.c +++ b/keyboards/keyboardio/atreus/keymaps/xyverz/keymap.c @@ -167,13 +167,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |------+------+------+------+------+------.,------+------+------+------+------+------| | |QWERTY|COLEMK|DVORAK|DVORMC| || | | | | | | |------+------+------+------+------+------||------+------+------+------+------+------| - | | | | | | || | | | | | RESET| + | | | | | | || | | | | | QK_BOOT| `-----------------------------------------'`-----------------------------------------'*/ [_ADJUST] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 , KC_F11, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_F12 , _______, QWERTY, COLEMAK, DVORAK, DVORMAC, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), }; diff --git a/keyboards/keyboardio/model01/config.h b/keyboards/keyboardio/model01/config.h index 30538c56f1..2bb5cb7386 100644 --- a/keyboards/keyboardio/model01/config.h +++ b/keyboards/keyboardio/model01/config.h @@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x1209 -#define PRODUCT_ID 0x2301 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Keyboardio -#define PRODUCT Model 01 - /* key matrix size; rows are doubled for split */ #define MATRIX_ROWS 8 #define MATRIX_COLS 8 diff --git a/keyboards/keyboardio/model01/info.json b/keyboards/keyboardio/model01/info.json index e934a7b66d..a99ab953c7 100644 --- a/keyboards/keyboardio/model01/info.json +++ b/keyboards/keyboardio/model01/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "model01", + "keyboard_name": "Model 01", + "manufacturer": "Keyboardio", "url": "https://keyboard.io", "maintainer": "qmk", + "usb": { + "vid": "0x1209", + "pid": "0x2301", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/keyboardio/model01/keymaps/dshields/keymap.c b/keyboards/keyboardio/model01/keymaps/dshields/keymap.c index 04887124f9..2d257fe371 100644 --- a/keyboards/keyboardio/model01/keymaps/dshields/keymap.c +++ b/keyboards/keyboardio/model01/keymaps/dshields/keymap.c @@ -3,9 +3,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [DEF] = LAYOUT( - RESET , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______, + QK_BOOT, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______, KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , RGB_TOG, DM_REC1, KC_Y , KC_U , KC_I , KC_O , KC_P , KC_EQL , - KC_PGUP, KC_A , KC_S , KC_D , KC_F , KC_G , KC_TAB , KC_ENT , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, + KC_PGUP, MT_A , MT_S , MT_D , MT_F , KC_G , KC_TAB , KC_ENT , KC_H , MT_J , MT_K , MT_L , MT_SCLN, KC_QUOT, KC_PGDN, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_ESC , DM_PLY1, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_MINS, OSMLCTL, OSMRCTL, KC_BSPC, KC_SPC , diff --git a/keyboards/keyboardio/model01/keymaps/tw1t611/keymap.c b/keyboards/keyboardio/model01/keymaps/tw1t611/keymap.c index 3171dd36f9..900a3f29aa 100644 --- a/keyboards/keyboardio/model01/keymaps/tw1t611/keymap.c +++ b/keyboards/keyboardio/model01/keymaps/tw1t611/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F12 , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , DE_CIRC, DE_QUOT, DE_DQUO, DE_LCBR, DE_RCBR, DE_GRV , RGB_TOG, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END , DE_EQL , DE_PERC, DE_TILD, DE_EXLM, DE_DLR , DE_LPRN, DE_RPRN, DE_AMPR, _______, _______, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, DE_QUES, DE_ASTR, - DE_BSLS, DE_HASH, DE_LABK, DE_LBRC, DE_RBRC, DE_RABK, _______, RESET , DE_AT , DE_EURO, DE_SCLN, DE_COLN, DE_UNDS, DE_PLUS, + DE_BSLS, DE_HASH, DE_LABK, DE_LBRC, DE_RBRC, DE_RABK, _______, QK_BOOT, DE_AT , DE_EURO, DE_SCLN, DE_COLN, DE_UNDS, DE_PLUS, _______, _______, _______, _______, _______, _______, |