881 Commits

Author SHA1 Message Date
Johan Friis
aab09d504c
feat(docs): Document Karabiner interference with Mod-Morphs (#2146) 2024-01-30 00:07:48 -08:00
Dhruvin Shah
5685074835 docs: correcting file path in config.md 2024-01-27 11:40:12 -06:00
Joel Spadin
1dbd6910cb chore(docs): Update tree-sitter-devicetree to 0.9.0 2024-01-25 18:03:37 -06:00
Joel Spadin
08d9391a8a feat(keymap-upgrader): Upgrade renamed nodes
Added an upgrade function to fix renamed behavior nodes in the unlikely
event that someone was changing behavior settings this way instead of
using references.
2024-01-25 18:03:37 -06:00
Joel Spadin
bf5284b3b9 fix(keymap-upgrader): Note that changed lines are highlighted 2024-01-25 18:03:37 -06:00
Joel Spadin
d4be70587d fix(keymap-upgrader): Filter key codes to bindings
Changed the key code upgrader to only replace codes that appear in
"bindings" properties. Modifier flags such as MOD_LCTL are no longer
valid as key codes, but they are still used in "mods" properties and
should not be replaced there.
2024-01-25 18:03:37 -06:00
Joel Spadin
37fcf190e6 feat(keymap-upgrader): Highlight changes
Updated the keymap upgrader to highlight which lines it changed as well
as indicate when nothing needed to be upgraded.

Also adjusted the line highlight colors to be more readable in both
light and dark color schemes.
2024-01-25 18:03:37 -06:00
Joel Spadin
84e056793b fix(docs): Fix links to keymap upgrader 2024-01-25 18:03:37 -06:00
Joel Spadin
a0465391be refactor: Improve keymap upgrader
Moved the keymap upgrader to a top-level page like the power profiler
to make it more discoverable. It upgrades more things than key codes
now, so putting it in the codes category doesn't make much sense.

Converted the upgrader code to TypeScript and split it up into smaller
files to make it easier to add new upgrade functions.

Added upgrade functions to remove/replace "label" properties and rename
matrix-transform.h to matrix_transform.h.
2024-01-25 18:03:37 -06:00
honorless
a3fbc2a5ba docs: suggest zmk,matrix-transform over zmk,matrix_transform
* While functionally equivalent, the hyphenated form of this property
  is more consistent with other ZMK properties and adheres to DTS style
  guidelines.

* Additionally, update links to use Zephyr 3.2 documentation instead
  of 2.5 where appropriate.
2024-01-23 23:02:35 -06:00
Cem Aksoylar
19613128b9 fix(docs): Fix extra line issue in hardware headers
Need to make prettier ignore these, because otherwise it splits
them to separate lines and reverts the whole change
2024-01-20 22:28:41 -08:00
Cem Aksoylar
0dc04df09c fix(docs): Fix eslint-plugin-react errors
Remove unused components, and disable proptype checking for children
in OsTabs custom component since I can't figure out a way to assign
propTypes to it in an mdx file.
2024-01-20 22:28:41 -08:00
Cem Aksoylar
7196f9f075 ci(docs): Disable eslint rule for unescaped entities
eslint-plugin-react is emitting a lot of react/no-unescaped-entities
errors in mdx files, primarily due to apostrophes. It seems not ideal
to have to escape every apostrophe in all mdx text, so this commit
disables the check.

There might be a better way to handle this issue, but I am not aware
of one right now.
2024-01-20 22:28:41 -08:00
Cem Aksoylar
fa91648cce ci(docs): Use eslint plugin for automatic JSX runtime
Ref: https://docusaurus.io/docs/migration/v3#automatic-jsx-runtime
and https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/react-in-jsx-scope.md#when-not-to-use-it
2024-01-20 22:28:41 -08:00
Cem Aksoylar
e3f458e539 ci(docs): Fix tsc config for docusaurus 3 2024-01-20 22:28:41 -08:00
Cem Aksoylar
57684f8a66 fix(docs): Fix broken anchors in docs (but not blog) 2024-01-20 22:28:41 -08:00
Cem Aksoylar
5cbffd6625 fix(docs): Work around docusaurus bug causing broken links
Some links ended up broken after docusaurus 3 upgrade,
especially if they are the second on the same line and have anchors.
Likely due to https://github.com/facebook/docusaurus/issues/9518
2024-01-20 22:28:41 -08:00
Cem Aksoylar
1b326ff856 fix(docs): Fix relative links with trailing slashes 2024-01-20 22:28:41 -08:00
Cem Aksoylar
dcfe07d9f6 refactor(docs): Use new admonition title syntax and disable mdx v1 compat 2024-01-20 22:28:41 -08:00
Cem Aksoylar
ee855de349 fix(docs): Fix incorrect admonition title 2024-01-20 22:28:41 -08:00
Cem Aksoylar
f014eb45a7 refactor(docs): Use .mdx for docs with mdx features
Also applies prettier changes in touched files due to precommit
2024-01-20 22:28:41 -08:00
Cem Aksoylar
00962a7255 refactor(docs): Remove no longer necessary React imports 2024-01-20 22:28:41 -08:00
Cem Aksoylar
a0a952413a fix(docs): Fix deprecated admonition types 2024-01-20 22:28:41 -08:00
Cem Aksoylar
13c856d1d3 fix(docs): Fix mdx 3 incompatibility 2024-01-20 22:28:41 -08:00
Cem Aksoylar
0827ff245f chore(docs): Update docusaurus to 3
Following https://docusaurus.io/docs/migration/v3#upgrading-dependencies
and `npm update`
2024-01-20 22:28:41 -08:00
crides
8c14b155e8 docs: confirm some consumer codes on iOS
Tested on iOS 16.6
2024-01-15 18:07:48 -08:00
typorian
466cf92029
fix(docs): Document CONFIG_ZMK_USB_BOOT 2024-01-12 11:02:47 -08:00
dependabot[bot]
2829185a94 chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 in /docs
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-12 10:42:52 -08:00
Chris Andreae
7d1c1ae8fd fixup! docs
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2024-01-05 12:16:38 -08:00
Chris Andreae
7b9466c7dc fixup! add documentation for BT_CLR_ALL 2024-01-05 12:16:38 -08:00
Cem Aksoylar
b3146e665e
feat(blog): Add post for joelspadin projects for spotlight series (#2092)
Co-authored-by: Joel Spadin <joelspadin@gmail.com>
2024-01-05 10:42:04 -08:00
Gabor Hornyak
0e2f94b73b feat(ble): Support perhipheral battery levels.
* Add ability to fetch and report peripheral battery levels
  on split centrals.
* Add additional support for adding a new Battery Level
  service to split centrals that exposes fetched peripheral
  battery levels to connected hosts.

Co-authored-by: Peter Johanson <peter@peterjohanson.com>
2024-01-03 09:26:51 -08:00
Cem Aksoylar
12d73ba4f9 fix(docs): Fix remark on &bt parameter #2 2023-12-17 17:38:07 -08:00
Cem Aksoylar
78fa1e77c4 feat(blog): Add nodefree-config post for spotlight series
Co-authored-by: Robert U <978080+urob@users.noreply.github.com>
2023-12-16 21:55:45 -08:00
Peter Johanson
9b3a98691c refactor(bt): Split security and conn exp. Kconfig
* Split connection and security experimental changes into dedicated
  Kconfig flags for easier testing of only connection related fixes.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-12-15 08:59:03 -08:00
Hooky
2c50cff891
feat(kscan): Add charlieplex keyscan driver
* Supports matrixes with and without additional interrupt pin use.

Co-authored-by: Peter Johanson <peter@peterjohanson.com>
2023-12-09 17:10:05 -05:00
Peter Johanson
63c8c5700a feat(bt): Add more experimental tweaks.
* Support auto security upgrade for splits properly.
* Disable 2M and legacy LLCP if the experimental
  Kconfig flag is selected.
2023-12-08 14:57:23 -08:00
Cem Aksoylar
384637ae6c fix(docs): Fix text blurb about split Kconfig.defconfig 2023-12-06 22:50:06 -08:00
Cem Aksoylar
09d47d8117 refactor(docs): Convert breaks to unordered lists in tables
Co-authored-by: Joel Spadin <joelspadin@gmail.com>
2023-12-06 22:46:03 -08:00
Cem Aksoylar
55bf7cae7e feat(docs): Note how parameters are forwarded for behaviors 2023-12-06 22:46:03 -08:00
Cem Aksoylar
56d863cba6 feat(docs): Document sensor-rotate in behaviors config 2023-12-06 22:46:03 -08:00
Cem Aksoylar
2bab81a304 fix(docs): Note -var definition files for macros 2023-12-06 22:46:03 -08:00
Cem Aksoylar
76a209c728 fix(docs): Fix sticky key #binding-cells 2023-12-06 22:46:03 -08:00
Cem Aksoylar
f3ad08b619 fix(docs): Add missing page pointers in behaviors config 2023-12-06 22:46:03 -08:00
Peter Johanson
291bbc2257 refactor(docs): New shield guide to suggest modules
* Update the new shield guide to position Zephyr module location
  as the default when creating new shields, with a note about
  using ZMK repository itself as a last resort.
* Document building with additional Zephyr modules.

Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2023-12-06 09:36:37 -08:00
Peter Johanson
0ab6a0ad11 feat(bt): Add new experimental Kconfig setting.
* In order to have an easy way to test and phase in BT changes, add a
  new `ZMK_BLE_EXPERIMENTAL_FEATURES` Kconfig setting.
2023-12-06 09:22:50 -08:00
Joel Spadin
0fd8e25807 docs: Document behavior name length limit
Added a section to the new behavior guide to document that the names of
behaviors invoked on the peripheral side of a split must be at most 8
characters long.
2023-12-04 20:06:54 -06:00
Joel Spadin
36eda571b7 refactor(behaviors): Create a list to lookup behaviors
Added BEHAVIOR_DT_DEFINE() and BEHAVIOR_DT_INST_DEFINE(), which work
exactly like the DEVICE_*_DEFINE() macros, except they also register the
device as a behavior by adding a pointer to it to a memory section.

Added zmk_behavior_get_binding(), which works like device_get_binding()
except that it only searches the devices that have been registered as
behaviors. This ensures that behaviors cannot have name collisions with
other devices defined by the SoC, which will be important when we remove
the label property from behaviors so they are given their node names.

As an added benefit, this is faster since it searches a smaller list.
Some basic benchmark code I wrote indicates it takes 30-70% as long,
depending on where the behavior is in the list and whether the name
string is an exact pointer match.

From now on, behaviors should use BEHAVIOR_*_DEFINe() instead of
DEVICE_*_DEFINE(), and any code that looks up a behavior by name should
use zmk_behavior_get_binding() instead of device_get_binding().
2023-12-04 20:06:54 -06:00
Joel Spadin
5ecd3521f5 docs: Remove label property from documentation 2023-12-04 20:06:54 -06:00
Joel Spadin
d4e8dee444 refactor(keymaps): Rename layer label to "display-name"
Changed the property used to define a layer name for displays from
"label" (which affects other things in Zephyr and is deprecated) to
"display-name". (It cannot be named simply "name", because that has
special meaning in newer versions of the devicetree compiler.)

"label" is still supported as a fallback, so no changes need to be made
to existing keymaps.
2023-12-04 20:06:54 -06:00