summary refs log tree commit diff
path: root/users
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2022-07-19 02:09:38 +0000
committerQMK Bot <hello@qmk.fm>2022-07-19 02:09:38 +0000
commite8b14a52de5deb7b2422362cb2dabeba21333058 (patch)
treef0c2287c166b01948db07ab5644e38d1229351c5 /users
parentc3f1ba7dd1673e28c852303c58eec876d38b6fed (diff)
parent7aea67980b0029739d6572f58951bc58e56bf7d5 (diff)
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'users')
-rw-r--r--users/noroadsleft/noroadsleft.c8
-rw-r--r--users/noroadsleft/noroadsleft.h3
-rw-r--r--users/noroadsleft/readme.md29
3 files changed, 25 insertions, 15 deletions
diff --git a/users/noroadsleft/noroadsleft.c b/users/noroadsleft/noroadsleft.c
index 28bfa9e6c6..80d18f4026 100644
--- a/users/noroadsleft/noroadsleft.c
+++ b/users/noroadsleft/noroadsleft.c
@@ -1,4 +1,4 @@
-/* Copyright 2020-2021 James Young (@noroadsleft)
+/* Copyright 2020-2022 James Young (@noroadsleft)
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -66,6 +66,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
                 }
             };
             return false;
+        case G_PWD:
+            if (record->event.pressed) {
+                clear_mods();
+                SEND_STRING("$( pwd | sed -e 's;^.*/keyboards/;;' -e 's;/;_;g')");
+            };
+            return false;
         case M_SALL:
             if (record->event.pressed) {
                 tap_code16(C(KC_A));
diff --git a/users/noroadsleft/noroadsleft.h b/users/noroadsleft/noroadsleft.h
index 12bb5b465a..1d1a547562 100644
--- a/users/noroadsleft/noroadsleft.h
+++ b/users/noroadsleft/noroadsleft.h
@@ -1,4 +1,4 @@
-/* Copyright 2020-2021 James Young (@noroadsleft)
+/* Copyright 2020-2022 James Young (@noroadsleft)
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -25,6 +25,7 @@ enum userspace_keycodes {
     G_PUSH,
     G_FTCH,
     G_BRCH,
+    G_PWD,
     M_SALL,
     M_UNDO,
     M_CUT,
diff --git a/users/noroadsleft/readme.md b/users/noroadsleft/readme.md
index e8279c0333..d32e66917f 100644
--- a/users/noroadsleft/readme.md
+++ b/users/noroadsleft/readme.md
@@ -19,25 +19,28 @@ Outputs a string that tells me the Git commit from which my flashed firmware was
 
 Some frequently used Git commands.
 
-| Keycode                             | Output                 | Output with <kbd>Shift</kbd> |
-| :---------------------------------- | :--------------------- | :--------------------------- |
-| [`G_PUSH`](./noroadsleft.c#L44-L48) | `git push origin `     | `git push origin `           |
-| [`G_FTCH`](./noroadsleft.c#L49-L58) | `git fetch upstream `  | `git pull upstream `         |
-| [`G_BRCH`](./noroadsleft.c#L59-L68) | `master`               | `$(git branch-name)`         |
+| Keycode                             | Output                                                | Output with <kbd>Shift</kbd>                          |
+| :---------------------------------- | :---------------------------------------------------- | :---------------------------------------------------- |
+| [`G_PUSH`](./noroadsleft.c#L44-L48) | `git push origin `                                    | `git push origin `                                    |
+| [`G_FTCH`](./noroadsleft.c#L49-L58) | `git fetch upstream `                                 | `git pull upstream `                                  |
+| [`G_BRCH`](./noroadsleft.c#L59-L68) | `master`                                              | `$(git branch-name)`                                  |
+| [`G_PWD`](./noroadsleft.c#L69-L74)  | `$( pwd \| sed -e 's;^.*/keyboards/;;' -e 's;/;_;g')`  | `$( pwd \| sed -e 's;^.*/keyboards/;;' -e 's;/;_;g')`  |
 
 `$(git branch-name)` is an alias for `git rev-parse --abbrev-ref HEAD`, which normally returns the name of the current branch.
 
+The `G_PWD` macro outputs a shell expansion that returns the current working directory in relation to `qmk_firmware/keyboards/`, and with the slashes replaced with underscores. I do a lot of keyboard refactoring in QMK, and this is a string I use regularly.
+
 ### Customized Keycodes
 
 I used to have a boolean variable that changed the functionality of these keycodes, but I no longer work in the environment that I wrote the functionality for, so I took it out. The keycodes still exist because all my `keymap.c` files reference the custom keycodes I defined.
 
 | Keycode                               | Action    |
 | :------------------------------------ | :-------- |
-| [`M_SALL`](./noroadsleft.c#L69-L73)   | `Ctrl+A`  |
-| [`M_UNDO`](./noroadsleft.c#L74-L82)   | `Ctrl+Z`  |
-| [`M_CUT`](./noroadsleft.c#L83-L87)    | `Ctrl+X`  |
-| [`M_COPY`](./noroadsleft.c#L88-L92)   | `Ctrl+C`  |
-| [`M_PASTE`](./noroadsleft.c#L93-L101) | `Ctrl+V`  |
+| [`M_SALL`](./noroadsleft.c#L75-L79)   | `Ctrl+A`  |
+| [`M_UNDO`](./noroadsleft.c#L80-L88)   | `Ctrl+Z`  |
+| [`M_CUT`](./noroadsleft.c#L89-L93)    | `Ctrl+X`  |
+| [`M_COPY`](./noroadsleft.c#L94-L98)   | `Ctrl+C`  |
+| [`M_PASTE`](./noroadsleft.c#L99-L107) | `Ctrl+V`  |
 
 ### [Emulated Non-US Backslash](./noroadsleft.c#L27-L37)
 
@@ -47,18 +50,18 @@ This macro simulates the Non-US Backslash key if I hold Right Alt and tap the ke
 
 Requires defining `ANSI_NUBS_ROW` and `ANSI_NUBS_COL` in `config.h` at the keymap level.[<sup>1</sup>](#footnotes)
 
-### [Emulated Numeric Keypad](./noroadsleft.c#L102-L116)
+### [Emulated Numeric Keypad](./noroadsleft.c#L108-L122)
 
 If I hold the Right Alt key, the number row (`KC_1` through `KC_0`) will output numpad keycodes instead of number row keycodes, enabling quicker access to characters like ™ and °.
 
-### [Emulated Extended Function Keys](./noroadsleft.c#L117-L131)
+### [Emulated Extended Function Keys](./noroadsleft.c#L123-L137)
 
 Similar to the emulated numpad, if I hold the Right Alt key with the Fn key, the function row (`KC_F1` through `KC_F12`) will output keycodes `KC_F13` throught `KC_F24`.
 
 
 ## License
 
-Copyright 2020-2021 James Young (@noroadsleft)
+Copyright 2020-2022 James Young (@noroadsleft)
 
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by