summaryrefslogtreecommitdiffstats
path: root/docs/feature_userspace.md
diff options
context:
space:
mode:
authorJack Humbert <jack.humb@gmail.com>2017-10-21 23:44:11 +0200
committerGitHub <noreply@github.com>2017-10-21 23:44:11 +0200
commit06f196c589b3c8c70c6cda6e95db6d1a2bf6e80b (patch)
treea346452e61bf8047d18c9a6d4863cc4ac63a5717 /docs/feature_userspace.md
parent9bb259b660925c7a5cd64b3a0a4484cdf757b504 (diff)
downloadqmk_firmware-06f196c589b3c8c70c6cda6e95db6d1a2bf6e80b.tar.gz
qmk_firmware-06f196c589b3c8c70c6cda6e95db6d1a2bf6e80b.tar.xz
Creates a userspace for keymaps (#1559)
* create a user space * adds example * document, add readme.md * jackhumbert userspace, ergodox keymap
Diffstat (limited to 'docs/feature_userspace.md')
-rw-r--r--docs/feature_userspace.md33
1 files changed, 33 insertions, 0 deletions
diff --git a/docs/feature_userspace.md b/docs/feature_userspace.md
new file mode 100644
index 000000000..edc9f6e32
--- /dev/null
+++ b/docs/feature_userspace.md
@@ -0,0 +1,33 @@
+# Userspace: sharing code between keymaps
+
+If you use more than one keyboard with a similar keymap, you might see the benefit in being able to share code between them. Create your own folder in `users/` named the same as your keymap (ideally your github username, `<name>`) with the following structure:
+
+* `/users/<name>/` (added to the path automatically)
+ * `readme.md`
+ * `rules.mk` (included automatically)
+ * `<name>.h` (optional)
+ * `<name>.c` (optional)
+
+`<name>.c` will need to be added to the SRC in `rules.mk` like this:
+
+ SRC += <name>.c
+
+Additional files may be added in the same way - it's recommended you have one named `<name>`.c/.h though.
+
+All this only happens when you build a keymap named `<name>`, like this:
+
+ make planck:<name>
+
+For example,
+
+ make planck:jack
+
+Will include the `/users/jack/` folder in the path, along with `/users/jack/rules.mk`.
+
+## Readme
+
+Please include authorship (your name, github username, email), and optionally [a license that's GPL compatible](https://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses).
+
+## Example
+
+For a brief example, checkout `/users/_example/` until we have more reasonable and useful examples. \ No newline at end of file