转载于:https://ghui.me/post/2016/05/use-of-control-key/

Control键是所有类Unix系统(Mac, Linux)下一个非常有用的按键,但也是一个经常被忽视的按键,特别是在Mac平台下,Command键完全代替了在Windows平台下的Ctrl键,很多人不清楚为什么Apple又额外加了一个Control键,我想这和著名的Emacs编辑器有关,Emacs下有很多方便的快捷键,其中很多都需要用到Control键,Mac系统就原生继承了很多这些快捷键,下面就根据我在实际开发过程中遇到的具体情况来总结一下如何用好Control键,效率真能提高不少。

Control的常用组合键

移动类

  • Control-F 前进光标 (效果同右方向键)
  • Control-B 后退光标(效果同左方向键)
  • Control-P 光标上移(效果同上方向键)
  • Control-N 光标下移(效果同下方向键)
  • Control-A 光标移动到行首
  • Control-E 光标移动到行尾

删除类

  • Control-D 删除光标后面的一个字符
  • Control-H 删除光标前面的一个字符
  • Control-K 删除当前行光标以后的所有字符
  • Control-W 删除光标前的一个单词
  • Control-U 删除当前行的所有字符

其它类

  • Control-T 交换光标两边的字符
  • Control-L 清屏(仅适用于终端下)
  • 待补充…

一些常用场景

  1. 通常情况下,上下左右键都远离主键盘区,如果在你高速打字的过程中需要移动输入光标位置,这个时候直接通过上下左右键就不得不将右手移出主键盘区,就会降低输入的速度,通常这个时候你就可以通过Control的组合键达到快速移动光标的目的。再比如你在一些IDE(Xcode,Android Studio等)里面选择代码补全的不同候选项时,就可以通过Control-PControl-N来达到切换选择不同候选项的操作.

  2. Mac的键盘上没有HomeEnd键, 如果你想将光标快速移动到行首与行尾就比较麻烦(当然你可以通过Command与-> 或Command与<-实现,但这样你又需要去操作方向键, 方向键远离主键盘区, 速度势必会降低), 这时你就可以通过Control-A 与 Control-E实现, 这两个组合键非常适合在终端下使用

  3. 有些时候你在终端下输入了很长的命令, 但发现输入有误, 需要完全删除重新输入, 通常情况下你都会使用Delete键去做, 但Delete只能一次删除一个字符, 速度很慢, 这时你就可以通过Control-U键快速的达到清除当前所有输入的目的, 再比如你当前的输入只有从中间某个位置向后是错误的, 这时你可以通过Control-BControl-F将光标移动到对应位置, 然后再利用Control-K快速达到删除当前光标后所有输入的目的

  4. 在输入的过程中如果发现个别字符不对需要删除重新输入, 你当然可以通过Delete键达到, 但 Delete键和方向键一样有点远, 更方便的你可以通过Control-D 与 Control-H实现, 还有些时候错的不是一个或几个字符,而是一个或几个单词你可以Control-W达到

  5. 在终端下如何清屏? 很多人都是通过输入clear达到, 但如果这时你终端里正输入的有一条待执行的命令,这条命令的输出可能有很多你想清一下屏后再执行, 你怎么办,总不能删除当前命令后再输入clear命令, 然后再重新输入刚才的那条命令吧, 其实这时你可以通过Control-L组合键达到目的,这个差不多是我在终端下用的最多的一个快捷键了.

交换Control与Caps Lock键的位置

其实看了上面那么多介绍, 你可能并不以为然,并不觉得Control键有多方便, 那是因为你的Control键并没有那么容易按到, 如果可以把Control键放到一个很容易按到的地方就万事大吉了, 其实键盘上有另外一个很容易按到的按键 Caps Lock键, 这个按键并不太常用, 你完全可以把ControlCaps Lock这两个键做一下交换, 或者干脆把Caps Lock键也映射为Control键,并不做交换,而是完全弃用Caps Lock键. 下面说一下如果在Mac平台下替换这两个键:

打开Mac的 系统设置-键盘-修改按键 具体如下图:

至于Linux下如何做, 大家可以自行Google, 之前我做过, 设置起来没有Mac下方便, 但也是可以实现的.

后记

  • 正是因为Control键这么好用, 有些知名的键盘(比如我正在用的HHKB)就默认将Control键放到了Caps Lock键的位置, 这样就可以直接使用,不用再做额外设置.
  • Control键好按了, 很多Vim下的快捷键用起来也会更顺手比如 Control-R反撤销, Emacs下的就更不用说了
    hhkb type-s

用好你的Control键(针对类Unix系统用户)相关推荐

  1. Unix及类Unix系统文本编辑器的介绍

    概述 Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.VIM是纯粹的自由软件. Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Em ...

  2. UNIX家族及类UNIX系统

    UNIX家族及类UNIX系统 BSD FreeBSD NetBSD OpenBSD Sun Solaris SCO UNIX Darwin MINIX Linux DOS和它的接班人 DOS Wind ...

  3. 【转载】Linux等类Unix系统学习用书那点事儿!

    Linux并不是一个比windows更神秘的系统. 是的Linux没有MSDN,但Linux和相关软件的文档绝对不比MSDN要少记得,一个看官方网站的文档,一个google.我想,大多问题都会解决的. ...

  4. 又一位纯手工打造CPU的牛人,并且汇编语言实现类Unix系统,支持文件系统

    作者:安富莱电子,排版:晓宇 微信公众号:芯片之家(ID:chiphome-dy) 硬件设计:     GR8CPU是在面包板上构建功能齐全的计算机.第一个版本GR8CPU Rev2拥有600多条电线 ...

  5. Linux 及其它类 Unix 系统的系统服务管理和控制程序(初始化系统/init system)简单梳理

    文章目录 一.Linux 的启动过程 二.初始化程序 (一)System V init (二)Upstart init (三)systemd (四)Launchd (五)Epoch (六)Mudar ...

  6. MinGW —— Minimalist GNU for Windows、Cygwin —— Windows 下的类 unix 系统

    0. 楔子 Windows 下显然是没有 gcc 编译器的.对于一些软件或者工具如果想要在 Windows 平台下运行,而又需要依赖 gcc 编译其中的一些基于 C/C++ 实现的代码. 此时就借助 ...

  7. 类Unix系统下,vim各种模式之间的切换

    文章目录 普通命令模式 插入模式(编辑模式) 临时切换到普通命令模式 可视模式(文本选择模式) 底行命令模式(EX 命令模式) 普通命令模式 vim 的默认模式就是普通命令模式, 使用 vim 打开文 ...

  8. python3编程入门_在类Unix系统上开始Python3编程入门

    >>> s 'Hello' >>> x = len(s) >>> print("The length of %s is %d" ...

  9. 记录linux启动次数的脚本,类UNIX系统中启动脚本记录

    #程序运行时进程名称(唯一) EXE_NAME="" #此语句表示先杀掉存在的进程 for PID in `ps -ef | grep -v grep | grep Java | ...

最新文章

  1. HTTP的KeepAlive是开启还是关闭?
  2. 使用ASP.NET广告控件的XML语言创建广告链接--ASP.NET
  3. python使用opencv_教你快速使用OpenCV/Python/dlib進行眨眼檢測識別!
  4. Unity Failed executing external process for 'Bake Runtime' job
  5. Java基础学习总结(113)——异常最佳实践
  6. adx-desc-adtype统计
  7. openfeign seata事务不回滚_Spring,你为何中止我的事务?
  8. 拼音转换成汉字html,汉字转换成拼音的种(转)
  9. NNDL 实验六 卷积神经网络(4) ResNet18实现MINIST
  10. bitcoin全节点搭建
  11. JeecgBoot 2.1.1 代码生成器AI版本发布,基于SpringBoot+AntDesign的JAVA快速开发平台
  12. 给老笔记本换固态硬盘,能提升系统速度吗?
  13. 【负荷预测】布谷鸟(CS)算法优化BP神经网络的负荷及天气预测(Matlab代码实现)
  14. js html页面切换效果,jQuery实现切换页面过渡动画效果
  15. django学习问题及解决方法
  16. 极路由+NETGEAR 传输无线网络
  17. 如何挑选一双合适的童鞋
  18. JavaScript----marquee滚动标签 图片无缝滚动 插入百度地图
  19. 限制input框只能输入数字,加减号也不可以输入
  20. CSS入门教程——字体

热门文章

  1. 网盘的暴力营销,你们的脸遮遮掩掩
  2. 生产环境使用 pt-table-checksum 检查MySQL数据一致性【转】
  3. debussy和modelsim联合仿真配置
  4. 计算机课堂热身游戏,简单的两款小游戏,带你回味和同学在电脑课上的时光
  5. 为什么学python?怎么学?怎样算学会?
  6. C++中cout、cin和endl的用法
  7. android loadsvm raw,OpenCV机器学习:Android上利用SVM实现手写体数字识别
  8. C语言版,传教士与野人渡河问题,使用深度优先搜索法求解(DFS),变态版,随便输入人数和船的最大载人数,人工智能经典题目,简单易懂,注释到位,没有bug
  9. 如何写好科研论文(笔记)
  10. 双系统linux哪种好,双系统安装实战,这个Linux系统超级简单