From 5987f67989c1b8f5fbd108d4dae21a227bc2f99c Mon Sep 17 00:00:00 2001 From: Joe Wasson Date: Wed, 26 Jul 2017 14:41:39 -0700 Subject: Add TX Bolt protocol support for Stenography Requires virtser; Allows QMK to speak the TX BOlt protocol used by stenography machines and software (such as Plover). The upside is that Plover can be configured to listen only to TX Bolt allow the keyboard to switch layers without need to enable/disable the Plover software, or to have a second non-Steno keyboard work concurrently. --- quantum/process_keycode/process_steno.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 quantum/process_keycode/process_steno.h (limited to 'quantum/process_keycode/process_steno.h') diff --git a/quantum/process_keycode/process_steno.h b/quantum/process_keycode/process_steno.h new file mode 100644 index 0000000000..fb9b8e8adc --- /dev/null +++ b/quantum/process_keycode/process_steno.h @@ -0,0 +1,12 @@ +#ifndef PROCESS_STENO_H +#define PROCESS_STENO_H + +#include "quantum.h" + +#if defined(STENO_ENABLE) && !defined(VIRTSER_ENABLE) + #error "must have virtser enabled to use steno" +#endif + +bool process_steno(uint16_t keycode, keyrecord_t *record); + +#endif \ No newline at end of file -- cgit v1.2.3 From f30f12ec8122b7c025ff83c5e38e171c4107052b Mon Sep 17 00:00:00 2001 From: Joe Wasson Date: Wed, 26 Jul 2017 21:51:41 -0700 Subject: Add support for GeminiPR steno protocol. This protocol breaks out "duplicate" keys into their own entry in the packet so that more complicated logic can be done on the software side, including support for additional languages and alternative theories. --- quantum/process_keycode/process_steno.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'quantum/process_keycode/process_steno.h') diff --git a/quantum/process_keycode/process_steno.h b/quantum/process_keycode/process_steno.h index fb9b8e8adc..abd1d466cc 100644 --- a/quantum/process_keycode/process_steno.h +++ b/quantum/process_keycode/process_steno.h @@ -7,6 +7,10 @@ #error "must have virtser enabled to use steno" #endif +typedef enum { STENO_MODE_BOLT, STENO_MODE_GEMINI } steno_mode_t; + bool process_steno(uint16_t keycode, keyrecord_t *record); +void steno_init(void); +void steno_set_mode(steno_mode_t mode); #endif \ No newline at end of file -- cgit v1.2.3 From 3e96e8a6a14adb8b77d170e336a0665a7eb77905 Mon Sep 17 00:00:00 2001 From: Joe Wasson Date: Thu, 27 Jul 2017 11:56:50 -0700 Subject: Add copyright to steno files. --- quantum/process_keycode/process_steno.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'quantum/process_keycode/process_steno.h') diff --git a/quantum/process_keycode/process_steno.h b/quantum/process_keycode/process_steno.h index abd1d466cc..3bbcbeaaf8 100644 --- a/quantum/process_keycode/process_steno.h +++ b/quantum/process_keycode/process_steno.h @@ -1,3 +1,18 @@ +/* Copyright 2017 Joseph Wasson + * + * 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 . + */ #ifndef PROCESS_STENO_H #define PROCESS_STENO_H -- cgit v1.2.3