TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

New Hyper Key

66 pointsby joshbetzalmost 8 years ago

12 comments

vhost-almost 8 years ago
I used to use software to map keys. I religiously want to get rid of caps lock and use it as escape... but I also want control near by.<p>But let me tell you something; if you are a power user, then relying on software to map keys kind of sucks. I couldn&#x27;t dual boot windows and linux without everything getting screwed up. I also can&#x27;t easily switch from mac to linux when I get off work. So I decided to start buying fully programmable keyboards and doing all of it at the firmware. I use QMK (<a href="https:&#x2F;&#x2F;github.com&#x2F;qmk&#x2F;qmk_firmware" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;qmk&#x2F;qmk_firmware</a>) and do very similar things to op. For instance, where my caps lock is, I have set to tap for escape, hold for function layer and where tab is, I have tap for tab and hold for control. There&#x27;s a ton of other bindings I have, but these are the heavy hitters that have made me very happy.<p>I killed Karabiner Elements. I removed my software bindings in Widnows and deleted my Xmodmap file in Linux because I can finally just plug a keyboard into a computer and have it behave the same everywhere.<p>The only drawback is laptop keyboards. I really wish those were programmable (if anyone knows of a way, I would love to hear about it ;)). I have to start Karabiner once in a while when I don&#x27;t have one of my keyboards handy, or if I&#x27;m floating around coffeeshops.
评论 #14751382 未加载
评论 #14750285 未加载
评论 #14749869 未加载
评论 #14751733 未加载
lunixbochsalmost 8 years ago
A buddy just PoC&#x27;d a key binding system for OS X to do arbitrary complex remappings like this (exactly to facilitate nonstandard esc, ctrl, hyper usage), represented as one or more state machines similar to this syntax:<p><pre><code> STATE1: caps down: ctrl+alt+cmd down STATE2 STATE2: caps up: ctrl+alt+cmd up press esc STATE1 after 1000ms, default: ctrl+alt+cmd up STATE1 </code></pre> This would allow us to layer, say, half qwerty on top of hyper with the same system. Or map caps to esc and ctrl, and map caps+shift to hyper, or a non-meta like tab to hyper.<p>Also could do state transitions on external events (like new app focused), and execute templated applescript.<p>An easy state machine to build would be this, which would prevent keypresses after focus stealing:<p><pre><code> STATE1: new window focused: STATE2 STATE2: after 250ms: STATE1 default: drop keypress STATE2</code></pre>
eyeballalmost 8 years ago
I just bought an ergodox ez (ergodox-ez.com) that has hyper and meh keys built in.<p>Quite a learning curve for the new layouts so far, but I think it will be great once I have it down.<p>For now, ctrl-alt-del is a big pita.
评论 #14750532 未加载
评论 #14754981 未加载
LambdaComplexalmost 8 years ago
Slightly off-topic: Why is JSON so popular for this sort of thing? I think it&#x27;s fine for programs communicating with each other, but I really don&#x27;t understand why anyone would want to have to match brackets when writing a configuration file
评论 #14749725 未加载
评论 #14749642 未加载
评论 #14749690 未加载
评论 #14750850 未加载
pasbesoinalmost 8 years ago
Not to be confused with the actual, crufty old HYPER key, I guess. Which I&#x27;m reminded of solely because it was mentioned in something I was reading, yesterday.<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Space-cadet_keyboard" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Space-cadet_keyboard</a><p>More on-topic: Suggestions for comparable utilities on Linux as opposed to Mac? (Not complaining about Mac; just don&#x27;t use one.) I&#x27;ve run across a few, without yet using any. Wonder what others use.
评论 #14750539 未加载
arnarbialmost 8 years ago
It&#x27;s a very personal preference of course, but I can&#x27;t recommend higly enough to try mapping caps to command. My wrists are very grateful.<p>As a vim user I use Ctrl+[ for escape. I like it because it is a standard system mapping, so it works everywhere. Further, many systems (incl macOS) have standard options to map caps to control, so I can carry the habit pretty much everywhere, even if using someone else&#x27;s computer temporarily.
评论 #14749568 未加载
评论 #14750502 未加载
评论 #14750864 未加载
bmn__almost 8 years ago
The heading does not fit with the article body. I don&#x27;t quite understand what it is about, but I can see it&#x27;s not about Hyper keys.<p>If you lack a physical Hyper key and want to change Capslock into Hyper, simply run:<p><pre><code> xkbcomp -xkb $DISPLAY -o my.xkb perl -0777 -i -pe&#x27;s&#x2F;key &lt;CAPS&gt; [{]\K[^}]+&#x2F;[ Hyper_L ]&#x2F;ms&#x27; my.xkb xkbcomp my.xkb -o $DISPLAY xev # for testing</code></pre>
jweatheralmost 8 years ago
I don&#x27;t have the muscle memory to use CapsLock as Control, but I have enjoyed using it as a shortcut to double-click the left mouse button. Probably a symptom of the visual programming environments I use most of the time, but it does reduce strain on my clicker finger. For &quot;hyper&quot; duties the Windows key is conveniently located and easy to map in AutoHotKey.
lreevesalmost 8 years ago
I believe you need to add the .json extension in your Karabiner URL for this to work - once I did that locally I finally have my hyper key back! Thanks!
评论 #14749655 未加载
phylleralmost 8 years ago
Does anyone else feel reluctant to install a tool that allows a link on a website to remap your keyboard? Am I misunderstanding this?
keithnzalmost 8 years ago
on windows I use autohotkey, and you can make it program specific what happens, like<p><pre><code> SetTitleMatchMode, RegEx #IfWinActive .*Microsoft Visual Studio|JetPopupMenuView|ReSharper|.*GVIM|.*Visual Studio Code Capslock::Esc #IfWinActive</code></pre>
Animatsalmost 8 years ago
Mandatory XKCD: <a href="https:&#x2F;&#x2F;xkcd.com&#x2F;1172&#x2F;" rel="nofollow">https:&#x2F;&#x2F;xkcd.com&#x2F;1172&#x2F;</a>