Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve default keybindings for Linux/Windows #215

Merged
merged 1 commit into from
Oct 30, 2015

Conversation

jhasse
Copy link
Contributor

@jhasse jhasse commented Oct 29, 2015

Currently the default key bindings on Linux and Windows aren't optimal. For example ctrl-alt-t is already used by most distros to open a terminal, see #163. In general it's uncommon for Linux apps to use ctrl-alt-* keybindings as they are usually used by system apps.

After looking through the issues, it looks to me that only people on Linux/Windows have problems with the default keybindings: #168, #198.

Also note that ctrl-alt-* has some problems on Windows, see this post which advises not to use them on Windows at all: atom/atom-keymap#35 (comment)

Last but not least they are rather uncommon among existing build apps like Sublime Text or CodeBlocks.

I've tried to find some new defaults, here is my reasoning for them:

  • f4 error-match: This is the keybindings Sublime Text uses.
  • shift-f4 error-match-first: Should be similar to error-match, therefore added shift.
  • f9 trigger: This is used by CodeBlocks for build and run
  • f7 select-active-target: To match Visual Studio's build shortcut. Maybe change to shift-f9?
  • f8 toggle-panel: A key between f7 and f9 :D I'm not sure about this one.

Also see #168 (comment) for suggestions.

What do you think? :)

@noseglid
Copy link
Owner

Thanks for looking into this so thoroughly! I like your reasoning and I'd be happy to merge changes to the keybinding. However, I think we will be better off if we leave the old keybindings in place and just add the keybindings you're suggesting. I don't see any reason to restrict them to Windows/Linux either.

@jhasse
Copy link
Contributor Author

jhasse commented Oct 29, 2015

You're right, that will result in fewer surprises when users update ;)
How can I add multiple keymaps?
Should all three be documented?

@noseglid
Copy link
Owner

You should add something like this to the keymaps.json

"atom-workspace, atom-text-editor": {
  "f9": "build:trigger",
  "f8": "build:toggle-panel",
  "f4": "build:error-match",
  "shift-f4": "build:error-match-first",
  "f7": "build:select-active-target"
}

in addition to what's already there.

I think it's sane to document them all.

@jhasse
Copy link
Contributor Author

jhasse commented Oct 30, 2015

Done :)

In the text, I left the changes for recommending cmd-alt-* for OS X and the new keybindings for Linux/Windows. IIRC f keys are rarely used on Mac and always need the Fn key on Macbooks.

@noseglid
Copy link
Owner

Great. thanks!

noseglid added a commit that referenced this pull request Oct 30, 2015
Improve default keybindings for Linux/Windows
@noseglid noseglid merged commit 4d16975 into noseglid:master Oct 30, 2015
@jhasse jhasse mentioned this pull request Apr 3, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants