How to Design a Keyboard

This repository contains the source files for the book "How to Design a Keyboard." The book is written in Markdown format and can be built into PDF and EPUB formats using Pandoc.

About this project

This project is almost generated by GPT-4. I confirm the contents, however, sometimes the article includes wrong information. I'll improve step by step but my first achievement is fast release.

Building the Book

Prerequisites

  • Pandoc installed on your system

Build Instructions

  1. Open a command prompt or terminal in the folder containing the Markdown files.

  2. Run the following commands to build the book:

    • To build the English version:
      pandoc -M lang=en en/keyboard_design_book_en.md en/metadata_en.yml -s -o en/keyboard_design_book_en.epub
      pandoc -M lang=en en/keyboard_design_book_en.md en/metadata_en.yml -s -o en/keyboard_design_book_en.pdf
      
    • To build the Japanese version:
      pandoc -M lang=ja ja/keyboard_design_book_ja.md ja/metadata_ja.yml -s -o ja/keyboard_design_book_ja.epub
      pandoc -M lang=ja ja/keyboard_design_book_ja.md ja/metadata_ja.yml -s -o ja/keyboard_design_book_ja.pdf
      

How to Contribute

We welcome contributions to improve and expand the content of this book. Here's how you can contribute:

  1. Fork this repository: Click the "Fork" button at the top-right corner of this page to create your own copy of the repository.

  2. Run the following commands to build the book for each language (replace en or ja with the appropriate language code, and replace keyboard_design_book_en.md or keyboard_design_book_ja.md with the corresponding Markdown file for that language):

    • To build the English version:
      pandoc -M lang=en en/keyboard_design_book_en.md en/metadata_en.yml -s -o en/keyboard_design_book_en.epub
      pandoc -M lang=en en/keyboard_design_book_en.md en/metadata_en.yml -s -o en/keyboard_design_book_en.pdf
      
    • To build the Japanese version:
      pandoc -M lang=ja ja/keyboard_design_book_ja.md ja/metadata_ja.yml -s -o ja/keyboard_design_book_ja.epub
      pandoc -M lang=ja ja/keyboard_design_book_ja.md ja/metadata_ja.yml -s -o ja/keyboard_design_book_ja.pdf
      
  3. Create a new branch: Navigate to the cloned repository on your local machine and create a new branch for your changes:

cd keyboard-design-book
git checkout -b your-feature-branch
  1. Make your changes: Edit the keyboard_design_book.md file or any other relevant files to make your changes or additions to the book content.

  2. Commit your changes: Add and commit your changes to your local repository:

git add .
git commit -m "Description of your changes"
  1. Push your changes: Push your changes to your forked repository on GitHub:
git push origin your-feature-branch
  1. Create a pull request: Go to the original repository on GitHub and click the "New Pull Request" button. Select your forked repository and the branch containing your changes, and submit the pull request.

After you submit your pull request, the project maintainers will review your changes and, if everything is in order, merge your changes into the main repository. Thank you for your contributions!