Skip to content

Questions about commit #5

@rayluo

Description

@rayluo

First of all, some context here. This Serial API doc mentions caution against commit.

Parameter and keymaps changes, when committed, will degrade the flash chip over time ... If you plan to programmatically change layouts, for example, you shouldn’t commit the changes unless you need them to persist after power loss.

Chords are stored on external flash ... and is less of a concern.

I can see that this charachorder.py library provides an explicit commit:boolean parameter for most of the setter methods, but not for chord-relevant methods. Some of those chord-relevant methods (such as delete_chordmaps(), append_starter_chordmaps(), append_functional_chordmaps()) has docstring explicitly mentioning that they will always commit, but the set_chordmap() and delete_chordmap() does not mention commit behavior.

Q1: Do set_chordmap() and delete_chordmap() always auto-commit, too?

Q2: If I programmatically add for example 1000+ chords (such as those defined in CharChorder Builder), does that incur 1000+ commits? That can easily be 3 magnitudes more than one would change the keymaps and layouts. Shall I also make an effort to minimize the set_chordmap() and delete_chordmap() calls?

Q3: Is there a "no commit" mode for me to frequently test out different chords which are meant to be lost after powering down?

Q4: By the way, where do the chords of append_starter_chordmaps() and append_functional_chordmaps() come from? Are they hardcoded in the firmware? Are there any docs or source code somewhere listing what those chords are?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions