5 ms·
I have recently started trying to learn colemak[^3], and came across the great cross-platform tool Amphetype[^1]. You can load in whatever document you want as
by davisoneee 4y ago
I have recently started trying to learn colemak[^3], and came across the great cross-platform tool Amphetype[^1].
You can load in whatever document you want as a source, and it'll randomly select chunks of whatever size you want (i.e. about 200 words-worth). It then gives you analysis of your performance, as well as breaking down what trigrams and words cause you the most trouble.
Combine this with ngram training to get the muscle memory of the most common chunks of english and you can really quickly improve your fluency [^2].
1: https://gitlab.com/franksh/amphetype https://gitlab.com/franksh/amphetype
2: https://ranelpadon.github.io/ngram-type/ https://ranelpadon.github.io/ngram-type/
3: https://gnusenpai.github.io/colemakclub/ https://gnusenpai.github.io/colemakclub/
- vlmutolo 4y agoDo you use Vim or a modal editor? I’ve been considering switching to Colemak, but I can’t figure out how I’d get past the fact that hjkl would be in a different spot. I could change the shortcuts in software, but then it starts a cascade of changed shortcuts. Plus, I could then only use software that I’ve specifically configured. How do you SSH into a server?
- micimize 4y agoThis is a pretty unavoidable downside of alt keyboard layouts. For vim you'd probably want a plugin like https://github.com/jooize/vim-colemak https://github.com/jooize/vim-colemak. If you maintain your QWERTY muscle memory, you can use it as a fallback in foreign environments, but figuring out how to smoothly setup RC files on any target is probably the ideal: https://serverfault.com/questions/400522/how-to-use-a-custom-bashrc-file-on-ssh-login https://serverfault.com/questions/400522/how-to-use-a-custom... Personally. I gave up on Dvorak in part due to this friction when I started introducing more and more tools like Vimperator (Firefox plugin, superseded by Tridactyl) into my workflow. The flexibility of switching on a vim mode anywhere and having it be 95% what I want is very high. The other factor was I still did a lot of same-machine peering then, which it added a lot of friction to. I do know highly capable engineers who go fully down the typing-ergonomics rabbit hole and stay there, but it does consume a fair amount of one's yak-shaving budget.
- bovine3dom 4y agoFWIW in Tridactyl we literally just yesterday merged a PR [1] that lets you use an arbitrary layout (QWERTY by default) for Tridactyl binds while keeping your real layout for everything else like text input. It will turn up in the next beta release within a few weeks. [1]: https://github.com/tridactyl/tridactyl/pull/4439 https://github.com/tridactyl/tridactyl/pull/4439
- davisoneee 4y agoI am a heavy user of vim, but recently purchased a ZSA moonlander keyboard so I have easy access to a layer with arrows. I usually search to nav or do line jump them w or f, so not having hjkl isn't an issue.
- vlmutolo 4y agoI also use the Moonlander, and I’ve thought about using home-row arrow keys for navigation. I’m glad to hear this is working for you.
- davisoneee 4y agoIncase it's of use, here's the layout I've ended up with after around a month's worth of tweaking (still tweaking it, but this is mostly stable in terms of the functionality I use). Some factors may not work for you depending on how small your hands are, but I can reach left-pinky 'caps lock' (escape, with arrow-y layer on hold) down to the furthest thumb key. https://configure.zsa.io/moonlander/layouts/DN9zM/latest/5 https://configure.zsa.io/moonlander/layouts/DN9zM/latest/5
- mkl 4y agoI use a Moonlander (and similar) and the Workman layout, and have it so holding my right little finger home key activates a layer with arrow keys in the Vim movement key positions.
- antipotoad 4y agoFWIW, I learned Vim as a QWERTY touch-typist, then learned Dvorak, and it works just as well with Vim. I never changed any of the keybindings (and hjkl end up in reasonable places anyhow). Couldn’t say if Colemak would work similarly well, but if your mental mapping for Vim commands is character-based (as opposed to position-on-keyboard-based) I imagine it would. Worst case I suppose you could always revert to QWERTY.
- vlmutolo 4y agoI think I would be ok with just accepting the new positions of the movement keys, but hjkl ended up in absolutely atrocious positions. https://colemakmods.github.io/mod-dh/ https://colemakmods.github.io/mod-dh/
- 1MachineElf 4y agoDvorak is at least workable with Vim-style navigation. I use it, and so does notable-Vimmer ThePrimeagen, for example.
- alwayslikethis 4y agoI have colemak layout and use vim as default editor for all system configs. I don't use any plugin or anything else to remap the keys. At first, this feels very weird and unintuitive, because now the key for up is actually below the key for down. But over time you start to see Vim in a different way. You lose the muscle memory associating vim commands with key positions, and instead you form connections between the commands and the keys themselves. It starts to feel like you are talking to Vim on a higher level language. If i want to change this word to something, I don't think "press these keys in a sequence", I say "c i w" to Vim which would do it for me.
- rsolva 4y agoI use colemak and vim and it works just fine, but I first learned colemak and then got used to vim. I use the vim defaults, no custom keys. I tried customizing keys for a short while but quickly decided to keep to the defaults to make my muscle memory work on any box I log in to.
- the_duke 4y agoAs a point of warning: at some point I started learning Dvorak. I learned it well, switched to it completely, and it was great. Except that it was absolutely horrible. Not because of the layout, but: maybe it's just me, but I completely un-learned QWERTY. Every time I had to touch someone else's computer, or a phone, or work with some kind of QWERTY embedded keyboard, it devolved into either immediately switching the layout, or looking like a clueless old person doing one finger typing while staring at the keyboard.
- ravel-bar-foo 4y agoInteresting. I found I was able to naturally switch keyboards between machines and even OS'es on the same machine, but if I tried it within a single window it would confuse me. Ssh would freeze me up, too. But then I've been switching between natural languages in my day to day my whole life.
- davisoneee 4y agoI plan to put effort into maintaining qwerty. I can comfortably type qwerty with upwards of 100wpm and 99% accuracy (even right after doing a session on colemak). Right now, colemak is still in the 30-40 wpm stage, but only in last 2 or 3 days have been drilling it and got 10wpm jump.
- mistercow 4y agoYeah, that's super common. Apparently you can avoid it entirely by practicing half an hour a week with QWERTY, but who has time for that? I find that it's not much of a problem these days, because of phones. I keep my mobile keyboard in QWERTY, so I always have some memory of where those keys are, even though the finger movements aren't hardwired into my motor cortex anymore. I just checked, and going into it cold, I can squirm at about 35 WPM on QWERTY (vs 130 on Colemak). It's annoying, but serviceable if I'm using someone's computer for a few minutes. For a longer situation, if they're using a mac or linux, I can switch them to Colemak in about thirty seconds (I had to do that in some onsite interviews a few years back), and if it's Windows, having to use QWERTY is probably the thing I'm least annoyed about.
- 1MachineElf 4y ago
- micimize 4y agoThis reminds me of the a utility I made early in my career to type over quotes or fortune output with GNU Typist: https://github.com/micimize/type-quotes https://github.com/micimize/type-quotes. IIRC the included json sources were munged from fortune files. I think about it a lot in comparison to the vast swath of more ambitious or complicated projects I've done. Such a small script I threw together due to an immediate want, that still has merit and potential utility a decade later.
- vanderZwan 4y ago> You can load in whatever document you want as a source, and it'll randomly select chunks of whatever size you want Can it also select chunks sequentially so I don't lose the plot?
- davisoneee 4y agoYes, in the 'sources' tab, you can select 'in order' and it will work through sources in the order that you add them. You can also select 'difficult' or 'easy', and it will suggest lessons based on analysis of your previous performance (i.e. it will score the chunks compared to similar lessons you've completed in the past).
- dmix 4y agoHow do you import texts into Amphetype? Can you use a PDF or Kindle file of a book (and/or translate that) or do you have to have raw plaintext?
- davisoneee 4y agoI've not been using it overly long, but it seems to only accept plaintext, and basically generates lessons based on line-separated paragraphs (though don't quote me on that).