建立自己的键盘栈(shortcutkeyStack)

Posted asdfq

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了建立自己的键盘栈(shortcutkeyStack)相关的知识,希望对你有一定的参考价值。

建立自己的键盘栈(shortcutkeyStack)

作为一名开发者, 快捷键是必不可少的, 并且各种开发工具都有提供快捷键. 但是各种工具(IDE,编辑器)因为历史或者其他不可抗原因(比如键盘的布局就是一个很不符合人体功能学的东西), 导致了目前的会计诶按布局.
所以快捷键的主流习惯, 有 Eclipse 流, 有 Intelligent (webStorm, phoStorm, idea)流, 有 vim 流, 有sublime流. 现在 vscode 大热, 也就有了 vscode 流. 每种快捷键都有自己的习惯. 如果更换编辑器的话, 又要费一门心思去了解快捷键(最起码我第一件事就是去熟悉这个东西)
但是我们可以建立自己的一套机制, 当然如果你熟悉eclipse, 可以将其他的IDE更改为 eclipse 布局. 可我要说的是: 比如一个复制行操作(复制所选择的行), 默认快捷键是 ctrl(command) + alt + up/down, 不得不使用两个手, 并且两个手掌都要进行位移. 这对于我们的码农来说是一个生产力的极大伤害.
所以, 我想每个人都应该有一个方便快捷可用的快捷键体系, 我这里列举出我自己的, 仅作为一个分享和交流.
之所以没有说vim的强大, 是因为vim需要太多记忆与熟悉体系, 很多对 linux 系统不是很熟悉的人会感觉头大, 并且也只是强大,并不是好用的强大

我使用的是mac系统, 所以其中的是command, 如果是windows, 非常建议改建, 将 windows功能键 更改为 ctrl 键, 具体方法只好百度了, 发现是很好改的. mac 下就推荐神器 Karabiner 了, 非常好用,非常强大

功能整理

作为程序员, 其实操作ide最常用的功能就那么几个, 我们需要把这几个最常用的功能放在我们最容易按到的键位(最好是左手操作), 方便使用也高效.

常用
  • 浏览文件 command + r //非常顺手, 而且文件切换的时候经常会用到 vscode 默认 command+p, 我相信除非用右手, 否则一定是两个手. 如果你这个时候, 还在用着鼠标, 不得不切回来了.
  • 浏览方法或者功能 command + t // 同上

  • 复制行 command + shift + d // 这个很常用的功能, 但是 command + d 作为删除太常用了, 所以左手原则 + 好用的话, 就选择了这个
  • 删除行 command + d // 不解释
  • 跳转到最后编辑出 command + e //最常使用, 最容易触碰

  • 回退 command + 2 //我回退使用的很多, 但是前进就很少了. 我一般会用最后编辑的地方就行前进, 因为前进是回退的反操作~
  • command + 1 //代码提醒, 这个也是最常用的.
  • command + 3 // 跳转到git的下一个不同. 协作很多, 提交要注意, 所以我每次提交都很小心的比对一下. 这个很常用.
  • command + 4 // 跳转到下一处错误, 这个对于快速解决问题很好用
  • command + 5 // 合并当前区域, 没有展开, 展开去点击一下就可以了.

  • ctrl + d //选择下一个与当前相同的
  • 跳转到代码区块开头或者结尾 command + [/] //webstorm 比较强大, 可以支持, vscode 只有 toggle 的, 所以看自己喜好了
  • 跳转到代码区块开头或者结尾并选择 shift + command + [/]

  • 查看最近的文件 command + f3
  • 查看最近的修改文件 command + f4

其他, 或者不常用?
  • git 管理, 提交 ctrl + c // commit
  • git 管理, 解决冲突 command + k + c
  • git 管理, 查看文件历史 alt + h

基本上每个ide我都会更改成这个样子. 便于统一使用. 原则上是
好用, 好记 当然快捷键还有更多的设置.






以上是关于建立自己的键盘栈(shortcutkeyStack)的主要内容,如果未能解决你的问题,请参考以下文章

如何限制对象只能建立在堆上或者栈上

类的数据成员为数组,怎么样根据键盘输入的数据顺序建立对象?

Android中activity的四个启动模式

如何限制对象只能建立在堆上或者栈上(转载)

顺序栈的初始化,建立,插入,查找,删除。

栈内存和堆内存的区别