qmk_firmware/assets/features_stenography.md.Bb_IhUGl.js

16 lines
25 KiB
JavaScript
Raw Normal View History

import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.DyMmIvSC.js";
const __pageData = JSON.parse('{"title":"Stenography in QMK","description":"","frontmatter":{},"headers":[],"relativePath":"features/stenography.md","filePath":"features/stenography.md"}');
const _sfc_main = { name: "features/stenography.md" };
const _hoisted_1 = /* @__PURE__ */ createStaticVNode('<h1 id="stenography-in-qmk" tabindex="-1">Stenography in QMK <a class="header-anchor" href="#stenography-in-qmk" aria-label="Permalink to &quot;Stenography in QMK {#stenography-in-qmk}&quot;"></a></h1><p><a href="https://en.wikipedia.org/wiki/Stenotype" target="_blank" rel="noreferrer">Stenography</a> is a method of writing most often used by court reports, closed-captioning, and real-time transcription for the deaf. In stenography words are chorded syllable by syllable with a mixture of spelling, phonetic, and shortcut (briefs) strokes. Professional stenographers can reach 200-300 WPM without any of the strain usually found in standard typing and with far fewer errors (&gt;99.9% accuracy).</p><p>The <a href="https://www.openstenoproject.org/" target="_blank" rel="noreferrer">Open Steno Project</a> has built an open-source program called Plover that provides real-time translation of steno strokes into words and commands. It has an established dictionary and supports</p><h2 id="plover-with-qwerty-keyboard" tabindex="-1">Plover with QWERTY Keyboard <a class="header-anchor" href="#plover-with-qwerty-keyboard" aria-label="Permalink to &quot;Plover with QWERTY Keyboard {#plover-with-qwerty-keyboard}&quot;"></a></h2><p>Plover can work with any standard QWERTY keyboard, although it is more efficient if the keyboard supports NKRO (n-key rollover) to allow Plover to see all the pressed keys at once. An example keymap for Plover can be found in <code>planck/keymaps/default</code>. Switching to the <code>PLOVER</code> layer adjusts the position of the keyboard to support the number bar.</p><p>To enable NKRO, add <code>NKRO_ENABLE = yes</code> in your <code>rules.mk</code> and make sure to press <code>NK_ON</code> to turn it on because <code>NKRO_ENABLE = yes</code> merely adds the possibility of switching to NKRO mode but it doesn&#39;t automatically switch to it. If you want to automatically switch, add <code>#define FORCE_NKRO</code> in your <code>config.h</code>.</p><p>You may also need to adjust your layout, either in QMK or in Plover, if you have anything other than a standard layout. You may also want to purchase some steno-friendly keycaps to make it easier to hit multiple keys.</p><h2 id="plover-with-steno-protocol" tabindex="-1">Plover with Steno Protocol <a class="header-anchor" href="#plover-with-steno-protocol" aria-label="Permalink to &quot;Plover with Steno Protocol {#plover-with-steno-protocol}&quot;"></a></h2><p>Plover also understands the language of several steno machines. QMK can speak a couple of these languages: TX Bolt and GeminiPR. An example layout can be found in <code>planck/keymaps/steno</code>.</p><p>When QMK speaks to Plover over a steno protocol, Plover will not use the keyboard as input. This means that you can switch back and forth between a standard keyboard and your steno keyboard, or even switch layers from Plover to standard and back without needing to activate/deactivate Plover.</p><p>In this mode, Plover expects to speak with a steno machine over a serial port so QMK will present itself to the operating system as a virtual serial port in addition to a keyboard.</p><div class="info custom-block"><p class="custom-block-title">INFO</p><p>Note: Due to hardware limitations, you might not be able to run both a virtual serial port and mouse emulation at the same time.</p></div><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Serial stenography protocols are not supported on <a href="./../compatible_microcontrollers#atmel-avr">V-USB keyboards</a>.</p></div><p>To enable stenography protocols, add the following lines to your <code>rules.mk</code>:</p><div class="language-make vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">make</span><pre class="shiki shiki-themes github-light github-dark vp-code"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">STENO_ENABLE = yes</span></span></code></pre></div><h3 id="tx-bolt" tabindex="-1">TX Bolt <a class
const _hoisted_67 = [
_hoisted_1
];
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return openBlock(), createElementBlock("div", null, _hoisted_67);
}
const stenography = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
export {
__pageData,
stenography as default
};