Skip to content

Latest commit

 

History

History
173 lines (92 loc) · 13 KB

1.1 新亮点.md

File metadata and controls

173 lines (92 loc) · 13 KB

1.1 新亮点

本章主要介绍iTerm2不同于其他终端模拟器的亮点功能。

文本选择

支持一下几种方式将选择的文本复制到粘贴板。

  • 你可以使用鼠标.
  • 您可以使用查找功能的“无鼠标复制”功能。 若要不使用鼠标选择文本,请按cmd-f打开查找字段。 输入要复制的文本的开头,查找功能将在窗口中将其选中。然后按Tab键,选择的结尾将前进一个单词。要将选择的开始位置向左移动,请按shift-tab。这样最多可以选择一行文本。
  • 你可以使用复制模式.
  • 您可以绑定击键来创建和调整文本选择。 在Prefs > Profiles > Keys中,您可以分配键,将文本选择移动到单个字符、单词或行的开头或结尾。 默认情况下,没有绑定此类键位。

分割窗格

iTerm2允许您将一个tab划分为多个矩形“窗格”,每个矩形都是不同的终端会话。快捷键cmd-d和cmd-shift-d分别将现有会话进行垂直或水平的划分。您可以使用cmd-opt-arrow或cmd- [和cmd-]在拆分的窗格之间切换。您可以使用cmd-shift-enter“最大化”当前窗格(并隐藏该选项卡中的所有其他窗格)。再次按快捷方式将还原隐藏的窗格。

热键窗口

iTerm2提供了一个特殊的终端窗口,只需单击一次键盘即可使用。该窗口称为“热键窗口(hotkey window)”,最常用于偶尔的管理任务。详细内容在Hotkeys中进行了介绍。

交换Cmd和Option

iTerm2允许您重新映射修饰符。您可以分别控制左右的command键和option键。一个普遍的需求是交换cmd和option。为此,请打开 Preferences > Keys。将左option键设置为左command键,将左command键设置为左option键(如果需要,请对右command和右option进行相同的操作)。如果您不希望重新映射某些组合(例如,cmd-tab),则可以添加例外。方法是添加新的全局快捷方式,包含"Do Not Remap"操作和您希望保留的不受重新映射影响的(未映射)键。

保存标记/跳转到标记

您可以使用cmd-shift-M标记会话中的位置,然后使用cmd-shift-J跳回到该位置。例如,这在您暂停编辑器以编译程序并发出错误时很有用。 您可以在此时保存标记,然后返回到编辑器以更正错误。在工作时,您可以使用cmd-shift-J跳回到编译错误。

正则表达式搜索

当您使用查找功能(cmd-f)时,放大镜的左侧有一个向下箭头。单击它会打开一个选项菜单,可以在其中启用正则表达式搜索。请使用使用ICU语法

自动补全

选项卡或其滚动缓冲区中存在的任何文本都可以在该tab中补全。要使用自动完成功能,请键入单词的开头,然后按cmd-;。将打开一个自动完成窗口,显示输入您所输入单词的前20个选项。可以通过键入子序列来过滤列表。可以通过按退格键重置过滤器。如果您进行选择并按回车,将为您输入选择。如果您进行选择并按Tab,则自动完成将根据选择进行扩展。

粘贴历史

每当在 iTerm2 中复制或粘贴文本时,iTerm2 都会将其添加到粘贴历史记录中。您可以使用cmd-shift-H访问粘贴历史记录。可以通过键入子序列进行过滤,并可以通过按退格键清除过滤器。您可以通过在 Preferences > General > Save copy/paste history 下打开该选项,选择将粘贴历史记录保存到磁盘。

即时重播

有时交互式程序会覆盖屏幕上感兴趣的内容(例如,top命令一直在执行此操作)。通常,这些内容将永远消失。 使用即时重播(instant replay),您可以使时间倒退,以准确查看最近一段时间的屏幕上的内容。要启用,请按cmd-opt-B。 进入即时重播模式后,可以使用向左和向右箭头键在时间上前后导航。Esc退出即时重播模式。默认情况下,每个会话最多使用4MB来保存其即时重播历史记录,并且可以在 Preferences > General > Instant Replay 中为每个会话使用多少MB进行调整。

即时重播的另一个好处是,它可以向您显示屏幕上出现的确切时间(精确到秒)。例如,这在尝试确定何时发生错误时很有用。

全屏

您可以按 cmd-enter,iTerm2 将占据整个屏幕。如果您配置了透明背景,则在进入全屏模式时将其关闭以减少干扰。您可以使用cmd-U重新启用它。与大多数 macOS 应用程序不同,如果禁用Preferences > General > Native full screen windows,则 iTerm2 可以在同一桌面上打开全屏窗口,而不会显示烦人的动画。

高色彩模式

iTerm2支持256色模式。要为csh shell启用此功能,请将终端设置为 xterm-256color(在under Preferences > Profiles > Terminal > Report Terminal Type 下)。某些应用程序可能需要配置为支持此模式。

在vim中,将其添加到您的.vimrc中:

set t_Co=256

iTerm2也支持24-bit颜色。

焦点跟随鼠标

该选项默认情况下处于关闭状态,但可以在 Preferences > Pointer > Focus follows mouse 中启用。它仅影响iTerm2窗口。

中间按钮粘贴

如果您有三键鼠标,默认情况下,中间键执行“粘贴”。您可以在 Prefs > Pointer 中设置中间按钮的行为以及许多其他类型的单击和手势。

自定义光标

使用块状光标时,很难选择对每种背景色都可见的光标颜色。如果启用智能光标颜色(Smart cursor color)(在 Preferences > Profiles > Colors 下),则将动态选择光标颜色以使其在文本和相邻单元格中可见。

如果您喜欢白色或黑色光标,则可以使用“光标增强(cursor boost)”功能(在Preferences > Profiles > Colors下)使除光标调光器(cursor dimmer)以外的所有颜色变暗。

您找不到光标吗?您可以通过切换 View > Show Cursor Guide 菜单项或打开 Preferences > Profiles > Colors > Cursor Guide 来打开光标指南。也可以通过转义序列来切换。例如,将其添加到您的.vimrc中:

let &t_ti.="\<Esc>]1337;HighlightCursorLine=true\x7"
let &t_te.="\<Esc>]1337;HighlightCursorLine=false\x7"

如果丢失了光标,请按Cmd- /或选择 View > Find Cursor,屏幕上的光标位置将非常清楚地显示出来。

最小对比度

有时,应用程序会以难以阅读的颜色显示文本。特别是对于色盲用户来说,如果颜色仅在色相上而不在亮度上不同,则可能很难找到某些组合。如果启用了最小对比度(在 Preferences > Profiles > Colors > Minimum contrast下,则 iTerm2 将保证每个字符的前景色和背景色之间的亮度差异最小。如果将此值设置为最大值,则所有文本将变为黑或白。

支持通知中心

如果启用通知(Preferences > Profiles > Terminal > Send Growl/Notification Center alerts),则当终端发出beeps,经过一段时间的静默后输出或终止时,您将收到消息。还有一个专有的转义序列可以发送通知。 您可以调整在 Preferences > Profiles > Terminal > Filter Alerts 中发布的通知的类型。

Exposé 标签

如果选项卡太多,而找不到所需的选项卡,则可以使用Exposé选项卡功能进行查找。按cmd-opt-E,将立即显示所有选项卡。然后,您可以同时在所有选项卡上进行搜索以找到所需的内容。

窗口排列

您可以使用菜单选项 Window > Save Window Arrangement 对打开的窗口、选项卡和窗格记录快照。您可以使用 Window > Restore Window Arrangement 来还原此配置,或者可以选择通过 Preferences > General > Open saved window arrangement 设置启动iTerm2时自动还原。

智能选择

四次单击会执行“智能选择”,该操作将在指针下方选择合适内容的文本。例如,URL、带引号的字符串和电子邮件地址将被识别和选中。您还可以将操作绑定到智能选择规则。当您cmd单击与规则匹配的文本时,第一个操作生效。右键单击与规则匹配的文本时,所有操作都将添加到上下文菜单。

触发器

触发器是与用户配置的正则表达式相关联的操作。这些操作包括高亮匹配文本、显示提醒、返回文本等等。

触发器的一种高级用法是捕获与正则表达式匹配的输出,并仅在工具栏中显示那些匹配的行。例如,您可以创建与编译器错误匹配的触发器。运行“生成”时,错误将出现在窗口的一侧,您可以单击每个错误以跳到该错误的位置。捕获输出中提供了更多信息。

Tmux 集成

iTerm2 与 tmux 紧密集成。集成使您可以将 tmux 窗口视为本地 iTerm2 窗口或选项卡。不需要 tmux 前缀键,因为本地菜单命令在 tmux 窗口上运行。有关更多信息,请参见 iTerm2-tmux集成 文档。

协同处理

协同处理是程序与 iTerm2 一起运行并绑定到单个会话。绑定到会话的所有输出也将作为输入路由到协同进程。协同处理的输出就像用户在键盘上键入一样。协同过程可用于自动化任务。有关更多信息,请参阅Coprocess文档。

动态配置文件

如果你有成百上千个配置文件,可以考虑使用动态配置文件。这个功能允许你使用 JSON 定义配置文件。

自动配置文件切换

通过自动配置文件切换,你可以自动的改变当前会话的用户配置文件。例如,你可以在使用生产系统时改变背景颜色。

内嵌图片

iTerm2 可以在窗口中内嵌的显示图片,包括GIF文件。通过安装Shell Integration and Utilities就可以添加 imgcat 脚本来实现这一功能。

撤销关闭

如果您不小心关闭了会话,则可以在五秒钟内通过按下Cmd-Z来撤销(默认情况下;可在 Preferences > Profiles > Session 中配置)。

Shell 集成

Shell Integration 是 iTerm2 独有的功能,它使用有关 Shell 提示符的知识来帮助您从一个 Shell 提示符导航至另一个,记录命令历史记录,建议最常用的目录,帮助您重新运行命令,一键从远程主机下载文件,一键上传文件到远程主机,通过拖放等将文件上传到远程主机。 有关所有详细信息,请参见 Shell Integration 文档。

密码管理器

iTerm2 可以在 Keychain 保存你的密码。使用 Window > Password Manager 菜单打开密码管理器,并输入你的密码,

时间戳

切换 View > Show Timestamps 以显示每行的最后修改时间。这对于了解操作运行了多长时间或何时打印消息很有用。

左侧 Tab Bar

你可以将 Tab Bar 置于窗口的左侧。当你打开了大量的 tab 的时候这是有一定用。

快速打开

如果您有很多会话,可以使用“快速打开”快速找到所需的会话。选择 View > Open Quickly 菜单项(cmd-shift-O),然后输入搜索查询。您可以按选项卡标题,命令名称,主机名,用户名,配置文件名称,目录名称,徽章标签等进行搜索。快速打开还可以创建新选项卡,更改当前会话的配置文件以及打开窗口排列。如果您以 / 开头查询,则可以使用它来快捷访问各种命令。

Shell 集成与实用工具

Shell集成包含 Shell 脚本,当您创建新会话或向远程主机 ssh 连接时会加载该脚本。它修改您的修饰符,以便iTerm2知道这些新的脚本命令在哪里。它启用了许多新的功能,例如“复制前一个命令的输出”,“更改主机时自动配置文件切换”等功能,如 Shell Integration 中所介绍的。安装 Shell Integration 时,将提示您还安装其实用程序(Utilities)。实用程序是使用 iTerm2 的独特功能并使它们易于使用的 Shell 脚本的集合。例如,您可以从远程主机上传或下载文件,从命令行(甚至通过ssh!)复制到粘贴板,并使烟花从光标处爆炸。在Utilities中进行了介绍。

Python 脚本 API

iTerm2 使用 Python API 进行自定义。

状态栏

你可以设置状态栏在窗口的顶部或底部展示环境信息。

参考文献

https://www.iterm2.com/documentation-highlights.html