Tangent's Blog

CharaChorder and Forge related articles and notes

Preface

This notes collect many CharaChorder tips. Most of them are from the CharaChorder Discord server.

Preparation

Things to do when waiting for the device

You can check out the “Memorize device layout without device” section in my article on suggestions for learning character entry.

Hand placement on CC1/2

You can check this video for guidance on the recommended way of hand placement for CC1 and CC2.

Key

Find the position of a key

You can use the layout viewer in Alnitak, which I developed, to search for a key. Click the magnifying glass icon at the top right, enter the key name or character, and select a search result. The layout viewer would highlight the key in the layout chart.

By default, the layout viewer shows the CC1/CC2 default layout. If your device is Master Forge, you can change this in the settings page.

Symbol keys

Some symbols may be complex to type because you need to hold down both Num-Shift and Shift. You can remap these keys to locations that are easier for you to reach. For example, you could swap the number keys on one side of the numeric layer with their corresponding symbol keys.

image

Helpful hot keys

There are some helpful hot keys for typing.

WindowsMac
Move the cursor to previous wordctrl + ⬅️option + ⬅️
Move the cursor to next wordctrl + ➡️option + ➡️
Move the cursor to the beginning of linehomecmd + ⬅️
Move the cursor to the end of lineendcmd + ➡️
Delete the word to the left of the cursorctrl + backspaceoption + backspace
Delete the text from the cursor’s current position to the beginning of the linecmd + backspace

Character entry

Learning

You can check out my article on suggestions for learning character entry.

Alternate space

On the default layout of CC 3D input devices, there are two space keys. Some users alternate between them to increase typing speed. For further details, refer to the section “Tech: Using both space keys” on this outdated wiki page.

Prevent double letters

If you encounter the unexpected double-letter problem, try making quick flicks on the keys to avoid holding them down too long. If the issue persists, consider increasing the debounce press and release settings.

Chorded entry

KSC_00

If a chord’s output includes the “KSC_00 - No key pressed” action, the CC device won’t automatically add a space at the end when triggered. Adding this action to the chord output can help avoid issues caused by automatic spaces in certain situations, such as when using IMEs.

2-letter chords

2-letter chords, especially when the two letters form a common bigram, are easy to trigger by mistake when you do character entries. Most users recommend avoiding them.

Functional chords

There are some functional chords available. These are not built-in, but you can load them from the library tab in the device manager.

The functional chords include:

  • X actions: Press a key (such as delete, backspace, or any arrow key) multiple times
  • Cursor wrap: Type a pair of symbols (like parentheses) and move the cursor between them
  • Caps Lock
  • Backspace once, then type ! or : followed by a space

Things to try when chording is hard

When you find a chord that is complex for you, here are things you can try:

  1. Use the chord timing diagnostic tool to check on which key(s) you miss the timing, and adjust your movement until you can constantly trigger the chord successfully.
  2. Use the spurring mode.
  3. When you think the key combination of a chord is too complex for your hands, you can make an easier chord for the same output instead.
  4. When you have difficulty with many chords, you can try increasing the press and release tolerance.

Avoid some previous characters being removed when doing a chord

Unexpected character removal happens when the timing between the previous character entries and the chord is too short. It causes CC devices to incorrectly treat previously entered characters as failed chord attempts, resulting in more backspaces than expected.

Especially, it would happen if you chord right after entering insert mode in Vim.

There are some ways to avoid this issue:

Diagonal presses (Chords with multiple input keys on the same stick)

There is a video about how to do a diagonal press. If you still feel hard after trying, you can change the input of the chord. For example, you can swap a key with its mirrored key, such as swap the c key with the d key.

Prevent chord confliction

It’s not possible to have two chords with the same chord input at the same time. For some words with the same letter set, such as art, tar, and rat, you can add additional keys, like Alt, '' or Dup, to make them have different chord inputs.

Mouse

Changing mouse speed

There are four mouse speeds in CC devices.

  1. Fast mouse: Hold both mouse keys in the same direction.
  2. Slower Fast mouse: Hold Num-shift and both mouse keys in the same direction
  3. Slow mouse: Hold a mouse key in any direction
  4. Slowest mouse: hold Num-shift and a mouse key in any direction

You could change the mouse speed setting via the device manager or GTM.

Other

Mac keyboard identify dialog

When you connect your CC device to a Mac for the first time, your Mac will attempt to identify what type of keyboard you have. A screen will pop up, asking you to press the Shift key to the left of the space bar. You may close this screen. Your device should work.

Other languages and layouts

If you want to use a CC 3D input device in an OS keyboard layout other than QWERTY-US or a language other than English, you can check my article about it.

I also made a layout viewer to view the final output across different OS layouts. It shows the CC1/CC2 default layout by default, and you can change it to the Master Forge (M4G) default layout on the settings page.

Tip list on other websites

Video

Document

ℹ️ Disclaimer: This editor is not affiliated, associated, authorized, endorsed by, or in any way officially connected with CharaChorder.

localhost_4300_

TCCL language

This editor allows you to describe the chord library with a format similar to the chord notation described in the CharaChorder official document. I call this language TanChord Code Library language, or TCCL for short.

Features

  • Loading chords from various sources
    • CharaChorder device
    • JSON backup file of the official device manager
    • TCCL or TXT file in TCCL format
  • Editing chords in a code editor
    • Syntax error and duplicated chords checking
    • Support popular keybindings (classic / emacs / vim)
  • Saving chords to CharaChorder device or file

Side topics

Reason for making this editor

As I mentioned in my article about my usage of chords, the CC chords and Bopomofo chords will conflict if they have the same input. It takes much effort to check it every time before adding new chords with impulse chords or device manager, and sometimes I forget to check it. Checking for the duplicated chords is also a hassle.

As a software engineer, I had an idea. We can edit our chord library in a code editor, which would do all the necessary checks, like when we write a program. This is how the idea of this editor came out.

Naming

For the name of this editor, I initially considered “Chord Studio Code” (a play on Visual Studio Code, a popular code editor) or “Chord Editor”. But these names are too general, so I decided to mix my name, Tangent, into it. That’s why it’s called “TanChord Code”.

Logo design

andy23512.github.io_tccode_

If you look at the strokes, the logo is composed of two circles and one line. The line is both a tangent of the inner circle and a chord of the outer circle. It echoes with the “TanChord” part in the name.

And if you look at the coloring areas, the logo is made of a teal “C”, a black “O”, and a red “D”. This can mean “code” if we ignore the silent “e”, or a possible chord, “c+o+d = code”.

Tech stack