.. | ||
introspection.h | ||
qmk_module.json | ||
README.md | ||
sentence_case.c | ||
sentence_case.h |
Sentence Case
Module | getreuer/sentence_case |
Version | 2025-03-07 |
Maintainer | Pascal Getreuer (@getreuer) |
License | Apache 2.0 |
Documentation | https://getreuer.info/posts/keyboards/sentence-case |
This is a community module adaptation of Sentence Case to automatically capitalize the first letter of sentences. This reduces how often you need to use the Shift keys, which is convenient particularly if you use home row mods or Auto Shift.
Add the following to your keymap.json
:
{
"modules": ["getreuer/sentence_case"]
}
NOTE: One-shot keys must be enabled.
Then, simply type as usual but without shifting at the start of sentences. The feature detects when new sentences begin and capitalizes automatically.
In detecting new sentences, Sentence Case matches patterns like
"a. a"
"a. a"
"a? a"
"a!' 'a"
but not
"a... a"
"a.a. a"
Additionally by default, abbreviations "vs.
" and "etc.
" are exceptionally
detected as not real sentence endings.
Sentence Case is on by default. The following keycodes change its status. Use
function is_sentence_case_on()
to query its status.
Keycode | Description |
---|---|
SENTENCE_CASE_ON |
Turn Sentence Case on. |
SENTENCE_CASE_OFF |
Turn Sentence Case off. |
SENTENCE_CASE_TOGGLE |
Toggle Sentence Case. |
Optionally, you can use the callback sentence_case_check_ending()
to define
other exceptions, and there are callbacks and config options to customize
Sentence Case. See the Sentence Case
documentation for details.