Web pages for dreymar.colemak.org
-
Anchor links on the same page only need "#anchor", not the page url.
-
Alt layout writeup!
-
Make it the first section under Layers. Update other sections to be more layout inclusive.
-
Move the links to Getreuer's and the AKL beginner's guides there from the links page, or keep both?
-
There's an abundance of newer layouts, keeping less QWERTY similarity and using more metrics than Colemak.
- The test of time has shown Colemak to be a well-made layout. Lots of work went into its design and testing.
- There are only a few of the many newer layouts about which similar claims may be made confidently.
- Some think the more metrics the merrier, but at the same time there's still a big need for human assessment.
-
Differences of priority lead to different ideal choices.
- Ease of learning/implementation (Colemak, Tarmak).
- Rolls (Cmk/etc) vs alternation (Gra/Gal/etc), ...
- To some extent, hardware/software options. For instance, standard implementations vs programmable keyboards.
- Languages used, and how much of each. Example:
J
is very rare in English, but not so in Spanish.
-
My suggestion: Colemak is very good for nearly everyone, as a "sweet spot" of priorities.
- I've used it for years and I'm very happy with it. It's remarkably well made and balanced.
- Decide on Vanilla vs DH, and whether to add further mods (cmk.org). Most implementations are ready-made.
- Compared to other worthy alternatives, Colemak is easy to learn.
- It keeps rarely used letters in their old positions, without losing anything important.
- It keeps punctuation in old positions, unless you opt for an add-on Sym ergo mod.
- It keeps ZXCV in place, which may or may not matter to you; it's a relatively harmless design choice.
- The Tarmak transitional layouts allow you to learn Colemak in up to five steps, should you wish to.
- If ease of learning and/or implementation matter to you, Colemak is definitely my suggestion.
- For its design concessions, Colemak keeps a very nice set of metrics, well suited for most users.
- Any issues that newer layouts try to solve, I've found to be either fixable by a little alt-fingering or easy to live with.
- Relative to popular newer layouts, Colemak generally has many nice rolls, which feels nice and flowy.
- On the downside though, more rolls usually leads to more suboptimal patterns such as redirects/pinballs.
-
If really set on venturing past Colemak, you could try out Gralmak.
- Graphite/Gralmak is new and very good, and has similarities with familiar layouts (row/column assignments, punctuation etc).
- Even if you end up wanting even more radical optimization, it can still be a useful stepping-stone.
- If after learning Gralmak for a while, you still want to proceed: Go on to full Graphite(-HB) or similar.
- On a side note,
YOU
isn't optimal on either: A redirect (QWERTYO;I
) on Colemak; a lateral stretch (QWERTYJOP
) on Graphite/Gralmak.
-
It's actually really hard to assess a new layout fairly, unless you're an expert – and even then.
- Every layout has its strong and weak points. You'll feel some good things but ignore some bad ones, and vice versa.
- It'll take time to understand a layout's choices. Especially when they affect typing flow, which you won't have at first.
- Before you are up to speed, it's not easy to notice what works and what doesn't at your full speed.
- Not all of us will ever type really fast!
- If something's mostly noticeable at above, say, 120 WPM and like me you'll probably never get there, what then?
- What you know beforehand will influence your experience.
-
I had a Discord chat with Supernova, an interested user. I could use this, more or less! (Edited further here.)
Having been an enthusiastic Colemak user for 18 years since 2007, I sometimes get questions like "Why haven't you changed to something newer? There's been a lot of developments, and newer metrics are now taken into account.". It's a fair question, sure enough. There's always a pot of gold glistening in the distance!
Well, to be honest I never saw a compelling reason to "upgrade" from Colemak, beyond the CAWS mod battery and my other tricks and tools. The perceived benefits seemed uncertain, and sure enough: After a few months, many users had found perceived or real flaws and chased on to the next "soup du jour". In the eye of that storm, Colemak is still a solid layout – even nearly 20 years after its inception.
I have a feeling that too many users, especially younger ones, easily get caught up in pretty endless goose chases and rabbit hole spelunking, and I don't want to contribute overmuch to that. A layout change is hard work, and if the gains from it are at best minor and at worst uncertain – well, then your time is better spent elsewhere unless you think a change would be major fun.
I honestly believe that there's a lot of misinformation out there, from people who don't try stuff out properly and/or guard their investments and/or are otherwise biased and misinformed. Places like Reddit are especially plagued with strongly worded opinionating, in my impression. You really shouldn't put stock in a newcomer's soap box agenda after trying a layout for, say, one month or three.
In the Alt Keyboard Layout Community, there's pretty much a consensus that some layouts are way oversold by their creators and followers. Dvorak, Workman, Norman, and, say, Halmak, still attract new users, when there are much better options. Really. For Dvorak, at least it's preinstalled on all OSes; but so is finally Colemak too.
At the same time, this could just as well be an argument for never leaving QWERTY in the first place, couldn't it? And I've really enjoyed doing that! What constitutes too little and too much may be individual, but I do believe that QWERTY and various minimalistic layouts like Minimak are too little.
To shine a little light on this confusing subject, I can recommend the two guides I linked to on my links page: Getreuer writes very well, and the AKL intro guide is a great introduction to the field.
As you see from the BigBag front page, the base layout is only the beginning. Extend, special dead keys and ergo mods are my main thing. And I'm having such a great time of it!
- My two thumb keys are a good example: The Repeat key does away with a lot of same-finger load, and the CoDeKey
- The Extend and Extend-tap layers are another excellent addition. I truly believe that you should learn such tools well if you haven't yet, as they will benefit you a whole lot more than chasing base layout perfection could ever do.
- Even if you do use Extend or something similar, getting to know its possibilities even better and optimizing your Ext-tap mappings etc is extremely useful. Trust me! I'm still discovering improvements after many happy years of use.
Still, what about all these new layouts, huh? Huh? [Box: A Quest For The Gral] Well, finally my curiosity got the better of me, and as a result I'm trying out one of the newer layouts. Feels really odd after having typed on Colemak for 18 years, I can tell you! I'm only around half my Colemak speed on Gralmak (my Graphite variant) yet, but I feel I have an idea of what it's about by now.
So far, my main impression is that both Gralmak and Colemak are good, and I won't be getting any substantial gains from the switch – apart from a satisfied curiosity and the fun and pain(!) of trying something new. Colemak-DH is a good and well thought-out layout. So is Graphite. The latter takes some factors into consideration that weren't yet considered back in 2014. Fine. But I honestly don't feel the differences much (yet?). They both have their stronger and weaker points. Some musings: - Graphite has some amazing n-grams, and more than Colemak it uses all three rows for them without much scissoring. - Colemak has a nice flow to it and some delightful home row rolls, but also some sticky spots here and there. - Colemak does of course have more redirects than Graphite. Notable examples are YOU, and WAS. More rolls makes for more redirects. - Writing YOU isn't great on either, just a little easier on Graphite. I've heard layout designers say that it's hard to make that word good on a good layout. - Writing PHYSICS is worse on Graphite (yes, I'm a phycisist). Every layout has some words that don't agree well with it. - For some awkward bigrams, alt-fingering helps a lot. Colemak `kn kl` and Graphite `sc sw` are good examples. This takes time to learn well. - You will get used to a number of weakish spots with time and experience, as long as they aren't too common. - If you start overthinking such weak spots though, I believe you won't be able to judge a layout fairly. I think this happens to many. - It won't matter to all, but Colemak is still easier to learn with more QWERTY and shortcut similarities. - Colemak keeping ZXCV in place is an asset to some, and so is the Tarmak learning method for gradual learning. As for Graphite vs the very similar Gallium, I tried both and Gralmak ended up with a sort of mix between them and some Colemak principles. - Like Colemak, I keep the symbol keys unchanged, instead using my Sym mod and special keys. This makes it easier to learn, too. - I prefer J in the middle and apostrophe on the side, like Gallium and Colemak have. This links in with the first point. - The only other difference between Gal and Gra is CV vs WZ. I first wanted to go with Gal to make the SC bigram easier, but now I'm on board with Gra keeping W on top and CV on lower row. - This is mainly because those are more in line with what we're used to. In the long run, that's not a strong argument, but it makes transitions easier. - The bigrams involved are fine either way, really.
There is no undisputed king of keyboard layouts, and there won't be. You get to a point where individual preference and usage patterns start to matter more than objective aspects, and then you can't agree on a one-layout-fits-all. I believe we're already about there, pretty much. New tech may yet change typing, but as it stands the main barrier to speed is mental load so a really good development should make it simpler, not more complex.
-
-
Platform box for Sequencing? And Modifiers?
- Colemak-eD too?
- Tarmak
DOWNLOADS
definitely should be boxed. But the Mac one doesn't show up?!
-
More likeable links?
- SteveP's layout app: https://play.google.com/store/apps/details?id=io.github.colemakmods.keyboard_companion
- Callum's Nonsense (web): https://callumoakley.net/nonsense/
- Callum's Gotta-Go-Fast: https://github.com/callum-oakley/gotta-go-fast
- ProfXwing/CSGO's CopyType: https://github.com/ProfXwing/copytype
-
Locale variants:
- Add more of the Forum locale topic
- I now put variant stuff in the EPKL repo, as that's where often I work with it. Link from the BBoT?
-
Contrast Compose to DKs.
- DKs: Many, harder to reach them, single trigger. Help images in EPKL. Some positions hard to remember.
- Compose: Often longer sequences, but more mnemonic. Can be kept on main layer.
-
Dictionary: Explain SFB, Curl/Angle/Wide, inward/outward/mixed rolls
-
Make Image2 and Image3 posts for the Image topic (topic 111)
- Image2: Keyboard images. State licencing for SVG (CC) vs others (Public Domain)
- Image3: Interesting designs, fun, logos, icons, etc
-
In tarmak.html, cannibalize part of the BIG BAG? HALP! section for a main page overview?
- The rest of the bag is so easily and clearly accessible from the Tarmak page now
- Also make platform boxes for the Tarmak implementations part
-
Functionality allowing links to a specific platform box with platform specified? As in
page.html#anchor?platform=win
. -
Make it so that clicking the text
PLATFORMS
shows the how-to screen again (only seen initially now). -
More likeable links:
- Pascal Getreuer's alt layouts guide: https://getreuer.info/posts/keyboards/alt-layouts/index.html
-
More consistent page and anchor naming
- A link like layers-extend.html#section-name is easier to use as you don't need to check the source code for it.
-
More consistent file naming
training > learning-training
too? At least,tarmak-intro > learning-tarmak
andtarmak > tarmak-steps
?- May be unwise to change page names too often, though? I may have links lying around in places where I don't think much about them.
-
More FAQ's so there's one for nearly everything ☑ Format them as spoilers. With the question as header: 🤔 ❓ "".
- See the https://www.colemak.org README for some generic Colemak beginner questions and answers
-
Flesh out the Monkeytype learning section: Colors, settings tips
-
Make bookmark links for page chapters, and add them to the menus. Example: DK mappings; Variants.
-
Update all content image links to local res/ locs. Replace Dropbox links with res/. Replace res/img/.
-
Add a smaller 'Platforms' menu to every platform-box.
-
Make a Co browser tab (fav)icon
-
Implement Jekyll in order to remove duplicating code!
- Take out everything except the content of the 'main' tag into default.html.
- Take out header in a separate 'include'
- Figure out a way to edit some portion of the default.html per page basis
-
Switch the places of the menu and Platforms icons so that when opening the menu, the icon doesn't have to move all across the screen -> increases animation smoothness.
-
Implement platform boxes at the appropriate places.
-
Fix the popup that shows during the first website visit.
-
Better alignment of images and text around them.
-
Change the style of spoilers so that they're more visible.
-
Change font to 'Open Sans' for easier-on-the-eyes reading.
-
Additional padding at the bottom of 'code' blocks.
-
Smaller logo.
-
Implement SASS/LESS for easier reading of the styles code.
-
Keep original image sizes.
-
Fix class names
-
Make an imgtxt class with italic and a line break after it? For image subtexts.
-
Validate html and css files
-
Rework the 'Platforms' menu visualisation.
- Let it open without delay.
- Make it smoother so it doesn't glitch/flicker.
- Make the icons smaller.
- Implement a sort of a 'Under construction' message for the Mac platform.
- Link to the MKBorregaard topic there.
-
A little more air before headings, in the style sheets? And a style for large text, without air.
-
Updated everything to the new DH standard (formerly DHm) from the old DHk. Images, explanations.
- 6s & 7s are now resolved as SteveP uses 6-left on staggered boards and 6-right on matrix
- Update some links with
platform=
syntax?- Maybe not necessary: The plaform files already have the platform selected, and other links are generally generic.
These notes were in the symbols/colemak file, regarding Colemak_eD:
// NOTE:
// - Missing: U017F long s; chevrons; horizconnector; wynn/yogh; some African
// d-tail; turned Cc/Ee++; latin epsilon/gamma (Berber); italic v;
// - Rare/dropped: U25CA lozenge (Mac; rare); kra (deprecated Inuktitut & IPA);
// union/intersection/includedin; integral (need a science/math deadkey; use esh in a pinch);
// numerosign (mostly Cyrillic; use N + masc.); squareroot (unworkable); function (use hook-f);
// U1E9E Capital German SS (disputed); U2033/U2032 double-/prime (cheat w/ acute/doubleacute?!)
// U2639/U263A/U27E8/27E9 sadface/smilingface/brackets (poorly implemented)
// - Oddly placed?: 'notsign'/'division' (placed by shape/association)?
// TODO: Compose/deadkeys: ligatures (fi/fl/ij); fractions/superior/subscripts; latin/IPA/currencies
// - For Currency: U2044 solidus/shilling; yen
// - For IPA/Latin: U026A/028F SmCap-I/Y; U0251/0252 script-a/turned-script-a; U0283 esh
// U028A lat-upsilon; U027E r-flap; U0294 glottal stop; U025C turned open e
// TODO: Make dead_stroke (for d/g/h/l/i/u) work!? Missing in compose files?
// Also, l-tilde, s/c/j/z/schwa hook?
// TODO: Unused dead_keys: iota, voiced_sound, semivoiced_sound
// (could enhance them like Colemak user 'ghen' suggests, for keys 3/4/5?):
// TODO: A Maths/science dead key? Latin/IPA? Greek? (Currency exists)
// TODO: Add superior/subscript # to dead_acute/grave; fractions to slash/stroke!?
// NB: This happens in the compose files under X11/locale, of which there are legion. :(
// Can one get away with changing only the various iso8859-# ones? Or just en_US.UTF-8 ?
// Since this lies outside the xkb folder, I might just post the code and where to paste it?
// TODO: For extra dead key mappings, could dead_abovering and dead_doubleacute be augmented?
// Make sure dead_hook has rhotic hooks for schwa and turned epsilon!
// Similarly with smallcap letters and their turned counterparts?
// TODO: Add IPA (broad English?) somewhere. Too few free slots, so it'll have to be by dead_keys.
// TODO: Phonetic 'colemak_curl' layouts with Curl-DH (it's best to rewire the whole layout in this case).
// DONE: Add Greek, Kyrillic and Hebrew phonetic Colemak layouts (nice for group 'switch' layout).
// DONE: Update the Tarmak and Mirrored layouts when Colemak[eD] is changed, using search-replace.
These notes are fairly old and outdated by now. They still contain some interesting elements.
- The gh-pages may not update immediately because of their CDN cache. So it may take up to 10 min for a push to take.
- To bypass this, request a non-existing version of the page as that'll break the cache:
• https://developer.mozilla.org/ - documentation for everything that has to do with HTML and CSS
• tag=element – the most used tags are:
<p> - paragraph
<p class="italic">
<a href="https://your.url"> - link
<a class="underlined">
<div class="quote">
<b>, <strong> - bold
<i>, <em> - italic
<img src="content/images/img.png" class="img-small"> ('alt' attribute is optional - displays when image cannot be displayed)
<img class="left"....
ul - unordered list
ol - ordered list (1,2,3/a,b,c)
<ul class="disc">
<ul class="circle">
<span> - separates a text so you can style it, for example if you want part of a sentence to be crossed with a line, go
<span class="linethrough">
• <!-- comment -->
• Spoiler template:
<div class="spoiler">
<p><span>Spoiler:</span></p>
<div class="spoiler-body">
SPOILER CONTENT HERE
</div>
</div>
• Platform box template:
<div class="platform-content">
<p>
</p><p>
</p>
</div>
• To display the characters '<' and '>', use < and > so that they're not interpreted as parts of a tag
• For blocks of code use <pre><code>...</code><pre> and remove all indentation(tabs) left of the code in between these tags
because the tabs will be shown as these tags format literally every space, tab and new line.
[Note: This is a copy of my Evernote document "Jekyll and Ruby"]
Check Linux (Ubuntu), Ruby and Jekyll versions:
lsb_release -a
jekyll -v && ruby -v
As of 2023-02, GitHub pages have these dependencies: Jekyll 3.9.3; Ruby 2.7.4 https://pages.github.com/versions/
Install Jekyll with Ruby on Windows WSL Bash using the Brightbox repo, Gem and Bundler:
sudo apt-get update -y && sudo apt-get upgrade -y
sudo apt-add-repository ppa:brightbox/ruby-ng && sudo apt-get update
sudo apt-get install ruby2.7 ruby2.7-dev build-essential dh-autoreconf
echo 'export GEM_HOME=$HOME/gems/' >> ~/.bashrc && echo 'export PATH="$PATH:$HOME/gems/bin"' >> ~/.bashrc
source ~/.bashrc
gem update && gem install jekyll bundler && bundler update
• WSL can be a little stupid as to which Ruby version it uses, so it may be best to be specific as above.
• Using apt-get install bundler
on WSL installed an outdated Ruby version (1.9.1) so I guess I shouldn't do that!
• Turns out it was because the WSL Ubuntu hadn't been updated in ages.
To avoid permission errors on the gem commands (write permission for /var/lib/gems/2.6.0/): Using sudo gem seems to work but isn't recommended! Instead, add this to your ~/.bashrc file, as shown above:
export GEM_HOME=$HOME/gems
export PATH=$HOME/gems/bin:$PATH
Now, go to the web root folder in the BigBagKbdTrix repo (not repo root but docs!) and build with Jekyll:
source ~/.bashrc
jekyll build
jekyll serve --watch
• I didn't need bundle exec
in front of the jekyll commands.
• At a later point, there was a version mismatch between the Gemfile (with GitHub Pages settings) and local installs.
• When that happened, using bundle exec jekyll
etc worked.
When you see 'Server running...', you should be able to browse the site locally on 127.0.0.1: http://localhost:4000/
Word has it, GitHub Pages don't support Jekyll v4+? So edit your Gemfile for realistic local builds:
# This will help ensure the proper Jekyll version is running.
# gem "jekyll", "~> 4.2.0"
...
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
gem "github-pages", group: :jekyll_plugins
GitHub Pages don't use either Gemfile nor Gemfile.lock, but their own Jekyll settings. So these files are relevant for local builds only.
gem install github-pages
"A simple Ruby Gem to bootstrap dependencies for setting up and maintaining a local Jekyll environment in sync with GitHub Pages". Sounds useful. I couldn't install it because of some incompatible library
error, though...