document
This commit is contained in:
parent
9b4d3a04bb
commit
75b7d1411f
@ -52,15 +52,15 @@ A healthy project needs the perspective of many people.
|
|||||||
* Documentation - Suggest a clarification, simplification, correction, or other improvement.
|
* Documentation - Suggest a clarification, simplification, correction, or other improvement.
|
||||||
We need the perspective of people new to the project to see these things.
|
We need the perspective of people new to the project to see these things.
|
||||||
Sometimes just changing a word or two makes a big difference.
|
Sometimes just changing a word or two makes a big difference.
|
||||||
* [What we currently need from keybrd users](todo geekhack) lists tasks for the keybrd project's current stage of development.
|
* [Current user contributions](todo geekhack) highlights contributions that are needed for the keybrd project's current stage of development.
|
||||||
|
|
||||||
Text file documentation style guide:
|
Text file documentation style guide:
|
||||||
* Use Markdown with a .md suffix.
|
* Use Markdown with a .md suffix.
|
||||||
* "Underline" first-level (=) and second-level (-) headings (because easier to read in plain text).
|
* "Underline" first-level (=) and second-level (-) headings (because easier to read in plain text).
|
||||||
* Capitalize first letter of headings (no extra capitalization in headings).
|
* Capitalize first letter of headings (no extra capitalization in headings).
|
||||||
|
|
||||||
Submitting a Pull Request
|
Submitting a pull request
|
||||||
-------------------------
|
-------------------------
|
||||||
Pull Request is the preferred way to contribute code and documentation.
|
Pull request is the preferred way to contribute code and documentation.
|
||||||
If you want to contribute some other way, please make a request in the [GitHub issues](https://github.com/wolfv6/Keybrd/issues).
|
If you want to contribute some other way, please make a request in the [GitHub issues](https://github.com/wolfv6/Keybrd/issues).
|
||||||
|
|
||||||
|
@ -3,12 +3,13 @@ keybrd library for creating keyboard firmware
|
|||||||
keybrd library is an open source library for creating custom-keyboard firmware.
|
keybrd library is an open source library for creating custom-keyboard firmware.
|
||||||
The keybrd library allows keyboard designers to develop and publish their firmware simply as possible.
|
The keybrd library allows keyboard designers to develop and publish their firmware simply as possible.
|
||||||
|
|
||||||
keybrd library can support any keyboard configuration:
|
keybrd library supports any keyboard configuration:
|
||||||
* one-piece
|
* one-piece
|
||||||
* split with shift registers
|
* split with shift registers
|
||||||
* split with I/O expander
|
* split with I/O expander
|
||||||
* single-layer
|
* single-layer
|
||||||
* multiple-layer
|
* multiple-layer
|
||||||
|
* LED indicator lights
|
||||||
|
|
||||||
Multiple-layer keyboards can write symbols without using the shift key:
|
Multiple-layer keyboards can write symbols without using the shift key:
|
||||||
|
|
||||||
@ -54,4 +55,4 @@ Support
|
|||||||
keybrd tutorial_1 shows how to build a breadboard keyboard.
|
keybrd tutorial_1 shows how to build a breadboard keyboard.
|
||||||
The remaining [keybrd tutorials](tutorials) show how to create custom keybrd firmware.
|
The remaining [keybrd tutorials](tutorials) show how to create custom keybrd firmware.
|
||||||
|
|
||||||
Please ask questions in [keybrd library for keyboard firmware](geekhack todo) thread if something is not clear.
|
Please ask questions in [keybrd firmware library](geekhack todo) thread if something is not clear.
|
||||||
|
@ -1,13 +1,15 @@
|
|||||||
Change Log for keybrd library
|
Change Log for keybrd library
|
||||||
=============================
|
=============================
|
||||||
All notable changes to the keybrd project will be documented in this file.
|
All notable changes to the keybrd project will be documented in this file.
|
||||||
This project adheres to Semantic Versioning 2.0.0(http://semver.org/).
|
This project adheres to [Semantic Versioning 2.0.0](http://semver.org/).
|
||||||
|
|
||||||
keybrd version 0.x.x is for initial development.
|
keybrd version 0.x.x is for initial development.
|
||||||
keybrd version 1.0.0 will be released when the public API is stable.
|
keybrd version 1.0.0 will be released when the public API is stable.
|
||||||
|
|
||||||
<!-- Unreleased
|
<!--
|
||||||
------------------ -->
|
Unreleased
|
||||||
|
----------
|
||||||
|
-->
|
||||||
|
|
||||||
0.5.0 (2016-07-22)
|
0.5.0 (2016-07-22)
|
||||||
------------------
|
------------------
|
||||||
|
@ -3,7 +3,7 @@ version=0.5.0
|
|||||||
author=Wolfram Volpi
|
author=Wolfram Volpi
|
||||||
maintainer=Wolfram Volpi
|
maintainer=Wolfram Volpi
|
||||||
sentence=A library for creating custom-keyboard firmware.
|
sentence=A library for creating custom-keyboard firmware.
|
||||||
paragraph=<br>Create keyboards with any configuration:<br>one-piece, split with I/O expander, single-layer, multiple-layer
|
paragraph=<br>Supports split keyboard and multiple-layer configurations.
|
||||||
category=Device Control
|
category=Device Control
|
||||||
url=https://github.com/wolfv6/keybrd
|
url=https://github.com/wolfv6/keybrd
|
||||||
architectures=*
|
architectures=*
|
||||||
|
@ -1,24 +1,15 @@
|
|||||||
Tutorial 8b - creating and publishing your own keybrd extension library
|
Tutorial 8b - creating and publishing your own keybrd extension library
|
||||||
=======================================================================
|
=======================================================================
|
||||||
Publishing and listing your keybrd extension library allows others to find and install your library.
|
Publishing and listing your keybrd extension library allows others to find and install your library.
|
||||||
The keybrd extension library name should start with "keybrd_" so that it is easy for people to find.
|
The keybrd extension library name should start with "keybrd_" so that it is easy for other people to find.
|
||||||
|
|
||||||
The directory structure of the library depends on where it will be listed.
|
There are two ways to publish and list an Arduino library.
|
||||||
|
|
||||||
Publishing anywhere with listing on Arduino Playground LibraryList
|
Publishing anywhere with listing on Arduino Playground LibraryList
|
||||||
------------------------------------------------------------------
|
------------------------------------------------------------------
|
||||||
Arduino Playground LibraryList can list a library with any directory structure.
|
Publishing your keybrd extension library with the following directory structure makes it easy for others to understand.
|
||||||
The directory structure of your keybrd extension library can be as simple as:
|
|
||||||
|
|
||||||
keybrd_MyKeyboard/
|
keybrd_MyKeyboard/
|
||||||
class1.cpp
|
|
||||||
class1.h
|
|
||||||
class2.cpp
|
|
||||||
class2.h
|
|
||||||
..
|
|
||||||
instantiations_codes.h
|
|
||||||
instantiations_ports.h
|
|
||||||
instantiations_matrix.h
|
|
||||||
doc/
|
doc/
|
||||||
keybrd_MyKeyboard_guide
|
keybrd_MyKeyboard_guide
|
||||||
examples/
|
examples/
|
||||||
@ -26,13 +17,21 @@ The directory structure of your keybrd extension library can be as simple as:
|
|||||||
keybrd_MyKeyboard1.ino
|
keybrd_MyKeyboard1.ino
|
||||||
keybrd_MyKeyboard2/
|
keybrd_MyKeyboard2/
|
||||||
keybrd_MyKeyboard2.ino
|
keybrd_MyKeyboard2.ino
|
||||||
|
class1.cpp
|
||||||
|
class1.h
|
||||||
|
class2.cpp
|
||||||
|
class2.h
|
||||||
|
..
|
||||||
|
instantiations_codes.h
|
||||||
|
instantiations_rows.h
|
||||||
|
|
||||||
[Arduino playground](http://playground.arduino.cc/) is a wiki.
|
When your ready to list your keybrd extension library, go to the [Arduino Playground keybrd page](http://playground.arduino.cc/Main/keybrd).
|
||||||
Instructions for listing a library on the Arduino playgound LibraryList are at:
|
Arduino playground is a wiki.
|
||||||
http://playground.arduino.cc/Code/Library#Sharing
|
Links on how to edit the wiki are on the bottom left under "Participate".
|
||||||
|
|
||||||
Add your keybrd library to the Keyboard/Keypads sublist:
|
You can also add a picture of a keyboard that uses your keybrd extension library.
|
||||||
http://playground.arduino.cc/Main/InterfacingWithHardware#keyb
|
Uploading files to the Playground is not allowed for standard users.
|
||||||
|
So if you want to add a picture, it will need to be hosted somewhere else.
|
||||||
|
|
||||||
Publishing on GitHub with listing on Arduino Library-Manager and Arduino Playground LibraryList
|
Publishing on GitHub with listing on Arduino Library-Manager and Arduino Playground LibraryList
|
||||||
-----------------------------------------------------------------------------------------------
|
-----------------------------------------------------------------------------------------------
|
||||||
@ -79,10 +78,30 @@ Example library.properties file:
|
|||||||
Instructions for listing a library on Arduino Library Manager are at:
|
Instructions for listing a library on Arduino Library Manager are at:
|
||||||
https://github.com/arduino/Arduino/wiki/Library-Manager-FAQ
|
https://github.com/arduino/Arduino/wiki/Library-Manager-FAQ
|
||||||
|
|
||||||
[Arduino playground](http://playground.arduino.cc/) is a wiki.
|
After it has been accepted into the Arduino IDE Library Manager, add your keybrd extension library to the [Arduino Playground keybrd page](http://playground.arduino.cc/Main/keybrd).
|
||||||
After it has been accepted into the Arduino IDE Library Manager, add your library to the Arduino Playground LibraryList.
|
Arduino playground is a wiki.
|
||||||
Sign in at http://playground.arduino.cc/Main/LibraryList and add keybrd libraries to Keyboard/Keypads sublist:
|
Links on how to edit the wiki are on the bottom left under "Participate".
|
||||||
http://playground.arduino.cc/Main/InterfacingWithHardware#keyb
|
|
||||||
|
You can also add a picture of a keyboard that uses your keybrd extension library.
|
||||||
|
Uploading files to the Playground is not allowed for standard users.
|
||||||
|
So if you want to add a picture, it will need to be hosted somewhere else.
|
||||||
|
|
||||||
|
To publish a new release of a library that is already listed on Arduino Library Manager
|
||||||
|
|
||||||
|
1. Update the version in your library.properties file:
|
||||||
|
|
||||||
|
version=0.5.0
|
||||||
|
|
||||||
|
2. Commit
|
||||||
|
3. Create an annotated tag with the version number:
|
||||||
|
|
||||||
|
$ git tag -a v0.5.0 -m "version 0.5.0"
|
||||||
|
|
||||||
|
4. Push:
|
||||||
|
|
||||||
|
$ git push -u --tags origin master
|
||||||
|
|
||||||
|
Arduino will eventually publish your new release.
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
<a rel="license" href="https://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://licensebuttons.net/l/by/4.0/88x31.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" property="dct:title">keybrd tutorial</span> by <a xmlns:cc="https://creativecommons.org/ns" href="https://github.com/wolfv6/keybrd" property="cc:attributionName" rel="cc:attributionURL">Wolfram Volpi</a> is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.<br />Permissions beyond the scope of this license may be available at <a xmlns:cc="https://creativecommons.org/ns" href="https://github.com/wolfv6/keybrd/issues/new" rel="cc:morePermissions">https://github.com/wolfv6/keybrd/issues/new</a>.
|
<a rel="license" href="https://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://licensebuttons.net/l/by/4.0/88x31.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" property="dct:title">keybrd tutorial</span> by <a xmlns:cc="https://creativecommons.org/ns" href="https://github.com/wolfv6/keybrd" property="cc:attributionName" rel="cc:attributionURL">Wolfram Volpi</a> is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.<br />Permissions beyond the scope of this license may be available at <a xmlns:cc="https://creativecommons.org/ns" href="https://github.com/wolfv6/keybrd/issues/new" rel="cc:morePermissions">https://github.com/wolfv6/keybrd/issues/new</a>.
|
||||||
|
Reference in New Issue
Block a user