Skip to content

Commit

Permalink
rewrite!
Browse files Browse the repository at this point in the history
  • Loading branch information
barkloaf committed Jun 1, 2021
1 parent a0928d2 commit 05fad2f
Show file tree
Hide file tree
Showing 26 changed files with 5,961 additions and 621 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# releases dir
releases/
695 changes: 674 additions & 21 deletions LICENSE

Large diffs are not rendered by default.

77 changes: 66 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,42 @@
# United States (Reformed International)
A sensible version of the US-International keyboard layout for Windows, including with AltGr dead keys.
<p align="center">
<img src="https://wildcard.yiff.church/i/qhly0d6v.png" />
</p>

# <p align="center">United States (Reformed International)</p>
<p align="center">A sensible version of the US-International keyboard layout with AltGr dead keys for Windows, Mac, and Linux.</p>

## Table of Contents
- [The Problem](#the-problem)
- [The Standard](#the-standard)
- [The Reform](#the-reform)
- [Installation](#installation)
- [Windows](#windows)
- [KLC (Recommended, no 3rd party software required)](#klc-recommended-no-3rd-party-software-required)
- [AutoHotkey](#autohothey)
- [PKL](#pkl)
- [Mac](#mac)
- [Keylayout](#keylayout)
- [Linux](#linux)
- [XKB](#xkb)
- [Credits](#credits)

## The Problem
The included Windows keyboard layout for United States (International) is subpar. Here is a list of things the Windows US-International layout does not have that are usually included in layouts such as the one included on Linux:
I originally made this layout because included Windows keyboard layout for United States (International) is subpar. Here is a list of things the Windows US-International layout does not have that are usually included in layouts such as the one included on Linux:
* The `œ` ligature
* Left and right facing quotation marks `` ``
* The breve, caron, double acute, ogonek, macron, overdot, underdot, and overring diacritical marks
* The lack of the option for dead keys activated by `AltGr`, which means that single symbols that are also used as diacritical marks such as the `'` must be followed by a space

There was a very noble attempt to fix this madness by fellow GitHub user [thomasfaingnaert](https://github.com/thomasfaingnaert/win-us-intl-altgr). However, it only addresses the last problem, does not contain a copyleft-friendly license, and does not map a large number of precomposed letters with diacritics in Unicode.

But upon looking at the way US-International tends to be done, I realized some of its inefficiencies and nonsensical mappings. Therefore, I decided to reform the entire layout...
But upon looking at the way US-International tends to be done, I realized some of its inefficiencies and nonsensical mappings.
### Therefore, I decided to reform the entire layout. And due to the changes I made, I also decided to make this layout cross-platform!

## The Standard
This is the way that US-International is usually done in Linux and such, and will be compared against below:
![US-International](https://wildcard.yiff.church/i/im1h033s.png)
## The Reform
![US-Reformed-International](https://wildcard.yiff.church/i/ojm2ddcf.png)
![US-Reformed-International](https://wildcard.yiff.church/i/qhly0d6v.png)

This is my keyboard layout that aims to fix the problems with given US-International implementations. Here is a list of the changes with their justifications:
* `ł` and `Ł` replace `ø` and `Ø` at `AltGr`+`l` and `AltGr`+`Shift`+`l` respectively.
Expand All @@ -33,17 +55,50 @@ This is my keyboard layout that aims to fix the problems with given US-Internati
* The caron is also sometimes called an inverted circumflex. Because of this, it seems only natural that the inverted circumflex should go right next to the normal circumflex (at `AltGr`+`Shift`+`6`).
* Cedilla is added to `AltGr`+`Shift`+`7`.
* The Cedilla is used in some common languages such as French (~77 million speakers) and Portugese (~223 million speakers), which is nothing to sneeze at. It is somewhat similar looking to the ogonek (at `AltGr`+`Shift`+`8`), so it was put right next to it.
* Dead currency is added to `AltGr`+`Shift`+`4`.
* This lets you type many different currency symbols! Check the source files for the mappings.
* `£` is moved from `AltGr`+`Shift`+`4` to `AltGr`+`4`.
* See above. The dead keys on this row are all on `AltGr`+`Shift` modifiers.
* Solidus is added to `AltGr`+`Shift`+`/`.
* The keyboard already has a `/` key, and many languages and currency symbols across the world use letters with a solidus diacritic.
* `` replaces `®` at `AltGr`+`Shift`+`r`
* `` replaces `®` at `AltGr`+`Shift`+`r`.
* The `®` is already at `AltGr`+`r`. Replacing it fixes the fact that it is redundant. `` was its successor because of the fact that we often say "Registered Trademark" in the Anglosphere, and for meme value.
* Dead keys are only activated by `AltGr`
* This is what I was talking about earlier with AltGr dead keys. It's the only sensible way to have dead keys.
* Non-breaking space and Zero-width space are added to `AltGr`+`Space` and `AltGr`+`Shift`+`Space` respectively.
* These are some fun and sometimes quite useful characters. Being spaces, it only makes sense to include them on the `Space` key.
* Combination diacritical marks are added to a given dead dead key combination followed by `Space`
* Most of the time, `Space` following a dead key combination prints the spacing character for the diacritical mark the dead key is used for. This is not very useful, because most dead keys such as `~` and `'` have their own non-dead key combination and can be typed anyway. It also locks out the possibility of putting the diacritics on leters that would otherwise not have a precomposed entry in Unicode. For example, n-diaeresis (``) is not a precomposed character in Unicode. With the Reformed layout, it can be typed with `n` followed by `AltGr`+`Shift`+`'` followed by `Space`. This is technically two characters, but it looks completely natural due to Unicode's combination diaeresis character. This feature can also be used to type letters with multiple diacritics. You can even get as crazy as `ņ̨̣̃́̈̄̌̂̆̊̇` if you so truly wish!
* **Dead keys are only activated by `AltGr`**
* This is what I was talking about earlier with AltGr dead keys. It's the only sensible way to have dead keys.

Hopefully, these changes make typing with various diacritics and non-English orthographies easier.
## Installation
Download the latest `us-refor.zip` on [the releases tab of this repo](https://github.com/barkloaf/US-Reformed-International/releases). Extract it and run `Setup.exe`.
# Installation
## Windows
Pick **one** (1) of the install methods below
### KLC (**Recommended**, no 3rd party software required)
Download the latest `klc.zip` from [the releases tab of this repo](https://github.com/barkloaf/US-Reformed-International/releases). Extract it and run `Setup.exe` from the folder.
To apply the layout, go to Windows settings > `Time & Language` > `Language` > `English (United States)` > `Options` > `Add a keyboard` > `United States (Reformed International)`

Alternatively, you may download the source code file `klc/us-refor.klc` and open it in [Microsoft Keyboard Layout Creator](https://www.microsoft.com/en-us/download/details.aspx?id=22339). An installer is created by going to `Project`>`Build DLL and Setup Package`. Run `Setup.exe` from the resulting folder.

### AutoHothey
Presuming [AutoHotkey](https://www.autohotkey.com) is installed, download the latest `ahk.zip` from [the releases tab of this repo](https://github.com/barkloaf/US-Reformed-International/releases). Extract it and run `us-refor.ahk` from the folder.

**Note:** This version of the layout is untested. If there are any issues, please document them on the [issues page](https://github.com/barkloaf/US-Reformed-International/issues).

### PKL
Download the latest `pkl.zip` from [the releases tab of this repo](https://github.com/barkloaf/US-Reformed-International/releases). Extract it and run `pkl.exe` from the folder.

**Note:** This version of the layout is untested. If there are any issues, please document them on the [issues page](https://github.com/barkloaf/US-Reformed-International/issues).

## Mac
### Keylayout
Download the latest `keylayout.tar.gz` from [the releases tab of this repo](https://github.com/barkloaf/US-Reformed-International/releases). Extract it and run `install-system.sh` or `install-user.sh` from the folder.

**Note:** The `AltGr` key on Macs is either `Option` key.

## Linux
### XKB
Download the latest `xkb.tar.gz` from [the releases tab of this repo](https://github.com/barkloaf/US-Reformed-International/releases). Extract it and run `install-system.sh` as root followed by `scripts/install-user.sh` as user from the folder.

Alternatively, you may download the source code file and open it in [Microsoft Keyboard Layout Creator](https://www.microsoft.com/en-us/download/details.aspx?id=22339). An installer is created by going to `Project`>`Build DLL and Setup Package`. Run `Setup.exe` from the resulting folder.
# Credits
The auto-generated files and scripts in this repo were created by [`klfc`](https://github.com/39aldo39/klfc)!
Loading

0 comments on commit 05fad2f

Please sign in to comment.