Giter Club home page Giter Club logo

miryoku's Introduction

miryoku's People

Contributors

manna-harbour avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

miryoku's Issues

Option to Swap Apostrophe and Semicolon

This is needed in QWERTY for changing layouts on the host, and would also simplify the lite mappings on 60_ansi / Miryoku KMonad.

Replace both with macros and add option to swap definitions.

Getting Iris6a / miryoku working in VIA

Managed to get keebio/iris6a to compile with miryoku by using CONSOLE_ENABLE=off to get around it being 384 bytes too large.

However, it's not recognized by VIA. The default layout is. Not sure if it has to do something with console_enable.

Unsuccessfully tried c2json (no idea why it fails), and QMK2Via (which fails specifically on the Keebio folder with an unexpected error).

Also tried building in the dev branch, which segfaults.

I think I could've just manually built this into VIA in the same amount of time I've spent :)

Any help would be appreciated. Sorry for the weird post, I swapped my space and enter keys.

Support for Keyboardio Atreus

I would like to use Miryoku on my Keyboardio Atreus, which is supported by QMK since a while. I am happy to do the porting and testing, but I have no experience with QMK, so I would be glad about some pointers to get started and general support as needed.

Merge conflict when merging with QMK :(

Hi,

I am new to miryoku and I am trying to do a very basic vanilla build for mty new Kyria keyboard.

If I read the instructions correctly I would have to merge QMK and miryoku_qmk branches together with:

git clone [email protected]:qmk/qmk_firmware.git
cd qmk_firmware
git remote add miryoku_qmk [email protected]:manna-harbour/miryoku_qmk.git
git fetch miryoku_qmk
git checkout --track miryoku_qmk/miryoku
make git-submodule
git checkout -b miryoku-merge-master
git revert --no-edit `git log --grep='^\[miryoku-github\]' --pretty='format:%H' | tr '\n' ' '`
git fetch origin  # Maybe not even needed, as I just did a checkout 
git merge origin/master

But when I try it on a brand new directory, I get the following error after the last command:

Auto-merging users/manna-harbour_miryoku/manna-harbour_miryoku.c
CONFLICT (content): Merge conflict in users/manna-harbour_miryoku/manna-harbour_miryoku.c
Automatic merge failed; fix conflicts and then commit the result.

Checking the differences I see:

diff --cc users/manna-harbour_miryoku/manna-harbour_miryoku.c
index 5de5d9b129,389580759b..0000000000
--- a/users/manna-harbour_miryoku/manna-harbour_miryoku.c
+++ b/users/manna-harbour_miryoku/manna-harbour_miryoku.c
@@@ -17,14 -17,14 +17,22 @@@ MIRYOKU_LAYER_LIS
  #undef MIRYOKU_X
  };
  
++<<<<<<< HEAD
 +void u_td_fn_boot(qk_tap_dance_state_t *state, void *user_data) { \
++=======
+ void u_td_fn_boot(tap_dance_state_t *state, void *user_data) {
++>>>>>>> origin/master
    if (state->count == 2) {
      reset_keyboard();
    }
  }
  
  #define MIRYOKU_X(LAYER, STRING) \
++<<<<<<< HEAD
 +void u_td_fn_U_##LAYER(qk_tap_dance_state_t *state, void *user_data) { \
++=======
+ void u_td_fn_U_##LAYER(tap_dance_state_t *state, void *user_data) { \
++>>>>>>> origin/master
    if (state->count == 2) { \
      default_layer_set((layer_state_t)1 << U_##LAYER); \
    } \
@@@ -32,7 -32,7 +40,11 @@@
  MIRYOKU_LAYER_LIST
  #undef MIRYOKU_X
  
++<<<<<<< HEAD
 +qk_tap_dance_action_t tap_dance_actions[] = {
++=======
+ tap_dance_action_t tap_dance_actions[] = {
++>>>>>>> origin/master
      [U_TD_BOOT] = ACTION_TAP_DANCE_FN(u_td_fn_boot),
  #define MIRYOKU_X(LAYER, STRING) [U_TD_U_##LAYER] = ACTION_TAP_DANCE_FN(u_td_fn_U_##LAYER),
  MIRYOKU_LAYER_LIST
(END)

Am I doing something wrong? Is something broken?

Full list of the commands executed from above:

stratos@iocaine 
/mnt/projects/sources 
❯ git clone [email protected]:qmk/qmk_firmware.git
Cloning into 'qmk_firmware'...
remote: Enumerating objects: 512800, done.
remote: Counting objects: 100% (24/24), done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 512800 (delta 10), reused 14 (delta 5), pack-reused 512776
Receiving objects: 100% (512800/512800), 258.03 MiB | 13.04 MiB/s, done.
Resolving deltas: 100% (287377/287377), done.
Updating files: 100% (39069/39069), done.

stratos@iocaine 
/mnt/projects/sources 
➜  cd qmk_firmware

stratos@iocaine 
…/qmk_firmware [ master] [🐍 v3.10.10] [⍱ v2.3.4] 
✦ ➜  git remote add miryoku_qmk [email protected]:manna-harbour/miryoku_qmk.git

stratos@iocaine 
…/qmk_firmware [ master] [🐍 v3.10.10] [⍱ v2.3.4] 
➜  git fetch miryoku_qmk
remote: Enumerating objects: 1583, done.
remote: Counting objects: 100% (630/630), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 1583 (delta 625), reused 625 (delta 625), pack-reused 953
Receiving objects: 100% (1583/1583), 371.29 KiB | 1.23 MiB/s, done.
Resolving deltas: 100% (1100/1100), completed with 153 local objects.
From github.com:manna-harbour/miryoku_qmk
 * [new branch]            fingerpunch-test                -> miryoku_qmk/fingerpunch-test
 * [new branch]            keyboardio-model01-no-leds-test -> miryoku_qmk/keyboardio-model01-no-leds-test
 * [new branch]            klor-keyboard-test              -> miryoku_qmk/klor-keyboard-test
 * [new branch]            klor-test                       -> miryoku_qmk/klor-test
 * [new branch]            miryoku                         -> miryoku_qmk/miryoku
 * [new branch]            miryoku-20200608                -> miryoku_qmk/miryoku-20200608
 * [new branch]            miryoku-20210703                -> miryoku_qmk/miryoku-20210703
 * [new branch]            miryoku-20211015                -> miryoku_qmk/miryoku-20211015
 * [new branch]            miryoku-20220227                -> miryoku_qmk/miryoku-20220227
 * [new branch]            miryoku-20220706                -> miryoku_qmk/miryoku-20220706
 * [new branch]            miryoku-20220926                -> miryoku_qmk/miryoku-20220926
 * [new branch]            miryoku-20221121                -> miryoku_qmk/miryoku-20221121
 * [new branch]            miryoku-mousebuttons-tmp        -> miryoku_qmk/miryoku-mousebuttons-tmp
 * [new branch]            rollow-test                     -> miryoku_qmk/rollow-test
 * [new branch]            split_3x5_2-test                -> miryoku_qmk/split_3x5_2-test
 * [new branch]            yunomi-test                     -> miryoku_qmk/yunomi-test

stratos@iocaine 
…/qmk_firmware [ master] [🐍 v3.10.10] [⍱ v2.3.4] [⏱ 3s ] 
➜  git checkout --track miryoku_qmk/miryoku
branch 'miryoku' set up to track 'miryoku_qmk/miryoku'.
Switched to a new branch 'miryoku'

stratos@iocaine 
…/qmk_firmware [ miryoku] [🐍 v3.10.10] [⍱ v2.3.4] 
➜  make git-submodule
QMK Firmware 0.19.0
Submodule 'lib/chibios' (https://github.com/qmk/ChibiOS) registered for path 'lib/chibios'
Submodule 'lib/chibios-contrib' (https://github.com/qmk/ChibiOS-Contrib) registered for path 'lib/chibios-contrib'
Submodule 'lib/googletest' (https://github.com/qmk/googletest) registered for path 'lib/googletest'
Submodule 'lib/lufa' (https://github.com/qmk/lufa) registered for path 'lib/lufa'
Submodule 'lib/pico-sdk' (https://github.com/qmk/pico-sdk.git) registered for path 'lib/pico-sdk'
Submodule 'lib/printf' (https://github.com/qmk/printf) registered for path 'lib/printf'
Submodule 'lib/vusb' (https://github.com/qmk/v-usb) registered for path 'lib/vusb'
Cloning into '/mnt/projects/sources/qmk_firmware/lib/chibios'...
remote: Enumerating objects: 255179, done.        
remote: Counting objects: 100% (13923/13923), done.        
remote: Compressing objects: 100% (5224/5224), done.        
remote: Total 255179 (delta 9299), reused 12477 (delta 8354), pack-reused 241256        
Receiving objects: 100% (255179/255179), 169.54 MiB | 11.19 MiB/s, done.
Resolving deltas: 100% (193342/193342), done.
Cloning into '/mnt/projects/sources/qmk_firmware/lib/chibios-contrib'...
remote: Enumerating objects: 23254, done.        
remote: Counting objects: 100% (270/270), done.        
remote: Compressing objects: 100% (160/160), done.        
remote: Total 23254 (delta 125), reused 232 (delta 107), pack-reused 22984        
Receiving objects: 100% (23254/23254), 9.72 MiB | 3.61 MiB/s, done.
Resolving deltas: 100% (14837/14837), done.
Cloning into '/mnt/projects/sources/qmk_firmware/lib/googletest'...
remote: Enumerating objects: 22998, done.        
remote: Total 22998 (delta 0), reused 0 (delta 0), pack-reused 22998        
Receiving objects: 100% (22998/22998), 8.96 MiB | 12.49 MiB/s, done.
Resolving deltas: 100% (16989/16989), done.
Cloning into '/mnt/projects/sources/qmk_firmware/lib/lufa'...
remote: Enumerating objects: 76748, done.        
remote: Counting objects: 100% (3098/3098), done.        
remote: Compressing objects: 100% (73/73), done.        
remote: Total 76748 (delta 3049), reused 3031 (delta 3025), pack-reused 73650        
Receiving objects: 100% (76748/76748), 18.93 MiB | 3.80 MiB/s, done.
Resolving deltas: 100% (61670/61670), done.
Cloning into '/mnt/projects/sources/qmk_firmware/lib/pico-sdk'...
remote: Enumerating objects: 6628, done.        
remote: Total 6628 (delta 0), reused 0 (delta 0), pack-reused 6628        
Receiving objects: 100% (6628/6628), 2.57 MiB | 6.35 MiB/s, done.
Resolving deltas: 100% (3469/3469), done.
Cloning into '/mnt/projects/sources/qmk_firmware/lib/printf'...
remote: Enumerating objects: 1578, done.        
remote: Counting objects: 100% (627/627), done.        
remote: Compressing objects: 100% (100/100), done.        
remote: Total 1578 (delta 568), reused 538 (delta 522), pack-reused 951        
Receiving objects: 100% (1578/1578), 793.98 KiB | 4.59 MiB/s, done.
Resolving deltas: 100% (979/979), done.
Cloning into '/mnt/projects/sources/qmk_firmware/lib/vusb'...
remote: Enumerating objects: 1372, done.        
remote: Counting objects: 100% (73/73), done.        
remote: Compressing objects: 100% (50/50), done.        
remote: Total 1372 (delta 32), reused 46 (delta 18), pack-reused 1299        
Receiving objects: 100% (1372/1372), 476.46 KiB | 2.92 MiB/s, done.
Resolving deltas: 100% (832/832), done.
Submodule path 'lib/chibios': checked out '0e9d558b525a8f28285f3bb509fd48a897c43151'
Submodule path 'lib/chibios-contrib': checked out 'bb8356fb5a3a9bbc1561826f174a9a631c614546'
Submodule 'ext/mcux-sdk' (https://github.com/NXPmicro/mcux-sdk) registered for path 'lib/chibios-contrib/ext/mcux-sdk'
Cloning into '/mnt/projects/sources/qmk_firmware/lib/chibios-contrib/ext/mcux-sdk'...
remote: Enumerating objects: 43478, done.        
remote: Counting objects: 100% (8345/8345), done.        
remote: Compressing objects: 100% (2770/2770), done.        
remote: Total 43478 (delta 5515), reused 8229 (delta 5489), pack-reused 35133        
Receiving objects: 100% (43478/43478), 98.27 MiB | 26.47 MiB/s, done.
Resolving deltas: 100% (29935/29935), done.
Submodule path 'lib/chibios-contrib/ext/mcux-sdk': checked out '102c27d7cc2aaac87c133702e7829a105e0cb433'
Submodule path 'lib/googletest': checked out 'e2239ee6043f73722e7aa812a459f54a28552929'
Submodule path 'lib/lufa': checked out '549b97320d515bfca2f95c145a67bd13be968faa'
Submodule path 'lib/pico-sdk': checked out '8d56ea332b3734cef0a8e61f7d61f2422bd539b1'
Submodule path 'lib/printf': checked out 'c2e3b4e10d281e7f0f694d3ecbd9f320977288cc'
Submodule path 'lib/vusb': checked out '819dbc1e5d5926b17e27e00ca6d3d2988adae04e'

stratos@iocaine 
…/qmk_firmware [ miryoku] [🐍 v3.10.10] [⍱ v2.3.4] [⏱ 48s ] 
➜  git checkout -b miryoku-merge-master
Switched to a new branch 'miryoku-merge-master'

stratos@iocaine 
…/qmk_firmware [ miryoku-merge-master] [🐍 v3.10.10] [⍱ v2.3.4] 
❯ git revert --no-edit `git log --grep='^\[miryoku-github\]' --pretty='format:%H' | tr '\n' ' '`
[miryoku-merge-master b8957d0bbf] Revert "[miryoku-github] Fix merge in workflow (#16)"
 Date: Fri Apr 7 17:58:59 2023 +0200
 1 file changed, 1 deletion(-)
[miryoku-merge-master b8a18ead90] Revert "[miryoku-github] Fix make git-submodule in workflow"
 Date: Fri Apr 7 17:58:59 2023 +0200
 1 file changed, 1 insertion(+), 3 deletions(-)
[miryoku-merge-master 60a7a0c6cc] Revert "[miryoku-github] Add choice to Build Inputs workflow for alternative layout options"
 Date: Fri Apr 7 17:58:59 2023 +0200
 2 files changed, 113 deletions(-)
 delete mode 100644 .github/workflows/test-inputs.yml
[miryoku-merge-master 8834067176] Revert "[miryoku-github] Update actions/upload-artifact in workflow"
 Date: Fri Apr 7 17:58:59 2023 +0200
 1 file changed, 1 insertion(+), 1 deletion(-)
[miryoku-merge-master 4fd34a5160] Revert "[miryoku-github] Squashed local commits from previous miryoku branch"
 Date: Fri Apr 7 17:58:59 2023 +0200
 13 files changed, 362 deletions(-)
 delete mode 100644 .github/FUNDING.yml
 delete mode 100644 .github/workflows/build-example-contra.yml
 delete mode 100644 .github/workflows/build-example-crkbd.yml
 delete mode 100644 .github/workflows/build-example-ergodox_ez.yml
 delete mode 100644 .github/workflows/build-example-keebio_levinson.yml
 delete mode 100644 .github/workflows/build-example-planck_rev6.yml
 delete mode 100644 .github/workflows/build-example-xmk.yml
 delete mode 100644 .github/workflows/build-inputs.yml
 delete mode 100644 .github/workflows/main.yml
 delete mode 100644 .github/workflows/test-all-configs.yml
 delete mode 100644 .github/workflows/test-build.yml
 delete mode 100644 .github/workflows/test-merge.yml
 delete mode 100644 readme.org
[miryoku-merge-master d648132511] Revert "[miryoku-github] Delete upstream github files"
 Date: Fri Apr 7 17:58:59 2023 +0200
 22 files changed, 731 insertions(+)
 create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml
 create mode 100644 .github/ISSUE_TEMPLATE/config.yml
 create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml
 create mode 100644 .github/ISSUE_TEMPLATE/other_issues.yml
 create mode 100644 .github/ISSUE_TEMPLATE/zzz_blank.md
 create mode 100644 .github/PULL_REQUEST_TEMPLATE.md
 create mode 100644 .github/dependabot.yml
 create mode 100644 .github/labeler.yml
 create mode 100644 .github/workflows/api.yml
 create mode 100644 .github/workflows/auto_approve.yml
 create mode 100644 .github/workflows/auto_tag.yml
 create mode 100644 .github/workflows/cli.yml
 create mode 100644 .github/workflows/develop_update.yml
 create mode 100644 .github/workflows/docs.yml
 create mode 100644 .github/workflows/feature_branch_update.yml
 create mode 100644 .github/workflows/format.yml
 create mode 100644 .github/workflows/format_push.yml
 create mode 100644 .github/workflows/labeler.yml
 create mode 100644 .github/workflows/lint.yml
 create mode 100644 .github/workflows/stale.yml
 create mode 100644 .github/workflows/unit_test.yml
 create mode 100644 readme.md

stratos@iocaine 
…/qmk_firmware [ miryoku-merge-master] [🐍 v3.10.10] [⍱ v2.3.4] 
➜  git fetch origin

stratos@iocaine 
…/qmk_firmware [ miryoku-merge-master] [🐍 v3.10.10] [⍱ v2.3.4] [⏱ 2s ] 
➜  git merge origin/master
Auto-merging users/manna-harbour_miryoku/manna-harbour_miryoku.c
CONFLICT (content): Merge conflict in users/manna-harbour_miryoku/manna-harbour_miryoku.c
Automatic merge failed; fix conflicts and then commit the result.

[Feature Request] Support for Dactyl Manuform 5x6

Description

Currently, there is support for the Dactyl Manuform 4x5. I tried flashing my DM 5x6, which technically works but the keys are all over the place (or missing). I'm guessing the subset mapping in the config.h file is just not compatible with the 5x6.

Add Tap-Only Layer

Add a toggleable copy of the base layer without dual function keys for use with games (and applications with similar needs such as KMonad).

  • A copy of the base layer but with only the tap keycodes from the tap holds
  • Only immediate press / release behaviour, no delays
  • Additional QWERTY version for non-QWERTY base layers, for games that don't support remapping?
  • Auto shift also needs to be disabled
    • QMK https://beta.docs.qmk.fm/using-qmk/software-features/feature_auto_shift
      • Can be disabled in QMK with KC_ASON / KC_ASOFF / KC_ASTG and no AUTO_SHIFT_NO_SETUP. Should add to keyboard control layer anyway.
      • Auto disable / enable on layer change with custom code
    • ZMK has no auto shift yet. Add fake auto shift via tap hold but leave off for tap-only layer
    • KMonad has no auto shift yet. Using fake auto shift via tap hold but can leave off for tap-only layer. Or just exit and use raw keyboard but might need faster / smoother switching.
  • Use superset mapping, map all extra keys to unique keys for rebinding
    • Support overriding layout macros from config file
    • Add default for this layer to common mappings
  • Activation:
    • Activate from unused keycode similar to current reset. Won't be able to return to normal mode without hardware reset.
    • Activate / deactivate from unused extra key in subset mapping. Not available on 36 key boards.

MIRYOKU_LAYOUT=vi Does Not Work

Discussed in #193

Originally posted by raviolispy February 24, 2023
Using the below command, I can successfully compile for my iris rev7 (although curiously, I had to remove some things from the default version so the hex file was small enough). The other options I specified such as the QWERTY layout all work but the MIRYOKU_NAV=vi doesn't appear to shift the navigation keys to hjkl. Can anyone help please?

qmk compile -c -kb keebio/iris/rev7 -km manna-harbour_miryoku -e MIRYOKU_ALPHAS=QWERTY -e MIRYOKU_CLIPBOARD=WIN -e MIRYOKU_TAP=QWERTY -e MIRYOKU_NAV=vi

Miryoku ZMK Beta

Create a Miryoku implementation for ZMK.

  • Private beta
  • Prepare for public release
    • Add overview
    • Add quickstart guide
    • Add dts.pre.tmp to workflow
    • Add versions to workflow URLs
    • Change MIRYOKU_COMBO_TPS to MIRYOKU_KLUDGE_THUMBCOMBOS to match Miryoku QMK
    • Add mouse keys docs to main readme
    • Add branches field to workflows
    • Add branch to artifact name
    • Add config field to workflows
    • Use branches and config fields for mousekeys option
    • Update for Zephyr 3.0
    • Add list of supported keyboards
    • Rename mapping files
    • Add linebreaks to Test All workflows
    • Add new keyboards
    • Add EP_TOG
    • Add BT keys to reference manual
  • Public release
    • Create new repo
    • Cleanup history
    • Update workflow URLs
    • Make public
    • Link repo
    • Pin repo
  • Cleanup private beta
    • Update welcome.org
    • Delete workflow runs
    • Disable actions
    • Add notice to readme
    • Remove user branches
    • Remove beta participants
    • Remove repo

[Bug] Generating with org-babel-tangle litters empty main functions

Steps to reproduce:
-Open miryoku.org in emacs
-Run org-babel-tangle with C-c C-v t

Operating Systems:
-Arch Linux
-Mac 10.14

When generating with babel tangle, many files have an empty main function appended.
For example, the file /layouts/community/split_3x6_3/manna-harbour_miryoku/config.h:

int main() {
// generated from users/manna-harbour_miryoku/miryoku.org  -*- buffer-read-only: t -*-

#pragma once

#define LAYOUT_miryoku(\
       K00,   K01,   K02,   K03,   K04,          K05,   K06,   K07,   K08,   K09,\
       K10,   K11,   K12,   K13,   K14,          K15,   K16,   K17,   K18,   K19,\
       K20,   K21,   K22,   K23,   K24,          K25,   K26,   K27,   K28,   K29,\
       N30,   N31,   K32,   K33,   K34,          K35,   K36,   K37,   N38,   N39\
)\
LAYOUT_split_3x6_3(\
KC_NO, K00,   K01,   K02,   K03,   K04,          K05,   K06,   K07,   K08,   K09,   KC_NO,\
KC_NO, K10,   K11,   K12,   K13,   K14,          K15,   K16,   K17,   K18,   K19,   KC_NO,\
KC_NO, K20,   K21,   K22,   K23,   K24,          K25,   K26,   K27,   K28,   K29,   KC_NO,\
                     K32,   K33,   K34,          K35,   K36,   K37\
)
return 0;
}

This is a list of the files that have this appended to it:
keyboards/atreus/keymaps/manna-harbour_miryoku/config.h
keyboards/atreus/keymaps/manna-harbour_miryoku/keymap.c
keyboards/for_science/keymaps/manna-harbour_miryoku/config.h
keyboards/for_science/keymaps/manna-harbour_miryoku/keymap.c
keyboards/gergo/keymaps/manna-harbour_miryoku/config.h
keyboards/gergo/keymaps/manna-harbour_miryoku/keymap.c
keyboards/keebio/iris/keymaps/manna-harbour_miryoku/config.h
keyboards/keebio/iris/keymaps/manna-harbour_miryoku/keymap.c
keyboards/kyria/keymaps/manna-harbour_miryoku/config.h
keyboards/kyria/keymaps/manna-harbour_miryoku/keymap.c
keyboards/lily58/keymaps/manna-harbour_miryoku/config.h
keyboards/lily58/keymaps/manna-harbour_miryoku/keymap.c
keyboards/moonlander/keymaps/manna-harbour_miryoku/config.h
keyboards/moonlander/keymaps/manna-harbour_miryoku/keymap.c
keyboards/redox_w/keymaps/manna-harbour_miryoku/config.h
keyboards/redox_w/keymaps/manna-harbour_miryoku/keymap.c
layouts/community/60_ansi/manna-harbour_miryoku/config.h
layouts/community/60_ansi/manna-harbour_miryoku/keymap.c
layouts/community/ergodox/manna-harbour_miryoku/config.h
layouts/community/ergodox/manna-harbour_miryoku/keymap.c
layouts/community/ortho_4x12/manna-harbour_miryoku/config.h
layouts/community/ortho_4x12/manna-harbour_miryoku/keymap.c
layouts/community/ortho_5x15/manna-harbour_miryoku/config.h
layouts/community/ortho_5x15/manna-harbour_miryoku/keymap.c
layouts/community/planck_mit/manna-harbour_miryoku/config.h
layouts/community/planck_mit/manna-harbour_miryoku/keymap.c
layouts/community/split_3x5_3/manna-harbour_miryoku/config.h
layouts/community/split_3x5_3/manna-harbour_miryoku/keymap.c
layouts/community/split_3x6_3/manna-harbour_miryoku/config.h
layouts/community/split_3x6_3/manna-harbour_miryoku/keymap.c
users/manna-harbour_miryoku/config.h
users/manna-harbour_miryoku/manna-harbour_miryoku.c
users/manna-harbour_miryoku/manna-harbour_miryoku.h

Support additional customisation in custom_config.h

  • change tapping term
  • mods customisation #33
  • custom clipboard? including #33 (comment)
  • disable reset, default layer, layer lock? #93
  • custom key emulation combos for added and substituted layers
  • disable auto shift, including #36
  • #35
  • encoder rotations
  • also add custom_keymap.c / custom_keymap.dtsi for custom code / behaviours.
  • additional custom combos #94 (comment) #233 #289
  • additional custom macros #233 #290
  • additional custom mod-morph / key overrides #279

Feature Request (180 degrees keyboard rotation)

Most grid keyboards like planck and preonic have USB cables located on top which is a big obstacle working with laptops resulting you to push the screen further away. Rotating the keyboard 180 degrees clears the wire obstacle allowing the keyboard to touch the laptop for more stable support. I have successfully rotated the keyboard by editing the layout map and typing experience is much better actually. A rotation define statement will allow this feature much quicker.

Colemak-DH text changes

The Miryoku documentation should be updated to reflect the current layout definitions on the Colemak-DH website.

"Colemak-DHm" (the variant with M in the middle row) is now the default, recommended layout, so the Miryoku default can be renamed simply "Colemak-DH".

Miryoku also provides an alternative layout called "Colemak-DH" (with K in the middle row). This variant is now semi-deprecated on the DH website, but is still used by some and is known as "Colemak-DHk" to avoid confusion. Suggest either removing this variant or renaming it to "Colemak-DHk".

Layout Diagrams

  • Auto generate from Miryoku Babel
  • Suitable for printing
  • Separate layers, all
  • Separate layers, individual
  • Combined layers
  • Styles
  • Author, link, etc.
  • Logos

Miyroku

Miscellaneous small issues:

  • add note to Base to use shift with ,, ., and / to get <, >, and ?
  • for alternative layout and mapping options, make default explicit and #error if no match

Miryoku KMonad

  • proof of concept implementation
  • generate from Miryoku Babel
  • add config file and makefile
  • add docs
  • add workflows
  • private beta
  • extra docs
    • overview
    • running KMonad
    • mousekeys
    • implementation and re-use
  • test with latest KMonad
  • break lines
  • prepare repo
  • publish

macOS and difference between miryoku QMK and ZMK

I was using QMK for a while and after I built my 2nd board with nice-nanos I realized that Miryoku ZMK doesn't seems to work the same as miryouku qmk - for example I can't move my mouse pointer with zmk (there is no such issues with qmk). Also karabiner keybindings doesn't work with miryoku zmk (everything is ok with qmk).

All settings just default (only vi mode). Am I doing something wrong? I think miryouku zmk/qmk should have same behavior with same workflow settings?

Support Substituting Custom Layers

Support easy customising of layers by allowing substitute layer data to be defined outside the keymap.

  • Define all alternative layer data for easy copying. See miryoku_alternatives.h
  • Define layer data selected by alternative layout options for easy substitution. See miryoku_layer.h
  • Allow layer data to be overridden. See miryoku_layer.h
  • Test overriding layer data. E.g. copy the definition of MIRYOKU_ALTERNATIVES_BASE_COLEMAKDHK from miryoku_alternatives.h to the appropriate file and change macro name to MIRYOKU_LAYER_BASE.
    • Miryoku QMK
    • Miryoku ZMK
    • Miryoku KMonad
  • Add custom_config.h to all implementations and change workflows to append instead of overwrite
  • Add documentation

Key Emulation Combos

Add options to emulate the tertiary thumb keys with a combos of primary and secondary, the inner index column keys with combos of index and middle, and the pinkie column keys with combos of middle and ring. This would be an alternative to stretching and would support boards that have eliminated some of those keys.

Miryoku Oryx

Update with recent changes.

  • Add Button layer
  • Add Extra layer
  • Add Tap layer
  • Add layer lock
  • Change mouse button order

Miryoku QMK

Miscellaneous small issues:

  • move layers enum to manna-harbour_miryoku.h
  • add #define LAYER_STATE_16BIT
  • add note to update submodules when changing branches, or merge into upstream master instead
  • add note about merging miryoku branch with upstream QMK master: cherry pick instead, or drop [local] commits first
  • add note on erasing EEPROM if non-0 default layer set in previous keymap (set_single_persistent_default_layer())
  • turn off all unused features that might be enabled by default at the keyboard level to reduce firmware size
  • investigate via / vial
  • add docs on getting started with a new keyboard
  • change workflow to append to custom config and custom rules
  • document docker builds
  • Disable auto shift when on Tap layer, from #18

Reorganise Miryoku Repositories

Mods Customisations and Changes

Support various mods customisations. E.g.

  • Ctrl / Gui swap for Mac for implementations lacking that feature
  • Reordering mods for user preference
  • Disabling mod-tap to prevent accidental mods (use mods on sub layers)
  • Enabling one shot mods on sub layers
  • Removing AltGr when not needed
  • Per-key tapping term
  • Per-key mod tap behaviour

Fix mods issues:

  • Option to use right mods on right, see #22

Miscellaneous Small Issues

Miryoku

Miryoku QMK

  • Move layers enum to manna-harbour_miryoku.h
  • Add #define LAYER_STATE_16BIT
  • Add note to update submodules when changing branches, or merge into upstream master instead
  • Add note about merging miryoku branch with upstream QMK master: cherry pick instead, or drop [local] commits first
  • Add note on erasing EEPROM if non-0 default layer set in previous keymap (set_single_persistent_default_layer())
  • Turn off all unused features that might be enabled by default at the keyboard level to reduce firmware size
  • Investigate via / vial
  • Add docs on getting started with a new keyboard
  • Change workflow to append to custom config and custom rules
  • Document docker builds
  • Disable auto shift when on Tap layer #18
  • Disable auto shift for Tab #242
  • Add shift function to RGB_TOG
  • Add option to not shift - in Caps Word #202

Miryoku ZMK

Miryoku KMonad

  • Add support to substitute defsrc in custom_config.h
  • Add Caps Word in place of Caps Lock and combine with Shift for Caps Lock, when Caps Word and key overrides are available in KMonad (from #51)

Miryoku Babel

  • Auto generate miryoku_layer_selection.h or replace with make
  • Add shift function to RGB_TOG

Miryoku Oryx

  • Add Button layer
  • Add Extra layer
  • Add Tap layer
  • Add layer lock
  • Change mouse button order
  • Add Caps Word in place of Caps Lock and combine with Shift for Caps Lock, when support for key overrides is available in Oryx (from #51)
  • Fix paren for Moonlander #201

Miryoku KMK

NOREVERSEANGLE option causes kmonad parse error

Normal GitHub Actions workflow builds are working fine for me. But if I try to use the NOREVERSEANGLE option, I receive a parse error from kmonad when I try to run it:

kmonad: Parse error at 15:3:
   |
15 |   tap q w e r i o p [ ]
   |   ^
unexpected 't'
expecting ')'

For context, here are more of the lines around this:

(defsrc
  grv 1 2 3 4 8 9 0 - =
  tap q w e r i o p [ ]
  caps a s d f k l ; ' ent
                z x c , . /
)

I'm not up to speed on the syntax, but it doesn't like the t in tap.

If you want to repro it, these are the parameters for the workflow I'm using:

MIRYOKU_CLIPBOARD=MAC
MIRYOKU_MAPPING=NOREVERSEANGLE
MIRYOKU_KMONAD_OS=MAC

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.