A Plover python dictionary allowing for consistent symbol input with specification of attachment and capitalisation in one stroke.

Overview

Emily's Symbol Dictionary

Design

This dictionary was created with the following goals in mind:

  • Have a consistent method to type (pretty much) every symbol
  • Specify spacing and capitalisation of that symbol in 1 stroke
  • Hackable and understandable to anyone who finds it useful :)

Sections

To support the design goals, for each symbol there are 6 different options specifiable in sections of each stroke:

  1. Unique Starter (Red)
  2. Spacing/Attachment (Orange)
  3. Capitalisation (Teal)
  4. Variant (Green)
  5. Symbol (Purple)
  6. Repetition (Blue)

These options are mapped to different sections of the steno board:

Coloured Layout Diagram

Unique Starter

The first part of the stroke is always the same and identifies all the symbols. In the Magnum Steno dictionary that I use, SKHW is a unique key combination for the left hand that is never used. (note that SKWHR is used, but by not using R-, this makes it unique)

Unique Starter Diagram

Due to this, all the combinations of remaining strokes will have no clashes and are free to be used to specify everything needed. To adjust this starter to your dictionary just change the "uniqueStarter" variable at the top of the dictionary!

Attachment

There is a consistent way to specify attachment to the text around a symbol using the A and O keys. By default with no attachment specified spaces are inserted on both side of a symbol, like the & in the following example: one & two.

Keys Output
No Attachment Diagram x . x, one & two

When the A key is used, no space is inserted before the symbol is typed, moving it to the left of normal, like the : in this example: example: one.

Keys Output
Left Attachment Diagram x. x, example: one

Similarly, when the O key is used, no space is inserted after the symbol, moving it to the right of normal, like the " in this example: said "To.

Keys Output
Right Attachment Diagram x .x, said "To

When both combined, no spaces are used at all like the . in this example: 3.6.

Keys Output
Both Attachment Diagram x.x, 3.6

Capitalisation

The * can be used to specify capitalisation of the text following the symbol.

By default no capitalisation is applied.

Key Output
Lowercase Diagram x . x, (cons

With the * key used, the next input is capitalised.

Key Output
Uppercase Diagram x . X, said "To

Variant

There are a lot of similar symbols, to manage this, each symbol has a base symbol and a list of variant symbols. The specific variant required is chosen with a combination of the E and U keys, this allows for 4 total variants of a symbol.

By default the base symbol is typed, this is generally the most common of all the variants.

Key Output
Variant 0 Diagram (, $

When the E key is used, the left (or first) variant is typed instead.

Key Output
Variant 1 Diagram [, ¥

When the 'U' key is used, the right (or second) variant is typed.

Key Output
Variant 2 Diagram <,

When both E and U are used, the final variant is typed.

Key Output
Variant 3 Diagram {, £

These variants are stored in the main symbols dictionary and you should edit them based on which ones are more frequent for you! Though I hope my defaults are good enough.

Symbol

The main section is the symbol section, used to specify the specific symbol to type. Only a 2x3 grid is needed to address all the symbols, using variants. All of the patterns for symbols are done according to shape, rather than phonetics or briefs, and so should be remember visually with the images as an aid. For each symbol shape the pattern only addresses the base symbol, it doesn't apply as well to the variant symbols. As such, the variants should be anchored in memory to the base symbol itself rather than the pattern.

Pattern Symbols Description
Whitespace
Whitespace Diagram {#Tab}, {#Backspace}, {#Delete}, {#Escape} The pattern aligns with the tips of the arrows on a tab key legend: ↹
Arrows
Arrow Diagram {#Up}, {#Left}, {#Right}, {#Down} Looks like an arrow key cluster
Navigation
Navigation Diagram {#Page_Up}, {#Home}, {#End}, {#Page_Down} Arrow key cluster but with an addition key held down
Music
Music Diagram {#AudioPlay}, {#AudioPrev}, {#AudioNext}, {#AudioMute} Like a strangely rotated L for err... _L_ovely music?
Blank
Blank Diagram , {*!}, {*?}, {#Space} It's blank! Self descriptive
!
Exclamation Diagram !, ¡, ¡, ¬ Vertical shape that's off to the left, like ! on a regular keyboard
"
Double Quote Diagram ", “, ”, „ Two dots up high like its shape, and off to the left like on ISO keyboards
#
Hash Diagram #, ©, ®, ™ Two vertical bars like in the shape
$
Dollar Diagram $, ¥, €, £ Makes an S shape like a $
%
Percent Diagram %, ‰, ‰, ‰ Same as a / but with the two extra keys representing the dots
&
Ampersand Diagram & Makes a mirror image of the standard 'and' brief (mirrored for ease)
'
quote Diagram ', ‘, ’, ‚ One dot up high, similar to ", on the index for importance
(
Open Diagram (, [, <, { Similar to the standard steno brief
)
Close Diagram ), ], >, } Similar to the standard steno brief
*
Star Diagram *, ×, ×, × single dot shape, off to the right like JIS, up high in the sky
+
Plus Diagram +, §, ¶, ± single dot shape, off to the right like JIS, under the star
,
Comma Diagram , Single dot shape, below like on a keyboard, middle finger as less important
-
Dash Diagram -, –, —, — Line in shape, up in the top right like a normal keyboard
.
Dot Diagram ., •, •, … Single dot in shape, below like on a keyboard, index finger as important
/
Slash Diagram /, ÷, ÷, ÷ Shape of a /
:
Colon Diagram : Vertical shape, off to the right like a normal keyboard
;
Semicolon Diagram ; Literally a , and . at the same time
=
Equals Diagram = Literally a - and a _ at the same time
?
Question Diagram ?, ¿, ¿, ¿ Looks like the top of a ?
@
At Diagram @ Large complicated shape, only way to make a big spiral
\
Backslash Diagram \ Shape of a \
^
Caret Diagram ^, «, », ° Shape of a ^ and other pointy/raised symbols
_
Underscore Diagram _, µ, µ, µ A line down low opposing -, and other lowered symbols
`
Backtick Diagram \ ` Single dot up high, next to '
|
Pipe Diagram |, ¦, ¦, ¦ Nice symetrical vertical shape goes in the middle
~
Tilde Diagram ~, ˜, ˜, ˜ Makes the shape of a ~

Repetition

You may want to duplicate certain symbols, such as logical OR || or org-mode headings ### Title. Repetition is done with the -T and -S keys.

By default any symbol is typed out once.

Key Output
One Diagram :

When using the -S key, the symbol is typed twice in a row. Think of 's' pluralising words.

Key Output
Two Diagram ::

When using the -T key, the symbol is typed out three times in a row. Think _T_riple.

Key Output
Three Diagram :::

When using both -S and -T the symbol is typed out a combined 4 times.

Key Output
Four Diagram ::::
Owner
Emily
Emily
Natural Language Processing Specialization

Natural Language Processing Specialization In this folder, Natural Language Processing Specialization projects and notes can be found. WHAT I LEARNED

Kaan BOKE 3 Oct 06, 2022
Training RNNs as Fast as CNNs

News SRU++, a new SRU variant, is released. [tech report] [blog] The experimental code and SRU++ implementation are available on the dev branch which

Tao Lei 14 Dec 12, 2022
Graph4nlp is the library for the easy use of Graph Neural Networks for NLP

Graph4NLP Graph4NLP is an easy-to-use library for R&D at the intersection of Deep Learning on Graphs and Natural Language Processing (i.e., DLG4NLP).

Graph4AI 1.5k Dec 23, 2022
An open source framework for seq2seq models in PyTorch.

pytorch-seq2seq Documentation This is a framework for sequence-to-sequence (seq2seq) models implemented in PyTorch. The framework has modularized and

International Business Machines 1.4k Jan 02, 2023
VampiresVsWerewolves - Our Implementation of a MiniMax algorithm with alpha beta pruning in the context of an in-class competition

VampiresVsWerewolves Our Implementation of a MiniMax algorithm with alpha beta pruning in the context of an in-class competition. Our Algorithm finish

Shawn 1 Jan 21, 2022
An extensive UI tool built using new data scraped from BBC News

BBC-News-Analyzer An extensive UI tool built using new data scraped from BBC New

Antoreep Jana 1 Dec 31, 2021
Athena is an open-source implementation of end-to-end speech processing engine.

Athena is an open-source implementation of end-to-end speech processing engine. Our vision is to empower both industrial application and academic research on end-to-end models for speech processing.

Ke Technologies 34 Sep 08, 2022
Snowball compiler and stemming algorithms

Snowball is a small string processing language for creating stemming algorithms for use in Information Retrieval, plus a collection of stemming algori

Snowball Stemming language and algorithms 613 Jan 07, 2023
ACL22 paper: Imputing Out-of-Vocabulary Embeddings with LOVE Makes Language Models Robust with Little Cost

Imputing Out-of-Vocabulary Embeddings with LOVE Makes Language Models Robust with Little Cost LOVE is accpeted by ACL22 main conference as a long pape

Lihu Chen 32 Jan 03, 2023
Natural language computational chemistry command line interface.

nlcc Install pip install nlcc Must have Open-AI Codex key: export OPENAI_API_KEY=your key here then nlcc key bindings ctrl-w copy to clipboard (Note

Andrew White 37 Dec 14, 2022
Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context

Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context This repository contains the code in both PyTorch and TensorFlow for our paper

Zhilin Yang 3.3k Dec 28, 2022
Tools and data for measuring the popularity & growth of various programming languages.

growth-data Tools and data for measuring the popularity & growth of various programming languages. Install the dependencies $ pip install -r requireme

3 Jan 06, 2022
A number of methods in order to perform Natural Language Processing on live data derived from Twitter

A number of methods in order to perform Natural Language Processing on live data derived from Twitter

1 Nov 24, 2021
A simple recipe for training and inferencing Transformer architecture for Multi-Task Learning on custom datasets. You can find two approaches for achieving this in this repo.

multitask-learning-transformers A simple recipe for training and inferencing Transformer architecture for Multi-Task Learning on custom datasets. You

Shahrukh Khan 48 Jan 02, 2023
Yet Another Sequence Encoder - Encode sequences to vector of vector in python !

Yase Yet Another Sequence Encoder - encode sequences to vector of vectors in python ! Why Yase ? Yase enable you to encode any sequence which can be r

Pierre PACI 12 Aug 19, 2021
Super easy library for BERT based NLP models

Fast-Bert New - Learning Rate Finder for Text Classification Training (borrowed with thanks from https://github.com/davidtvs/pytorch-lr-finder) Suppor

Utterworks 1.8k Dec 27, 2022
ConvBERT-Prod

ConvBERT 目录 0. 仓库结构 1. 简介 2. 数据集和复现精度 3. 准备数据与环境 3.1 准备环境 3.2 准备数据 3.3 准备模型 4. 开始使用 4.1 模型训练 4.2 模型评估 4.3 模型预测 5. 模型推理部署 5.1 基于Inference的推理 5.2 基于Serv

yujun 7 Apr 08, 2022
DAGAN - Dual Attention GANs for Semantic Image Synthesis

Contents Semantic Image Synthesis with DAGAN Installation Dataset Preparation Generating Images Using Pretrained Model Train and Test New Models Evalu

Hao Tang 104 Oct 08, 2022
Source code for the paper "TearingNet: Point Cloud Autoencoder to Learn Topology-Friendly Representations"

TearingNet: Point Cloud Autoencoder to Learn Topology-Friendly Representations Created by Jiahao Pang, Duanshun Li, and Dong Tian from InterDigital In

InterDigital 21 Dec 29, 2022