From 0c0e208a36300660f3d568d52ae3155becf92893 Mon Sep 17 00:00:00 2001 From: takashiski Date: Mon, 31 Dec 2018 07:53:09 +0900 Subject: [PATCH] define brainfuck keymap (#4742) * define brainfuck keymap * Update keyboards/namecard2x4/keymaps/brainfuck/readme.md Co-Authored-By: takashiski --- .../namecard2x4/keymaps/brainfuck/config.h | 19 ++++++ .../namecard2x4/keymaps/brainfuck/keymap.c | 59 +++++++++++++++++++ .../namecard2x4/keymaps/brainfuck/readme.md | 12 ++++ 3 files changed, 90 insertions(+) create mode 100644 keyboards/namecard2x4/keymaps/brainfuck/config.h create mode 100644 keyboards/namecard2x4/keymaps/brainfuck/keymap.c create mode 100644 keyboards/namecard2x4/keymaps/brainfuck/readme.md diff --git a/keyboards/namecard2x4/keymaps/brainfuck/config.h b/keyboards/namecard2x4/keymaps/brainfuck/config.h new file mode 100644 index 0000000000..dbacdcce58 --- /dev/null +++ b/keyboards/namecard2x4/keymaps/brainfuck/config.h @@ -0,0 +1,19 @@ +/* Copyright 2018 takashiski + * + * 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 . + */ + +#pragma once + +// place overrides here diff --git a/keyboards/namecard2x4/keymaps/brainfuck/keymap.c b/keyboards/namecard2x4/keymaps/brainfuck/keymap.c new file mode 100644 index 0000000000..287e011def --- /dev/null +++ b/keyboards/namecard2x4/keymaps/brainfuck/keymap.c @@ -0,0 +1,59 @@ +/* Copyright 2018 takashiski + * + * 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 . + */ +#include QMK_KEYBOARD_H +#include "keymap_jp.h" + +enum Layer +{ + JP, + EN, + CONFIG +}; + + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[JP] = LAYOUT( + JP_LT,JP_GT,JP_PLUS,JP_MINS,\ + LT(CONFIG,JP_DOT),JP_COMM,JP_LBRC,LT(CONFIG,JP_RBRC)\ + ), +[EN] = LAYOUT( + KC_LT,KC_GT,KC_PLUS,KC_MINS,\ + LT(CONFIG,KC_DOT),KC_COMM,KC_LBRC,LT(CONFIG,KC_RBRC)\ + ), +[CONFIG]= LAYOUT( + KC_NO,DF(JP),DF(JP),KC_NO,\ + KC_TRNS,DF(EN),DF(JP),KC_TRNS\ + ) + +}; + + +void matrix_init_user(void) { + +} + +void matrix_scan_user(void) { + +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + return true; +} + +void led_set_user(uint8_t usb_led) { + +} diff --git a/keyboards/namecard2x4/keymaps/brainfuck/readme.md b/keyboards/namecard2x4/keymaps/brainfuck/readme.md new file mode 100644 index 0000000000..7fee17acd9 --- /dev/null +++ b/keyboards/namecard2x4/keymaps/brainfuck/readme.md @@ -0,0 +1,12 @@ +# keymap for brainfuck + + This keymap is specialized for the brainfuck programming language. + +| < | > | + | - | +| . | , | [ | ] | + +and when you hold . or ], change config layer. + +default layer is for JP keyboard(logical pairing). +you can choose EN keyboard(typewrite pairing). +