Author Topic: Remapping (Dvorak, Colemak, other keys, etc)  (Read 4590 times)

0 Members and 1 Guest are viewing this topic.

Offline blastoid

  • Thread Starter
  • Posts: 143
Remapping (Dvorak, Colemak, other keys, etc)
« on: Sat, 14 March 2015, 09:21:06 »
I wanted a place to discuss some thoughts regarding layout switching, how we do it, and some possible alternatives. Specifically, when Qwerty still needs to be available in case a co-worker, SO, child, etc. needs to use your PC for a minute.

The obvious path of least resistance is to remap the keys at the OS level. This is easy to do and can be changed on the fly. But on my Windows PCs, I have found that if I leave the US layout enabled, the system seems to occasionally "decide" to switch back. Also, at least back in Windows XP, the layout was application-specific, so you might switch apps and discover that the layout had changed.

Currently, on my W8.1 laptop, I have discovered that Ctrl+Shift (without hitting another key) switches layouts. Odd, because the only shortcut mentioned in the Control Panel is Win+Space. It happens to me a lot when browsing, I want to un-close a tab with Ctrl-Shift-T, but I change my mind, so I release shift and BAM, layout change. Then Ctrl-T for a new tab, but it now sees Ctrl-K and gives me a search prompt.

Another option I've used is DvAssist, but it hasn't been updated and doesn't always play well with my W7 desktop at work. I like having a tray icon that I can double-click to change layouts when needed, instead of having a keyboard shortcut that can be accidentally activated.

There's also the option (on Windows) of remapping keys in the registry, usually through a frontend like KeyTweak. That's currently how I'm accomplishing a few key swaps, like RAlt -> Win on my Model M, and Esc <-> Backtick and Backspace <-> Backslash. The downside to those is that there are no on-the-fly changes, as the system reads the keymap from the registry on boot.

Neither of those software mapping solutions work in a pre-OS environment such as a rescue situation. Now, generally, you won't be typing out anything significant and that won't really matter. But still.

Of course, what may be the best solution is remapping in hardware. I have a WASD V2 coming on Wednesday, with a Dvorak DIN switch. I'm also looking forward to the Pok3r for the same reason. But if I undo my software map, I lose the ability to switch layouts for others, at least not without (possibly) disconnecting the keyboard, flipping it over, figuring out which switch is for Dvorak, etc.

Once I have a hardware Dvorak board at work, I may keep a Qwerty board plugged in and available. That would solve it, and it would have the added benefit of giving me an excuse to have more keyboards sitting on my desk. ;)

Perhaps I could make (or maybe someone already has?) an AHK Dv -> Qw converter to leave any current mappings alone, whether they're hardware or software, but run this one exe to begin mapping keys out to standard. For me, at least, it's very seldom that others need to use my PCs, so that would be a workable solution.

Sorry, this is a bit rambly. Just wanted to get some thoughts out.

Offline keyhopper

  • Posts: 81
  • Fun is Key.
Re: Remapping (Dvorak, Colemak, other keys, etc)
« Reply #1 on: Sat, 14 March 2015, 13:01:23 »
In windows you can change the layout switch hotkey from CTRL+SHIFT
to ALT+SHIFT which I find is better. See the attached screenshot.

For linux, I use CTRL+ALT+K

There is also a way to make Windows boot using dvorak layout, so you can type your password in dvorak, I don't remember it now, but I think it involved changing one registry key.
RealForce 87UB 55gr    |    IBM Model M (1995)    |    Razer B.W.T.E. Stealth (w Razer oranges)

Offline Oobly

  • * Esteemed Elder
  • Posts: 3929
  • Location: Finland
Re: Remapping (Dvorak, Colemak, other keys, etc)
« Reply #2 on: Mon, 16 March 2015, 08:30:01 »
I just use Alt-Shift to swap layouts. You can set the default layout to be your preferred layout and then any program which opens will open with your preferred layout selected unless it was left with QWERTY selected when you closed it.

You could also use a keyboard with a hardware custom layout, but then you need to either also have a QWERTY board available or if the board has switchable layout (like the Code for instance) you have to switch it with the DIP switches. OS level and Alt-Shift is easier and allows you to use any physical board.
Buying more keycaps,
it really hacks my wallet,
but I must have them.

Offline orihalcon

  • Posts: 95
Re: Remapping (Dvorak, Colemak, other keys, etc)
« Reply #3 on: Tue, 17 March 2015, 00:19:31 »
Soarer's converter will let you switch between layouts of any type with the ifselect command.  You can set that shortcut to enable the select layer to be whatever you want.  Good thing about that is you can move the converter from keyboard to keyboard and take your layouts with you to your other boards. I have prebuilt compact adapters available, but you can make them yourself as well using Soarer's instructions.

Offline Macsmasher

  • Posts: 462
  • Location: Portland, OR
Re: Remapping (Dvorak, Colemak, other keys, etc)
« Reply #4 on: Tue, 17 March 2015, 03:41:48 »
As a Colemak guy, I feel your pain. And I'm a software developer. My host OS is Win8.1 Enterprise running nine VMs in Hyper-V for dev and testing, which means each of my VMs need Colemak installed.

I use keyboard shortcuts as much as possible and know exactly what you're talking about regarding Win8.1 switching back to Qwerty. Since I'm the only person using my workstation, I tried uninstalling the Qwerty layout. But whenever most Microsoft OS updates are applied, they reinstall Qwerty.

To further complicate things, because of my HHKB Pro2, I learned to love my Backspace key being right above Enter. So I have an AHK script that swaps Backspace with Backslash for my other keyboards (Realforce TKL, variable and 55g). Since I'm too lazy to install AHK and the script on my VMs, when working in those I have to remember to use the 'real' Backspace key.

At this point in tech, I think the best solution is at the hardware level. But I'm not willing to give up my Topre switches, so I'm stuck with what I've got. I have Win10 on a VM for testing, but it doesn't look like it will address any of my issues.

I've heard talk of a fully programmable USB dongle into which you would plug your keyboard that would remap keys sent to the computer. And I assume that would also apply below the OS at the BIOS level. I did some googling a couple of years ago and came across some dongle from Scotland or something hahaha. Anyway, nothing readily available.

I even talked about making one with a dev that works for me on occasion specializing in C++ hardware level drivers and machine level stuff. In fact, we wrote a software package for a keyboard reseller for diagnosing keyboard issues last year that's used around the world today. So I know it can be done. I'm actually kind of surprised nobody has done it actually.

Does anybody know of anything like that that's currently available?

Offline j-c

  • Posts: 6
Re: Remapping (Dvorak, Colemak, other keys, etc)
« Reply #5 on: Tue, 17 March 2015, 05:06:41 »
I have successfully used a compiled version of AutoHotKey - called pkl http://pkl.sourceforge.net
(Portable Keyboard Layout)
it works very well - it remaps you whole keyboard or you can create your own mappings and load them at will.
I used it to try colemak but my brain seems to be hard-wired for qwerty :(
I would recommend that to you as it is just an exe that runs and does what you need and you can switch it off for others using the pc.
It is just windows based though.
hope that helps.
jc

Offline beestingza

  • Posts: 9
Re: Remapping (Dvorak, Colemak, other keys, etc)
« Reply #6 on: Sat, 04 April 2015, 20:34:56 »
As a Colemak guy, I feel your pain. And I'm a software developer. My host OS is Win8.1 Enterprise running nine VMs in Hyper-V for dev and testing, which means each of my VMs need Colemak installed.

To further complicate things, because of my HHKB Pro2, I learned to love my Backspace key being right above Enter. So I have an AHK script that swaps Backspace with Backslash for my other keyboards (Realforce TKL, variable and 55g). Since I'm too lazy to install AHK and the script on my VMs, when working in those I have to remember to use the 'real' Backspace key.


Hey, I'm a Colemak convert also using a HHKB on both W7 and OSX. I suffer the continuous reversion back to Qw when in Windows also which sux.

One thing that I was wondering since you are a Colemak user, was if you had tried to remap your Ctrl/Caplock key to backspace. I love using it that way (along with many other function layer tweaks using Karabiner on my mac), but haven't had any success getting that particular remap to work in Windows yet with my HHKB. I can do it with any other keyboard, but not with my baby. Any ideas?

Offline Macsmasher

  • Posts: 462
  • Location: Portland, OR
Re: Remapping (Dvorak, Colemak, other keys, etc)
« Reply #7 on: Tue, 07 April 2015, 20:12:09 »
As a Colemak guy, I feel your pain. And I'm a software developer. My host OS is Win8.1 Enterprise running nine VMs in Hyper-V for dev and testing, which means each of my VMs need Colemak installed.

To further complicate things, because of my HHKB Pro2, I learned to love my Backspace key being right above Enter. So I have an AHK script that swaps Backspace with Backslash for my other keyboards (Realforce TKL, variable and 55g). Since I'm too lazy to install AHK and the script on my VMs, when working in those I have to remember to use the 'real' Backspace key.


Hey, I'm a Colemak convert also using a HHKB on both W7 and OSX. I suffer the continuous reversion back to Qw when in Windows also which sux.

One thing that I was wondering since you are a Colemak user, was if you had tried to remap your Ctrl/Caplock key to backspace. I love using it that way (along with many other function layer tweaks using Karabiner on my mac), but haven't had any success getting that particular remap to work in Windows yet with my HHKB. I can do it with any other keyboard, but not with my baby. Any ideas?


No, I use AHK to swap Backspace with Backslash on my Realforce boards, which positions Backspace right above Enter so it's just like my HHKB. I like keeping Control on home row because of my reliance on keyboard shortcuts.