标签 快捷键 下的文章

掌握这些极致实用的快捷键,让你的 Linux 终端操作效率大幅提升。

学习 Linux 命令无疑是你的首要任务,但当你能熟练 运用命令行 之后,有另一样东西值得你去关注。

那就是终端快捷键!

如果你不知道如何利用它们提升终端会话的效率,那你就无法真正理解它们的重要性。

在本教程中,我将为你详细讲解顶级的终端快捷键,并且举例说明它们的用法。

在我逐一解释快捷键之前,先来看一下这个备忘录,它对我将在本教程中讨论的内容进行了概览:

快捷键功能描述
Ctrl + A光标快速跳至行首。
Ctrl + E光标快速跳至行尾。
Ctrl + U删除光标至行首的所有内容。
Ctrl + K删除光标至行尾的所有内容。
Ctrl + W删除光标前的一个单词。
Ctrl + L清空整个终端屏幕。
Ctrl + C停止正在执行的进程或命令。
Ctrl + D注销或退出终端。
Ctrl + Z暂停正在执行的进程(之后可恢复执行)。
Ctrl + R在命令历史中进行逆向搜索。
上箭头 从命令历史中显示先前的命令。
下箭头 从命令历史中显示后续的命令。
!!重复执行最近的命令。
!n重复执行命令历史中的第 n 条命令。
Tab自动补全命令,文件名或目录名。
连续按 Tab 两次列出所有可能的补全选项。
Ctrl + Shift + C复制所选文本或命令。
Ctrl + Shift + V粘贴已复制的文本或命令。
Ctrl + Shift + N打开新的终端窗口。
Ctrl + Shift + T在当前终端中打开新的选项卡。
Ctrl + TabCtrl + PageDown在终端的选项卡之间切换。
? 虽然我在这篇文章中用的是大写字母,但实际上我们不需要使用大写来输入它们。比如 Ctrl+A,意思是同时按下 Ctrl 键和 A 键,并不意味着需要同时按下 Shift 键和 a 键来输入大写的 A

接下来,我们更详细地看看这些快捷键如何使用。

1、Ctrl + A:光标切换至行首

当你在终端中按下 Ctrl + A 组合键,光标就会迅速跳到命令的起始处。这个功能在你需要修改一条长命令序列起始部分的时候十分实用。

例如,在以下示例中,你可以看到无论光标处在何位置,只需按下 Ctrl + A,光标就会立刻跳转至行首:

使用 Ctrl + A 快捷键在 Linux 终端内前往行首

2、Ctrl + E:光标切换至行尾

在使用终端的过程中,如果你想迅速跳到当前行的末尾,直接按下 Ctrl + E 组合键就可以了。

在下面的示例中,我使用了一段样本文本,并按下 Ctrl + E 来快速移动到行尾:

使用 Ctrl + E 在 linux 终端内前往行尾

3、Ctrl + U:删除光标位置至行首的内容

有些时候,你可能需要删除从光标位置到行首的所有内容。

此时,你只需使用左箭头键将光标移动至你想要开始删除的位置,然后按下 Ctrl + U

使用 Ctrl+U 从光标位置删除到行首的内容

? 在输完 sudo 命令输入密码时,不确定是否输入正确?没必要用退格键一路删除,只需简单地使用 Ctrl+U 快捷键重新开始输入密码即可。

4、Ctrl + K:从光标删除至行尾

如你所猜想,当你按下 Ctrl + K ,它会移除光标至行尾的所有内容(光标位置右侧的所有)。

使用这种快捷操作时,你先要把光标放在你想从那里开始删除的位置,然后按下 Ctrl + K,如下图展示的那样:

在 Linux 终端利用 Ctrl + K 删除光标至行尾的内容

5、Ctrl + W:删除光标前的一个词

我日常常用该快捷键,因为我时常打错命令,需要删除命令的一部分,这个时候只需要简单地按 Ctrl + W 就可以了。

当你按下 Ctrl + W 键时,它只会删除光标前的一个词:

在 Linux 终端通过按 Ctrl + W 删除光标前的一个词

6、Ctrl + L:清理终端显示(或者理解为整理显示内容)

按下 Ctrl + L 并不会彻底地 清空终端显示,但它可以整理显示内容。如果你向上滚动,你还能找到之前的命令和执行记录。

它与 clear 命令有所不同。clear 命令会消除历史记录,而且你会在命令历史中找到 clear 命令的执行。

但是当你按下 Ctrl + L 时,它只是整理当前屏幕的显示内容,并不会出现在历史记录中,因为它本身并不是一条命令。

比如在这个示例中,我执行了历史命令,随后按下 Ctrl + L 键进行了屏幕清理:

利用 Ctrl+L 清理 Linux 终端屏幕显示

7、Ctrl + C:终止当前进程/执行

有没有想要 停止进行中的命令,却不知所措,最后只好关闭终端呢?解决办法其实很简单,按下 Ctrl + C 就行了。

当你按下这一组键时,它将发送 SIGINT 信号以终别过程。

例如,在这里,我结束了正在执行的命令进程:

利用 Ctrl+C 终端快捷键来中止运行中的命令

最后,你会看到 ^C 符号,表示你按下了 Ctrl + C 来中止当前执行。

但是,有些进程可能不会被 Ctrl + C 信号所中止,此时,你可以使用 Linux 中的其他 中止信号 来终止。

如何在 Linux 中使用 SIGINT 和其它中止信号

8、Ctrl + D:退出登录或者退出终端

你总是可以使用 exit 命令来关闭 Shell 会话和终端。你也可以选择使用 Ctrl+D 快捷键。

当你按 Ctrl + D 时,如果你正在 SSH 中使用,它会结束会话,如果再次按下,它将直接关闭终端:

利用 Ctrl+D 来关闭会话

9、Ctrl + Z:暂停当前进程

总是杀掉命令并不是个好主意,因为你有可能需要重新启动过程。

这种情况下,你可以按 Ctrl + Z 来暂停当前的进程,然后可以从之前暂停的地方继续。

例如,在这里,我暂停了更新进程:

利用 Ctrl+Z 挂起一个进程

你想更多地了解 如何暂停命令及如何恢复它们 吗?这里有一篇为此准备的详细指南:

如何在 Linux 中暂停并稍后恢复一个进程

10、Ctrl + R:搜索命令历史

当你按 Ctrl + R 时,它会打开一个搜索模式的提示,从中你可以键入命令的任何部分,并将找到匹配你输入的字符串的命令。

一旦你找到那个命令,只需按 Enter 键,它就会执行那个命令。

例如,在这里,我搜索了 update,返回的结果是在 Ubuntu 中的仓库更新命令(sudo apt update):

利用 Ctrl + R 快捷键从历史记录中搜索命令

? 如果你对历史记录中的任何建议都不满意,可以使用 Ctrl+C 退出搜索模式。

11、上箭头:呈现命令历史中的上一条

当你按下上箭头 键时,命令历史中之前执行过的命令将会按次序逐一显示:

使用箭头键向下遍历历史记录

12、下箭头:呈现命令历史中的下一条

当你按下上箭头 键时,它会展示先前的命令,但在有些情况下,你可能无意间点击了多次,这时你希望展示之前已显示过的命令。

这个时候,你可以使用下箭头 键。

在以下图示中,我首先多次按下了上箭头键,然后为了返回到先前显示的命令,我按下了下箭头键:

使用箭头键向下遍历历史记录

? Page UpPage Down 键也可以用于同样的目的。

13、!!:重复最后一条命令

有时候,你可能需要重复执行一次或多次最近的命令,此时你只需要输入 !!(两个感叹号)即可:

!!

比如,在这里,我执行了一个 echo 命令,随后我用了 !! 来重复执行相同的命令:

!! 命令能够重复执行你最近在终端输入的命令

但是,这个快捷键最常用且最实用的场景是,当你忘记给命令加上 sudo。这样你无需重新输入整个命令,只需使用 sudo !! 就可以了

在 Linux 终端中使用 !! 快捷键的实践应用

? 一个类似的键盘快捷键是 Alt+.,这个快捷键会给你提供上一条命令的最后一个参数或部分。假设你刚使用了 ls /etc/apt/sources.list.d,现在你想进入这个目录。只需输入 cd 然后使用 Alt+. 就可以。这就如同你输入 cd /etc/apt/sources.list.d 一样。

14、!n:重播历史中的第 n 条命令

你可以通过执行 Bash 的 history 命令来查看命令历史,每个命令都会有一个相应的索引号:

history

从历史中选择命令

现在,假设我想要执行倒数第二个 echo 命令,我会这样使用:

!1998

15、Tab:命令自动补全

我认为这应是终端快捷键列表的首个条目。

在输入长命令时,你可以输入一部分,然后点击 Tab 键,它将为你进行自动补全。

例如,这里,我通过 Tab 键来自动完成我的脚本执行:

点击 Tab 来查看命令,选项与参数建议

16、Tab(连击两次):列出所有可能的自动补全

如果按 Tab 键无效果,那可能是因为当前输入的命令存在多种可能。

在这种场合,你可以连击两次 Tab 键,以列出所有可能的补全选项:

连击两次 Tab 键可列出所有可能的自动补全建议

✋ 接下来的一些快捷键取决于终端的模拟器。虽然这些快捷键应该适用于大多数的终端应用,但不能完全确定。

17、Ctrl + Shift + C:复制所选文本

复制终端中的文本,你需要先用鼠标选取文本,然后按下 Ctrl + Shift + C 来复制选中的内容:

按下 Ctrl+Shift+C 进行复制

18、Ctrl + Shift + V:粘贴已复制的文本

当你通过选取和按下 Ctrl + Shift + C 复制了文本后,你可以通过按下 Ctrl + Shift + V 在任何地方粘贴:

在终端按下 Ctrl+Shift+V 进行粘贴

19、Ctrl + Shift + N:打开新的终端窗口

当你按下 Ctrl + Shift + N 时,会打开一个新的终端窗口,且新窗口的工作目录与之前那个窗口内的工作目录相同:

20、Ctrl + Shift + T:开启新的终端标签页

就像使用网络浏览器一样,终端也支持开启多个标签页来进行不同的任务。要开启一个新的标签页,只需按下 Ctrl + Shift + T 就可以了:

21、Ctrl + Tab 或 Ctrl + PageDown:切换标签页

如果你按照之前的方式创建了多个标签页,你或许需要在它们之间进行切换。

为此,你可以使用 Ctrl + TabCtrl + PageDown

? 这可能更多是 Ubuntu 的功能。你可以通过 按下 Ctrl+Alt+T 键来打开新的终端窗口

接下来:必知的 Linux 命令

你喜欢这个“必备”键盘快捷键列表吗?可能你会对 最基本却必备的 Linux 命令列表 也感兴趣:

31 个最基本却必备的 Ubuntu Linux 命令

我明白起初你可能不容易记住所有这些终端快捷键。但通过不断实践,它们会逐渐深入你的肌肉记忆。

另外,你有一些没有在这里列出的钟爱的快捷键吗?欢迎在评论区分享。

(题图:MJ/992e3559-4ed7-4529-9aea-85d52484cccf)


via: https://itsfoss.com/linux-terminal-shortcuts/

作者:Sagar Sharma 选题:lujun9972 译者:ChatGPT 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

键盘快捷键让我专注于我要传递的内容,而不是它的外观。

从我记事起,我就一直在使用文字处理软件。当文字处理器从直接格式化转向利用样式来改变文本在页面上的显示方式时,这对我的写作有很大的推动作用。

LibreOffice 提供了多种样式,你可以使用它们来创建各种内容。 LibreOffice 将段落样式应用于文本块,例如正文、列表和代码示例。字符样式类似,只是这些样式适用于段落内的内联词或其他短文本。使用“ 视图 View -> 样式 Styles ”菜单,或使用 F11 键盘快捷键,调出样式选择器。

Image of LibreOffice styles

使用样式可以更轻松地编写更长的文档。看看这个例子:作为咨询实践的一部分,我写了很多工作簿和培训材料。一个工作簿可能有 40 或 60 页长,具体取决于主题,并且可以包含各种内容,例如正文、表格和列表。我的一些技术培训材料可能还包括源代码示例。

我有一个提供给客户的标准培训集,但我也做定制的培训计划。在处理自定义程序时,我可能会先从另一个工作簿导入文本,然后从那里开始工作。根据客户的不同,我可能还会调整字体和其他样式元素以匹配客户的样式偏好。对于其他材料,我可能需要添加源代码示例。

要使用直接格式输入示例源代码,我需要设置字体并调整工作簿中每个代码块的边距。如果我后来决定我的工作簿应该对正文文本或源代码示例使用不同的字体,我需要返回并更改所有内容。对于包含多个代码示例的工作簿,这可能需要几个小时来查找每个源代码示例并调整字体和边距以匹配新的首选格式。

但是,通过使用样式,我可以更新定义一次,为正文样式使用不同的字体,并且 LibreOffice Writer 会在所有使用正文样式的地方更新我的文档。同样,我可以调整预格式化文本样式的字体和边距,LibreOffice Writer 会将这种新样式应用到每个具有预格式化文本样式的源代码示例中。这对于其他文本块也是如此,包括标题、源代码、列表以及页眉和页脚。

我最近有了一个好主意,更新 LibreOffice 键盘快捷键以简化我的写作过程。我重新定义了 Ctrl + B 设置加粗强调字符样式,Ctrl + I 设置强调字符样式,Ctrl + 空格 设置取消字符样式。这使我的写作变得更加容易,因为我不必暂停写作,这样我就可以高亮显示一些文本并选择一种新的风格。相反,我可以使用新的 Ctrl + I 键盘快捷键来设置字符样式,它本质上是斜体文本。之后我输入的任何内容都使用强调样式,直到我按 Ctrl + 空格 将字符样式重置为默认的无字符样式。

Image of LibreOffice character styles

如果你想自己设置的,请使用“ 工具 Tools -> 自定义 Customize ”, 然后单击“ 键盘 Keyboard ”选项卡以修改键盘快捷键。

Image of LibreOffice keyboard customizations

LibreOffice 通过样式使技术写作变得更加容易。通过利用键盘快捷键,我简化了我的写作方式,让我专注于我要交付的内容,而不是它的外观。稍后我可能会更改格式,但样式保持不变。

图片来源:(Jim Hall,CC BY-SA 40)


via: https://opensource.com/article/22/6/libreoffice-keyboard-shortcuts

作者:Jim Hall 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

毫无疑问,微软的 VS Code是最好的开源代码编辑器之一。它与传说中的 Vim 不同,VS Code 不需要你是一个快捷键大师(LCTT 译注:以下都指键盘快捷键),开发者们对它大部分的功能都及其熟悉,且推崇备至。

但这并不意味着你不能成为快捷键大师,或者说你在 VS Code 中不应该使用快捷键。

在敲代码的时候,你可能需要用鼠标去执行其他的动作,比如在 VS Code 编辑器中切换终端,而此时你的代码流程会被打断,这是不是很讨厌?如果是的,那么你应该立即熟记下面这些 VS Code 有用的快捷键。

它不仅能帮助你摆脱鼠标,还能使你的生产力和工作效率得到提高。

那么,让我们来了解一下如何通过使用快捷键快速进行代码导航来进行快速编码。

有用的 VS Code 快捷键

免责声明。下面的这些快捷键是我在 VS Code 的使用中发现的较为有用的,你可以根据你的需要来发现更多有用的快捷键。

下面我还给出了 MacOS 用户的键盘快捷键。

1、显示所有命令

Windows/LinuxmacOS
CTRL + SHIFT + PF1SHIFT + ⌘ + PF1

我们从最有用的快捷键开始,这个快捷键能打开命令面板(列表),它提供了对 VS Code 所有功能的访问。

命令面板

这是一个非常重要的 VS Code 快捷键,因为即使你忘记了或不想记起其他任何快捷键,但你记得这个,那么你仍然可以使用命令面板进行各种操作,如创建新文件、打开设置、改变主题,还可以查看所有快捷键。

2、垂直和水平拆分 VS Code 编辑器

Windows/LinuxmacOS
CTRL + \⌘ + \

为了提高效率,但你又没有安装多个显示器,那么你可以通过水平或垂直分割 VS Code 的编辑器来一次查看多个文件的代码。

分割 VS Code 编辑区

要在多个编辑区间切换焦点,你可以使用数字键或箭头键。

Windows/LinuxmacOS
CTRL + 1/2/3⌘ + 1/2/3
CTRL + K CTRL + ←/⌘ + K ⌘ + ←/

3、切换集成终端

Windows/LinuxmacOS
CTRL + `⌘ + `

VS Code 中的集成终端是一个非常方便的功能,它可以让你在不切换窗口的情况下快速执行任务。要在编辑器中显示/隐藏终端,下面的快捷键会非常方便。

集成终端

但是,如果你跟我一样觉得 CTRL + 在键盘的角落位置而比较难按到,你可以打开命令面板执行View: Toggle Terminal` 命令来切换终端。

使用命令面板切换终端

4、转到文件

Windows/LinuxmacOS
CTRL + P⌘ + P

随着项目的壮大,查找文件可能会变得困难。因此,我建议,即使你使用鼠标,这个命令也能为你节省很多搜索和导航到版本库中的文件的时间。

转到文件

5、转到行

Windows/LinuxmacOS
CTRL + G^ + G

当你找到文件,你可能需要去到文件中指定的行增加或编辑代码,而如果这个文件包含了数千行代码,那么滚动代码将会浪费你大量的时间。而 CTRL + G^ + G 快捷键能让你快速的去掉指定的行。

转到行

另外,你也可以使用上面的转到文件的快捷键,在输入框中输入冒号 : 加行号,结果就跟转到行是一样的。

6、在整个项目中搜索

Windows/LinuxmacOS
CTRL + SHIFT + F⌘ + SHIFT + F

很可能你需要在整个项目中搜索一个文本、变量或函数,在这种情况下,上面的命令就非常方便,它会在侧边栏显示一个搜索输入框。

在项目中搜索

我们还可以在搜索的时候添加一些过滤器,比如使用 ALT+C 来启用大写匹配,ALT+W 用于匹配整个单词,ALT+R 用于启用正则表达式。

7、禅模式

Windows/LinuxmacOS
CTRL + K Z⌘ + K Z

想要在不受干扰的环境中工作以保持更专注? 你可以试试禅模式(先按下 CTRL + K,再按下 Z),它会隐藏所有 UI(状态栏、活动栏、面板和侧边栏)并仅在全屏上显示编辑器。

禅模式

要启用禅模式,你可以使用上面的快捷键或者打开命令面板执行 View: Toggle Zen Mode,要退出禅模式,你可以按两次 Esc 键。

8、将选择添加到下一次匹配中

Windows/LinuxmacOS
CTRL + D⌘ + D

这条命令能让你选择所选文本的下一个出现的地方,从而进行编辑。如果下一个匹配出现的位置与第一个相离较远,那这将会很方便处理。

查找下一个匹配

9、切换行注释

Windows/LinuxmacOS
CTRL + /⌘ + /

将光标移到行的开头,然后添加双斜杠进行注释,这种麻烦的操作我们可以用上面的快捷键来代替了。

注释代码

甚至,如果你想注释多行代码,你可以先通过 SHIFT+UP/Down 快捷键来选中多行,然后按 CTRL+/ 快捷键进行注释。

10、转到文件的开头或结尾

Windows/LinuxmacOS
CTRL + HOME/END⌘ + ↑/

如果你迷失在文件的中间位置,该命令可以让你快速达到文件的起点或终点。

11、代码折叠或打开

Windows/LinuxmacOS
CTRL + SHIFT + [/]⌥ + ⌘ + [/]

这也是最有用的快捷键之一,它可以帮助你折叠/取消折叠一个区域的代码。通过这种方式,你可以隐藏不必要的代码,每次只查看所需的部分代码,以便更加专注和快速编码。

折叠一块代码

12、窥视执行

Windows/LinuxmacOS
CTRL + SHIFT + F12⌘ + SHIFT + F12

这个快捷键最有可能的作用是帮助你进行代码分析,或修复 bug 时了解函数和变量的运行情况。

窥视执行

13、删除当前行

Windows/LinuxmacOS
CTRL + SHIFT + KSHIFT + ⌘ + K

这是一条可以快速执行,选中当前行并按删除/退格键,这两个任务的简单命令。

14、查找与替换

Windows/LinuxmacOS
CTRL + F⌘ + F
CTRL + H⌥ + ⌘ + F

用一个新的文本替换文件中所有出现的该文本的最好方法是什么?如果你手动一个一个的通过滚动代码来处理,且如果需要替换的地方又很多,那么你可能会花费大量的时间。

查找与替换

而使用查找和替换功能我们能在几秒内完成相同的任务。你可以用两个快捷键来打开它,其中一个实际上是打开用于查找文本的输入框,另一个用于输入新的文本。

15、VS Code 的全部键盘快捷键

Windows/LinuxmacOS
CTRL + K CTRL + S⌘ + K ⌘ + S

最后,如果你还在为记住上述所有的快捷键而苦恼,你大可不必。因为你可以使用上面的快捷键查看编辑器所有可用的命令。

快捷键

你还可以根据自己的喜好编辑命令的绑定键。

想要为 VS Code 添加更多快捷键?

如果你想对 VS Code 的快捷键有完整的了解,你可以查看 VS Code 的 文档

或者,如果你想在纸上将所有快捷键打印出来慢慢看,下面这些是各个系统对应的快捷键速查表: LinuxmacOSWindows


via: https://itsfoss.com/vs-code-shortcuts/

作者:Sarvottam Kumar 选题:lujun9972 译者:ywxgod 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Google Keyboard

操作鼠标、键盘和菜单会占用我们很多时间,这些可以使用键盘快捷键来节省时间。这不仅节省时间,还可以使用户更高效。

你是否意识到每次在打字时从键盘切换到鼠标需要多达两秒钟?如果一个人每天工作八小时,每分钟从键盘切换到鼠标一次,并且一年中大约有 240 个工作日,那么所浪费的时间(根据 Brainscape 的计算)为: [每分钟浪费 2 秒] x [每天 480 分钟] x 每年 240 个工作日 = 每年浪费 64 小时 这相当于损失了八个工作日,因此学习键盘快捷键将使生产率提高 3.3%(https://www.brainscape.com/blog/2011/08/keyboard-shortcuts-economy/)。

键盘快捷键提供了一种更快的方式来执行任务,不然就需要使用鼠标和/或菜单分多个步骤来完成。图 1 列出了 Ubuntu 18.04 Linux 和 Web 浏览器中一些最常用的快捷方式。我省略了非常有名的快捷方式,例如复制、粘贴等,以及不经常使用的快捷方式。读者可以参考在线资源以获得完整的快捷方式列表。请注意,Windows 键在 Linux 中被重命名为 Super 键。

常规快捷方式

下面列出了常规快捷方式。

打印屏幕和屏幕录像

以下快捷方式可用于打印屏幕或录制屏幕视频。

在应用之间切换

此处列出的快捷键可用于在应用之间切换。

平铺窗口

可以使用下面提供的快捷方式以不同方式将窗口平铺。

浏览器快捷方式

此处列出了浏览器最常用的快捷方式。大多数快捷键对于 Chrome/Firefox 浏览器是通用的。

组合键行为
Ctrl + T打开一个新标签。
Ctrl + Shift + T打开最近关闭的标签。
Ctrl + D添加一个新书签。
Ctrl + W关闭浏览器标签。
Alt + D将光标置于浏览器的地址栏中。
F5 或 Ctrl-R刷新页面。
Ctrl + Shift + Del清除私人数据和历史记录。
Ctrl + N打开一个新窗口。
Home滚动到页面顶部。
End滚动到页面底部。
Ctrl + J打开下载文件夹(在 Chrome 中)
F11全屏视图(切换效果)

终端快捷方式

这是终端快捷方式的列表。

你还可以在 Ubuntu 中配置自己的自定义快捷方式,如下所示:

  • 在 Ubuntu Dash 中单击设置。
  • 在“设置”窗口的左侧菜单中选择“设备”选项卡。
  • 在设备菜单中选择键盘标签。
  • 右面板的底部有个 “+” 按钮。点击 “+” 号打开自定义快捷方式对话框并配置新的快捷方式。

学习本文提到的三个快捷方式可以节省大量时间,并使你的工作效率更高。

引用

[Cohen, Andrew. How keyboard shortcuts could revive America’s economy; www.brainscape.com. [Online] Brainscape, 26 May 2017;](https://www.brainscape.com/blog/2011/08/keyboard-shortcuts-economy/)


via: https://opensourceforu.com/2019/11/keyboard-shortcuts-to-speed-up-your-work-in-linux/

作者:S Sathyanarayanan 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

那些常见编辑任务的快捷键可以使 Vi 编辑器更容易使用,更有效率。

学习使用 vi 文本编辑器 确实得花点功夫,不过 vi 的老手们都知道,经过一小会儿的锻炼,就可以将基本的 vi 操作融汇贯通。我们都知道“肌肉记忆”,那么学习 vi 的过程可以称之为“手指记忆”。

当你抓住了基础的操作窍门之后,你就可以定制化地配置 vi 的快捷键,从而让其处理的功能更为强大、流畅。我希望下面描述的技术可以加速您的协作、编程和数据操作。

在开始之前,我想先感谢下 Chris Hermansen(是他雇佣我写了这篇文章)仔细地检查了我的另一篇关于使用 vi 增强版本 Vim 的文章。当然还有他那些我未采纳的建议。

首先,我们来说明下面几个惯例设定。我会使用符号 <RET> 来代表按下回车,<SP> 代表按下空格键,CTRL-x 表示一起按下 Control 键和 x 键(x 可以是需要的某个键)。

使用 map 命令来进行按键的映射。第一个例子是 write 命令,通常你之前保存使用这样的命令:

:w<RET>

虽然这里只有三个键,不过考虑到我用这个命令实在是太频繁了,我更想“一键”搞定它。在这里我选择逗号键,它不是标准的 vi 命令集的一部分。这样设置:

:map , :wCTRL-v<RET>

这里的 CTRL-v 事实上是对 <RET> 做了转义的操作,如果不加这个的话,默认 <RET> 会作为这条映射指令的结束信号,而非映射中的一个操作。 CTRL-v 后面所跟的操作会翻译为用户的实际操作,而非该按键平常的操作。

在上面的映射中,右边的部分会在屏幕中显示为 :w^M,其中 ^ 字符就是指代 control,完整的意思就是 CTRL-m,表示就是系统中一行的结尾。

目前来说,就很不错了。如果我编辑、创建了十二次文件,这个键位映射就可以省掉了 2*12 次按键。不过这里没有计算你建立这个键位映射所花费的 11 次按键(计算 CTRL-v: 均为一次按键)。虽然这样已经省了很多次,但是每次打开 vi 都要重新建立这个映射也会觉得非常麻烦。

幸运的是,这里可以将这些键位映射放到 vi 的启动配置文件中,让其在每次启动的时候自动读取:文件为 .exrc,对于 vim 是 .vimrc。只需要将这些文件放在你的用户根目录中即可,并在文件中每行写入一个键位映射,之后就会在每次启动 vi 生效直到你删除对应的配置。

在继续说明 map 其他用法以及其他的缩写机制之前,这里在列举几个我常用提高文本处理效率的 map 设置:

映射显示为
:map X :xCTRL-v<RET>:x^M
:map X ,:qCTRL-v<RET>,:q^M

上面的 map 指令的意思是写入并关闭当前的编辑文件。其中 :x 是 vi 原本的命令,而下面的版本说明之前的 map 配置可以继续用作第二个 map 键位映射。

映射显示为
:map v :e<SP>:e

上面的指令意思是在 vi 编辑器内部切换文件,使用这个时候,只需要按 v 并跟着输入文件名,之后按 <RET> 键。

映射显示为
:map CTRL-vCTRL-e :e<SP>#CTRL-v<RET>:e #^M

# 在这里是 vi 中标准的符号,意思是最后使用的文件名。所以切换当前与上一个文件的方法就使用上面的映射。

映射显示为
map CTRL-vCTRL-r :!spell %>err &CTRL-v<RET>:!spell %>err&^M

(注意:在两个例子中出现的第一个 CRTL-v 在某些 vi 的版本中是不需要的)其中,:! 用来运行一个外部的(非 vi 内部的)命令。在这个拼写检查的例子中,% 是 vi 中的符号用来指代目前的文件, > 用来重定向拼写检查中的输出到 err 文件中,之后跟上 & 说明该命令是一个后台运行的任务,这样可以保证在拼写检查的同时还可以进行编辑文件的工作。这里我可以键入 verr<RET>(使用我之前定义的快捷键 v 跟上 err),进入 spell 输出结果的文件,之后再输入 CTRL-e 来回到刚才编辑的文件中。这样我就可以在拼写检查之后,使用 CTRL-r 来查看检查的错误,再通过 CTRL-e 返回刚才编辑的文件。

还用很多字符串输入的缩写,也使用了各种 map 命令,比如:

:map! CTRL-o \fI
:map! CTRL-k \fP

这个映射允许你使用 CTRL-o 作为 groff 命令的缩写,从而让让接下来书写的单词有斜体的效果,并使用 CTRL-k 进行恢复。

还有两个类似的映射:

:map! rh rhinoceros
:map! hi hippopotamus

上面的也可以使用 ab 命令来替换,就像下面这样(如果想这么用的话,需要首先按顺序运行: 1、 unmap! rh,2、umap! hi):

:ab rh rhinoceros
:ab hi hippopotamus

在上面 map! 的命令中,缩写会马上的展开成原有的单词,而在 ab 命令中,单词展开的操作会在输入了空格和标点之后才展开(不过在 Vim 和我的 vi 中,展开的形式与 map! 类似)。

想要取消刚才设定的按键映射,可以对应的输入 :unmapunmap!:unab

在我使用的 vi 版本中,比较好用的候选映射按键包括 gKqvVZ,控制字符包括:CTRL-aCTRL-cCTRL-kCTRL-nCTRL-pCTRL-x;还有一些其他的字符如 #*,当然你也可以使用那些已经在 vi 中有过定义但不经常使用的字符,比如本文选择 XI,其中 X 表示删除左边的字符,并立刻左移当前字符。

最后,下面的命令

:map<RET>
:map!<RET>
:ab

将会显示,目前所有的缩写和键位映射。

希望上面的技巧能够更好地更高效地帮助你使用 vi。


via: https://opensource.com/article/18/5/shortcuts-vi-text-editor

作者:Dan Sonnenschein 
选题:lujun9972 
译者:sd886393 
校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

了解快捷键能够提升您的生产力。这里有一些实用的 Ubuntu 快捷键助您像专业人士一样使用 Ubuntu。

您可以用键盘和鼠标组合来使用操作系统。

注意:本文中提到的键盘快捷键适用于 Ubuntu 18.04 GNOME 版。 通常,它们中的大多数(或者全部)也适用于其他的 Ubuntu 版本,但我不能够保证。

Ubuntu keyboard shortcuts

实用的 Ubuntu 快捷键

让我们来看一看 Ubuntu GNOME 必备的快捷键吧!通用的快捷键如 Ctrl+C(复制)、Ctrl+V(粘贴)或者 Ctrl+S(保存)不再赘述。

注意:Linux 中的 Super 键即键盘上带有 Windows 图标的键,本文中我使用了大写字母,但这不代表你需要按下 shift 键,比如,T 代表键盘上的 ‘t’ 键,而不代表 Shift+t

1、 Super 键:打开活动搜索界面

使用 Super 键可以打开活动菜单。如果你只能在 Ubuntu 上使用一个快捷键,那只能是 Super 键。

想要打开一个应用程序?按下 Super 键然后搜索应用程序。如果搜索的应用程序未安装,它会推荐来自应用中心的应用程序。

想要看看有哪些正在运行的程序?按下 Super 键,屏幕上就会显示所有正在运行的 GUI 应用程序。

想要使用工作区吗?只需按下 Super 键,您就可以在屏幕右侧看到工作区选项。

2、 Ctrl+Alt+T:打开 Ubuntu 终端窗口

Ubuntu Terminal Shortcut

使用 Ctrl+alt+T 来打开终端窗口

想要打开一个新的终端,您只需使用快捷键 Ctrl+Alt+T。这是我在 Ubuntu 中最喜欢的键盘快捷键。 甚至在我的许多 FOSS 教程中,当需要打开终端窗口是,我都会提到这个快捷键。

3、 Super+L 或 Ctrl+Alt+L:锁屏

当您离开电脑时锁定屏幕,是最基本的安全习惯之一。您可以使用 Super+L 快捷键,而不是繁琐地点击屏幕右上角然后选择锁定屏幕选项。

有些系统也会使用 Ctrl+Alt+L 键锁定屏幕。

4、 Super+D or Ctrl+Alt+D:显示桌面

按下 Super+D 可以最小化所有正在运行的应用程序窗口并显示桌面。

再次按 Super+D 将重新打开所有正在运行的应用程序窗口,像之前一样。

您也可以使用 Ctrl+Alt+D 来实现此目的。

5、 Super+A:显示应用程序菜单

您可以通过单击屏幕左下角的 9 个点打开 Ubuntu 18.04 GNOME 中的应用程序菜单。 但是一个更快捷的方法是使用 Super+A 快捷键。

它将显示应用程序菜单,您可以在其中查看或搜索系统上已安装的应用程序。

您可以使用 Esc 键退出应用程序菜单界面。

6、 Super+Tab 或 Alt+Tab:在运行中的应用程序间切换

如果您运行的应用程序不止一个,则可以使用 Super+TabAlt+Tab 快捷键在应用程序之间切换。

按住 Super 键同时按下 Tab 键,即可显示应用程序切换器。 按住 Super 的同时,继续按下 Tab 键在应用程序之间进行选择。 当光标在所需的应用程序上时,松开 SuperTab 键。

默认情况下,应用程序切换器从左向右移动。 如果要从右向左移动,可使用 Super+Shift+Tab 快捷键。

在这里您也可以用 Alt 键代替 Super 键。

提示:如果有多个应用程序实例,您可以使用 Super+` 快捷键在这些实例之间切换。

7、 Super+箭头:移动窗口位置

https://player.vimeo.com/video/289091549

这个快捷键也适用于 Windows 系统。 使用应用程序时,按下 Super+左箭头,应用程序将贴合屏幕的左边缘,占用屏幕的左半边。

同样,按下 Super+右箭头会使应用程序贴合右边缘。

按下 Super+上箭头将最大化应用程序窗口,Super+下箭头将使应用程序恢复到其正常的大小。

8、 Super+M:切换到通知栏

GNOME 中有一个通知栏,您可以在其中查看系统和应用程序活动的通知,这里也有一个日历。

Notification Tray Ubuntu 18.04 GNOME

通知栏

使用 Super+M 快捷键,您可以打开此通知栏。 如果再次按这些键,将关闭打开的通知托盘。

使用 Super+V 也可实现相同的功能。

9、 Super+空格:切换输入法(用于多语言设置)

如果您使用多种语言,可能您的系统上安装了多个输入法。 例如,我需要在 Ubuntu 上同时使用印地语和英语,所以我安装了印地语(梵文)输入法以及默认的英语输入法。

如果您也使用多语言设置,则可以使用 Super+空格 快捷键快速更改输入法。

10、 Alt+F2:运行控制台

这适用于高级用户。 如果要运行快速命令,而不是打开终端并在其中运行命令,则可以使用 Alt+F2 运行控制台。

Alt+F2 to run commands in Ubuntu

控制台

当您使用只能在终端运行的应用程序时,这尤其有用。

11、 Ctrl+Q:关闭应用程序窗口

如果您有正在运行的应用程序,可以使用 Ctrl+Q 快捷键关闭应用程序窗口。您也可以使用 Ctrl+W 来实现此目的。

Alt+F4 是关闭应用程序窗口更“通用”的快捷方式。

它不适用于一些应用程序,如 Ubuntu 中的默认终端。

12、 Ctrl+Alt+箭头:切换工作区

Workspace switching

切换工作区

如果您是使用工作区的重度用户,可以使用 Ctrl+Alt+上箭头Ctrl+Alt+下箭头在工作区之间切换。

13、 Ctrl+Alt+Del:注销

不!在 Linux 中使用著名的快捷键 Ctrl+Alt+Del 并不会像在 Windows 中一样打开任务管理器(除非您使用自定义快捷键)。

Log Out Ubuntu

注销

在普通的 GNOME 桌面环境中,您可以使用 Ctrl+Alt+Del 键打开关机菜单,但 Ubuntu 并不总是遵循此规范,因此当您在 Ubuntu 中使用 Ctrl+Alt+Del 键时,它会打开注销菜单。

在 Ubuntu 中使用自定义键盘快捷键

您不是只能使用默认的键盘快捷键,您可以根据需要创建自己的自定义键盘快捷键。

转到“设置->设备->键盘”,您将在这里看到系统的所有键盘快捷键。向下滚动到底部,您将看到“自定义快捷方式”选项。

Add custom keyboard shortcut in Ubuntu

您需要提供易于识别的快捷键名称、使用快捷键时运行的命令,以及您自定义的按键组合。

Ubuntu 中你最喜欢的键盘快捷键是什么?

快捷键无穷无尽。如果需要,你可以看一看所有可能的 GNOME 快捷键,看其中有没有你需要用到的快捷键。

您可以学习使用您经常使用应用程序的快捷键,这是很有必要的。例如,我使用 Kazam 进行屏幕录制,键盘快捷键帮助我方便地暂停和开始录像。

您最喜欢、最离不开的 Ubuntu 快捷键是什么?


via: https://itsfoss.com/ubuntu-shortcuts/

作者:Abhishek Prakash 选题:lujun9972 译者:XiatianSummer 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出