BBEdit 14.0 大版本更新!一款支持多种类型的代码编辑器

BBEdit 14.0 大版本更新!一款支持多种类型的代码编辑器

Mac软件教程 2021-09-01 11:31:03

BBEdit 14.0 大版本更新!一款支持多种类型的代码编辑器

BBEdit 14.0 大版本更新!一款支持多种类型的代码编辑器

分类: Mac软件教程时间: 2021-09-01

BBEdit 14是macOS领先的专业的HTML和文本编辑器。这个屡获殊荣的产品旨在满足作家,作者和软件开发人员的需求,并提供丰富的功能,用于编辑,搜索和处理散文,代码和文本文件。有些类型的代码用其它编辑器打不开,可以试试BBEdit,支持格式非常广泛。

要求:

BBEdit 14 需要 Mac OS X 10.14.2 或更高版本,并且兼容 macOS 10.15 "Catalina" 和 macOS 11 "Big Sur"。

如果您使用的是 macOS 10.14“Mojave”,请确保您已更新到最新的可用操作系统版本(10.14.6 或更高版本)。

如果您使用的是 macOS 10.15“Catalina”,请确保您已更新到最新的可用操作系统版本(10.15.7 或更高版本)。

如果您使用的是 macOS 11“Big Sur”,请确保您已更新到最新的可用操作系统版本(11.5 或更高版本)。

快速笔记

现在可以在 BBEdit 14 中进行快速记笔记了,方便在开发过程中记录一些重要的信息,它会自动生成标题,方便你进行查找。

Anaconda 虚拟环境

Anaconda 是流行的大数据开发工具,需要在不同工具和库配置之间快速。BBEdit 14 将使用conda或miniconda检测您的虚拟环境,并提供一种机制来切换活动环境以在 BBEdit 中运行 Unix 工具和脚本时使用。

新的内置语言

BBEdit 14 为Go、R、Rust、Lisp 家族语言(Common Lisp、Scheme、Clojure)和 Pixar Universal Scene Description (USD) 文本文件添加了内置语法着色和函数导航支持。

编辑器功能升级

BBEdit 14 为开发人员提供了多项新功能和对其内置编码辅助工具的重大改进,包括:

  • 增强了特定于语言的文本补全;
  • 改进的查找定义;
  • 协助指定函数参数;
  • 新的代码导航功能;
  • 语法和语义问题的窗口内突出显示;
  • 特定于语言的文档重新格式化。

重复上一个命令

在BBEdit 13的“命令”命令的基础上,BBEdit 14 在“编辑”菜单中添加了一个方便的“重复上一个命令”命令,这样您就可以重复操作,而无需专程前往菜单栏。

这是选择新的“备用案例”命令后的“编辑”菜单:


以上是BBEdit 14的重点更新内容,实际上它远不止于此,它包含了上百项的功能改进,

添加

  • BBEdit 14 为源代码编辑启用了以下新的和/或增强的功能:
    • 打字时改进了特定于语言的补全;
    • 按需显示功能参数和(如果有)文档;
    • 在编辑器中突出显示来自“linters”和语法检查器的错误、警告和通知;
    • 重新格式化整个文档和/或选择范围;
    • 增强的“转到定义”;
    • 在适用的情况下导航到声明、定义和符号引用(反向查找);
    • 通过“在工作区中查找符号”和“转到命名符号”进行交互式符号搜索。
  • BBEdit 14 通过对语言服务器协议 (通常称为“LSP”,不要与 Lightspeed Pascal 混淆)的新内置支持来实现这些添加和增强。
    (注意:尽管使用了“服务器”一词,但没有任何内容通过网络传输,任何数据也不会通过 LSP 支持离开您的计算机。)
  • 您知道打开一大堆无标题文档的事情,因为制作一个并输入一些笔记非常容易,然后将其保持打开状态?并且您依靠 BBEdit 惊人的崩溃恢复和文档恢复功能不会丢失您精心保存的笔记?如果你愿意,你可以继续这样做,但我们有一个新功能可以让整个过程更快更容易:注释。
    笔记大多像普通的文本文档,只是你不必记住保存它们,如果你不想甚至还可以起个名字。BBEdit 将所有笔记保存在“笔记本”中。笔记作为文本文件存在于磁盘上;不涉及秘密文件格式。
    尽管笔记存储为文本文件,但当笔记处于活动状态时,BBEdit 的一些用于处理文本文件的命令会被禁用或修改,以避免混淆。(例如,您不能重新定位笔记文件,因为这会破坏很多东西,但您 可以使用“保存副本”将笔记内容的副本保存为其他地方的普通文本文件。)
    做笔记的方法有很多种,因此您可以使用适合您的工作流程和风格的任何方法:
    • 从“文件→新建”菜单中选择“注释”。这将创建一个新的空便笺,您可以在其中键入或粘贴文本。
    • 从“文件”→“新建”菜单中选择“注释(带选择)”。如果您在 BBEdit 文本文档中有一系列选定的文本,则启用此命令并选择它将使用选定的文本创建一个新注释。
    • 从“文件→新建”菜单中选择“笔记(带剪贴板)”。如果启用此命令,选择它会使用剪贴板的内容创建一个新笔记。
    • 从文件菜单中选择“另存为笔记”。此命令可用于未命名的文本文档(从未保存到磁盘)。
    • 在 BBEdit 编辑窗口中右键单击某些选定的文本,然后从上下文菜单中选择“新建注释(带选择)”。
    • 右键单击另一个应用程序中的某些选定文本,然后从上下文菜单的服务子菜单中选择“BBEdit 中的新注释”;或从  菜单的服务子菜单。
    • 打开“备注”窗口(在“窗口”菜单上),然后使用侧栏底部的“+”按钮或侧栏中的上下文菜单添加新的空备注。
    • 在 Notes 窗口打开且边栏可见的情况下,将文件或一些文本拖到边栏中。如果拖动文件,则原始文件不会受到干扰。
    • 安装命令行工具后,将一些文本通过管道传输到 bbedit --note; BBEdit 将从文本中创建一个新笔记。bbedit(1)手册页中提供了其他详细信息。
  • 窗口菜单上的“注释”命令打开“注释”窗口,其中显示您创建的所有注释。拖动边栏中的笔记以重新排列它们;您还可以使用边栏中的“+”菜单或上下文菜单来创建收藏夹来组织您的笔记。
    创建笔记并在编辑时,BBEdit 将根据笔记开头的文本更改笔记的标题。如果您想让笔记的名称为“粘性”,请在“笔记”窗口侧栏中右键单击它,然后从上下文菜单中选择“重命名笔记”命令。您在那里应用的名称将永远成为该笔记的名称(或直到您再次“重命名笔记”),并且对该笔记内容的后续编辑不会影响该笔记的名称。
    要永久删除笔记,请使用“笔记”窗口侧边栏上下文菜单中的“删除”命令。您可以右键单击任何笔记将其删除;或在选定的音符范围内;或在选定的收藏和笔记范围内。(删除收藏将删除其中的所有笔记。)您需要确认您希望永久删除笔记,因为该操作不可撤消。当您删除笔记时,BBEdit 会将笔记的后备文件放入废纸篓,因此如果您改变主意,您可以打开该文件并恢复其内容。
    如果出于某种原因需要导出所有笔记,请使用“文件”菜单上的“导出笔记”命令。这将创建一个文件夹,其中包含您的所有笔记,以及用于收藏的子文件夹。如果存在任何注释,则此命令始终可用。
    在进行多文件搜索(或替换或提取)时,使用多文件搜索窗口中搜索源列表中的“注释”项让 BBEdit 搜索您的注释。
    您可以使用“按名称打开文件”窗口快速转到笔记;输入笔记标题的全部或部分,匹配的笔记(和其他文件)将出现在结果中。
  • 如果您通过 或工具使用Anaconda,BBEdit 将在“ ”菜单上列出您的可用环境,您可以通过从菜单中选择来更改活动环境(仅在 BBEdit 中有效)。condaminiconda#!
    以下注意事项和限制适用:
    1. 您从#!菜单命令运行的脚本和过滤器,以及从脚本菜单、应用文本过滤器和文本工厂运行的脚本和过滤器,将使用当前虚拟环境提供的附加环境变量。
      这包括但绝不限于$PATH,因此切换虚拟环境可能会以只有记住这一点才有意义的方式改变 Unix 脚本操作的行为。
    2. Shell Worksheets 不参与虚拟环境感知或切换。
  • 在编辑菜单中添加了“重复上一个命令”。该命令字面上重复了先前的菜单命令选择。这包括基本菜单命令以及脚本、剪辑、应用文本过滤器和信纸子菜单上的项目。
    需要注意的是:在选择重复命令只重复 的选择上一级菜单命令,没有一定的影响。如果您的文档或应用程序的状态发生了变化,以至于前一个命令将被禁用,“重复”将被禁用。
    唯一可重复的命令是同时出现在“命令”命令窗口中的命令。因此,“BBEdit”菜单上的项目是不可重复的,“重复上一个命令”命令本身和“命令”命令也不是可重复的。
    某些菜单命令不会影响“重复上一个命令”状态,特别是:窗口菜单上的命令、关闭命令和“下一个文档”/“上一个文档”将单独保留重复上一个命令状态。因此(例如)如果您对一个文档执行“更改案例”,然后切换到另一个文档,“重复上一个命令”将重复“更改案例”的选择。
    与“重复上次命令”等效的出厂默认键盘是 Command-Y。与往常一样,您可以在“菜单和快捷方式”首选项中进行调整。
  • 在“编辑器”选项卡中的特定语言首选项中添加了“自动完成”。您可以根据需要使用它,默认情况下关闭完成功能,然后为特定语言重新启用它,或者(更有可能)关闭 Markdown 和其他面向内容(与面向代码)语言的自动完成功能。
  • 将extract命令添加到脚本字典中。
  • 剪贴板窗口凯旋而归。(从“编辑”菜单中选择“显示剪贴板”以使其可见。)
  • 将图像或 HTML 文件拖入 Markdown 文档时,BBEdit 将生成适当格式的 Markdown 引用。(与在 HTML 文档中执行此操作时一样,您可以通过在拖放时按住 Option 键来绕过该行为。)
  • BBEdit 现在在侧边栏中显示文件的 Finder 标签信息。您可以使用侧边栏首选项中的“在侧边栏列表中显示 Finder 标签”设置来控制这一点。
  • 文件(和文件夹)过滤器包括一个新术语:“任何 Finder 标签”。您可以在字符串字段中输入单个 Finder 标签的名称,如果文件应用了任何 Finder 标签并且任何应用的标签与您输入的标签名称匹配(使用任何可用的字符串测试),则文件或文件夹将匹配过滤器。
  • “删除空白行”现在可用作文本菜单、文本工厂中和 AppleScript 界面上的文本转换。此转换将从文档中删除空白(仅空格)和空(换行符前无字符)行。这为您省去了必须想出一个 Grep 模式来做同样的工作的麻烦,以及试图误用“包含生产线”的工作。
  • 在 Change Case 的可用选项中添加了“Alternate Case”(在菜单命令、子菜单、文本工厂和脚本界面中)。此选项将强制处理范围内的所有字符大小写,从小写开始,大小写交替;并在句子边界处重置。这是一个例子,它看起来像什么。有时它被称为“海绵盒”。
  • 文本工厂窗口的“全部替换”面板现在提供一个“历史”菜单按钮,提供对“查找”窗口历史的访问。这样,如果您花时间在“查找”或“多文件搜索”窗口中整理出搜索/替换对,您可以轻松地在文本工厂中重用它,而无需像某种穴居人一样诉诸复制和粘贴。
  • 您现在可以控制任何给定的语言是否出现在“语言”菜单中(如在状态栏和“文本选项”面板中使用的那样)。在“语言”首选项中,点击“已安装的语言”按钮查看列表;您可以使用“菜单”列中的复选框来显示或隐藏语言。从菜单中隐藏一种语言不会影响 BBEdit 以该语言打开文件的能力。
  • 当“查找”窗口中的“显示匹配项”打开时,窗口底部会出现一个状态行以指示实时匹配结果。
  • 当您使用“在文档中查找”时,BBEdit 现在将向Dash提供文档集信息 。大多数 BBEdit 的工厂提供的语言都指定了一个默认的文档集列表,从开发人员提供的信息派生(如果适用)。
    自定义语言设置(在“语言”首选项中)有一个“Dash”选项卡。在这里,您可以自定义(或设置)在使用 Dash 进行“在文档中查找”时 BBEdit 将请求的 Dash 文档集列表。
  • “语言”首选项窗格现在具有控制默认语言的设置。新文档和现有文档有不同的设置,后者会影响已经存在的文件,但不携带任何元数据(例如模式行、EditorConfig 文件或文件扩展名)来识别它们的语言。
  • 向文本菜单添加了两个命令:“重新格式化文档”和“重新格式化选择”。当当前文档的语言模块本质上支持重新格式化时,或者如果语言模块具有支持相应功能的已配置运行语言服务器,则会启用这些 功能。
  • 在编辑菜单中添加了“扩展 Emmet 缩写”。如果您安装了 Emmet(见下文),此命令将要求 Emmet 根据行的内容和插入点的位置在包含插入点的行上展开缩写。
    此功能需要埃米特安装,您可以使用“做npm install emmet‘’,这意味着你还必须具备的。 节点和npm安装,你可以使用做到这一点。家酿(使用” brew install node“或一些其他实用程序);或通过下载安装包在 Node.js的网站。
    只要在emmet应用程序启动时安装了该软件包,BBEdit 就可以运行 Emmet。
  • 为工厂提供的 JSON 语言模块添加了 JSON 格式支持。从“文本”菜单中选择“重新格式化文档”以重新格式化文档的文本。
  • 添加了对R语法着色、函数导航和折叠的内置支持。
  • 为 Lisp(其基本关键字集来自 Common Lisp)、Scheme(其关键字集来自 MIT 方案)和 Clojure 添加了一个内置语言模块。
  • 添加了对Go 的内置支持:语法着色、函数导航和折叠。
  • 为Rust添加了一个内置的语言模块。
  • 为TOML添加了内置语言模块。
  • 在 Arduino 源文件中添加了对语法着色和函数导航的内置支持。“Arduino”语言的处理方式与 C++ 类似,因此对应的导航和其他相关功能的行为与此类文件的行为相同。
    注意:如果您之前使用的是外置 Arduino 无代码语言模块,我们建议您将其从 Language Modules 文件夹中删除,否则它将覆盖内置支持。
  • 添加了“Vue.js”作为独特的语言设置,以允许Vue.js源文件的单独文件扩展名映射和语言服务器配置 。
  • 为USDA添加了语言模块,这是通用场景描述文件的 ASCII 交换格式。
  • 向文本工厂“全部替换”表中添加了 Grep 语法着色(当“使用 Grep”打开时)。
  • 添加了对~~strikethrough~~Markdown 文档中语法着色的支持,如 GitHub-flavored Markdown 中所定义。
  • 在 Pattern Playground 窗口中添加了一个可调节的分割器,以便可以放大搜索模式区域。
  • 包现在可以包含一个Custom Keywords文件夹,因此可以添加任何语言的内置关键字。
  • 更改了 HTML 语法着色扫描仪,以便允许包含短划线的“草率”注释,只要它们以“ <!--”开头并以“ ”结尾-->。
  • 添加了对 Markdown 模块的支持,用于脚注引用和脚注定义的语法着色,如某些 Markdown 风格所支持。
    脚注定义必须从一行的开头开始,看起来像[^theName]: the footnote text.
    内嵌脚注引用只是[^theName].
  • Markdown 文档中内联链接的 URL 现在列在编辑器窗口右上角的包含菜单中。从菜单中选择这些 URL 之一将执行常规操作:尝试在新文档中打开该 URL 的内容。
  • 如果“查找和数据检测器”的系统触控板首选项设置为“用一根手指强制单击”,则对文本文档中的某个单词执行此操作将打开该单词的“词典”面板。
  • 添加了将文件(而非文件夹)从 FTP/SFTP 浏览器窗口拖动到 Finder(以及其他需要文件的应用程序)的功能。当项目被放到目的地时,BBEdit 将按照指示下载文件。
    这严格是为了方便。
  • 项目的“添加项目”文件面板有一个“显示隐藏项目”复选框,它允许您向项目添加通常不可见的文件/文件夹。
  • 在项目窗口的“当前打开的文档”列表中的单个项目的上下文菜单中添加了“在项目列表中显示”。
  • 外观首选项提供了以下选项,用于在 Dock 中显示哪些应用程序图标:
    1. 默认:工厂应用图标;
    2. 经典:BBEdit 版本 11-13 中使用的图标;
    3. Legacy:20 世纪首次发布的 BBEdit 版本中使用的图标;
    4. TextWrangler:TextWrangler 应用程序图标。
  • 添加了在自定义映射列表(语言首选项)以及语言模块的默认列表中使用通配符文件扩展名映射的功能 BBLMFilenameExtensions。
  • 在文本菜单中添加了“预组合 Unicode”。在可能的情况下,此命令会将分解后的 Unicode 对(例如一个字母后跟一个组合重音或分音符)转换为单个 Unicode 字符。Precompose Unicode 也可作为文本工厂操作以及通过 AppleScript 接口使用。
  • 对于未在当前窗口中打开的文档,右键单击列表的“项目”部分以及“注释”窗口中的项目时,“在新窗口中打开”可用。同样,对于在当前窗口中打开的文档,“移动到新窗口”和“在附加窗口中打开”在项目部分(或 Notes 窗口侧栏)的上下文菜单中可用。
  • 文本工厂窗口获得上下文菜单;您可以剪切、复制、粘贴(如果您之前剪切或复制了文本工厂操作)以及启用/禁用所选项目。
  • 在菜单和快捷方式首选项的导航栏部分添加了“打开问题面板”;此键盘等效项可用作单击导航栏中的诊断指示器的替代品。此外,在插入点位于带下划线的问题范围中间时使用此键盘手势将在该位置打开问题面板。
  • 添加omni*js为 TypeScript 的默认映射,以支持 Omni 自动化组合。
  • 添加了一个新的脚本附件点,以提供对将图像文件放入 BBEdit 编辑视图时生成的文本的额外控制。
    脚本的入口点是documentWillInsertTextForDroppedImageFile,参数是(按提供的顺序列出):
    • 对放置图像文件的 BBEdit 文档的引用;
    • 对被删除的图像文件的引用;
    • BBEdit 为放置生成的文本(如果有)。这将始终存在,但可能是空字符串。
  • 不像其他的“ will”附件点,documentWillInsertTextForDroppedImageFile 应该返回一个值。这可以是以下之一:
    • 建议的文本,如果没有这个脚本,它会插入 BBEdit 无论如何都会插入的内容;
    • 的missing value伪值,这将中止拖放操作(和插入没有文本);
    • 一些自定义字符串,由脚本自行决定生成。
  • 请注意,BBEdit 将等待此函数返回,因此它所做的任何工作都必须花费最少的时间(或异步完成,可能在“ ignoring application responses” 块中)。
    这是一个描述和说明的小示例脚本。在这种情况下,脚本要求Acorn打开被放置的图像文件,同时不影响 BBEdit 的默认行为。
    on documentWillInsertTextForDroppedImageFile(theDocument, theImageFile, proposedText)
    
     tell application "Acorn" to open theImageFile
    
     return proposedText
    
    end documentWillInsertTextForDroppedImageFile

回到顶部

变化

  • “BBEdit Backups”文件夹现在位于应用程序的沙箱容器中,在“Documents”文件夹中。您可以从 BBEdit 应用程序菜单的文件夹子菜单上的“文档备份”命令到达那里。现有的 BBEdit Backups 文件夹(包括 Dropbox、iCloud Drive 和 中的先前位置~/Documents/)被识别并就地使用;无需重新安置它们。
  • “在 Finder 中显示”和“在项目列表中显示”已分别重命名为“在 Finder 中显示”和“在项目列表中显示”。尽管如此,他们仍然做同样的事情。
  • 在文件夹菜单中添加了“系统诊断文件夹”条目,用于快速访问 macOS 生成的诊断日志。
  • “Entab”和“Detab”的名称分别更改为“将空格转换为制表符”和“将制表符转换为空格”。这更冗长,但不那么深奥。
  • 菜单和快捷方式首选项中未设置键盘等效项的“无”指示符现在显示为“单击以设置”,从而清楚地(呃)您需要做一些事情来更改未分配的等效键盘。
  • “对应物”导航栏项目已重命名并重新设计。它现在被称为“相关文件”,并且外观首选项已更改以反映这一点。相关文件菜单包含包含(由语言模块的功能扫描器检测到,如果有)以及同一目录中的相关“对应”文件。“包括”导航栏项目已停用(外观首选项也已更改以反映这一点)。
  • 尽管 BBEdit 会避免在“Unix 脚本输出”窗口已经打开时激活它,但您可能会发现无论如何都需要这样做。如果是这样,则存在用于此目的的专家偏好:
    defaults write com.barebones.bbedit AlwaysBringUnixScriptOutputToFront -bool YES
  • 当使用 Unix 命令生成用于预览的 HTML 时,如果可能,BBEdit 会将当前工作目录设置为包含文档的目录。这样,依赖于能够找到与文件相关的数据的进程可以 getcwd(3)用来找到适当的位置。
  • 在可能的情况下,通过 FTP/SFTP 打开/保存的文件传输进度现在是窗口模式。
  • 专家首选项帮助现在专门在我们的网站上提供,网址为https://www.barebones.com/support/bbedit/ExpertPreferences.html。“专家”首选项窗格中的按钮会将您带到那里,帮助手册中的“专家首选项”链接也是如此。
  • 进行了更改,以便 shell 工作表默认不显示语言设置。(工作表的语言始终是“Unix Shell 工作表”。)
    如果出于某种原因您需要显示或更改 shell 工作表的语言(仅影响其显示,而不影响其行为),您可以使用专家首选项来执行此操作:
    defaults write com.barebones.bbedit ShowLanguageSettingInShellWorksheets -bool YES
  • 旧路径覆盖git并svn超出需求,不再受支持。如果 BBEdit 在您的 中找不到这些工具,请$PATH根据需要修复您的 shell 环境配置。如果您需要完全禁用 Git 或 Subversion 支持,请在“菜单和快捷方式”菜单中关闭相应的菜单即可。
  • 对使用“保存默认文本窗口”/“保存默认项目窗口”时的行为进行了如下更改:如果“自动显示侧边栏”首选项设置为“根据需要”,BBEdit 会将窗口的当前侧边栏可见性存储为默认窗口布局的一部分。否则,如果侧边栏首选项设置为“始终”或“从不”,则 BBEdit 将分别将默认侧边栏状态设置为可见(“始终”)或隐藏(“从不”)。
  • 打开现有文档时,BBEdit 将始终应用在“编辑器默认设置”首选项中配置的字体,即使在文档中手动设置了不同的字体。这样,如果您保存对文件的更改,关闭它,然后更改默认字体设置,新字体设置将在您下次打开该文件时生效,而不是之前的默认设置。如果您更喜欢以前的行为,请转到“编辑器默认设置”首选项并关闭“覆盖文档设置”。
  • 向“编辑”首选项添加了一项设置,以在打开文档时明确折叠低于指定级别的折叠。默认情况下,此设置处于关闭状态。
  • 在 macOS Big Sur 上运行时,“关闭前保存更改”警报中的“不保存”按钮(或其等效项)现在被标记为“破坏性操作”按钮。操作系统可能会选择相应地为该按钮着色和/或实施行为更改以防止其意外使用。(在撰写本文时,按钮的外观没有明显差异。)
  • 略微调整“查找定义”表中的表格布局以获得多个结果。
  • 给完成/功能/查找定义/转到命名符号的项目徽章列出了一个白色边框,以增加在深色背景上的易读性(在深色模式下或选中时)。
  • 默认情况下为 JSON 和 SQL 关闭“键入时检查拼写”。如果您需要重新启用此功能,您可以在“语言”首选项中添加自定义语言首选项设置。
  • Includes 菜单将根据名称显示其他包含文件引用类型的图标。
  • 将出厂默认应用程序外观设置更改为“使用系统外观”而不是强制暗模式。与往常一样,您可以在“外观”首选项中更改此设置。现有首选项不受此更改的影响。
  • 使 BBEdit 的剪贴板处理意识到由 Typinator、TypeIt4Me、TextExpander 等实用程序放置在系统剪贴板上的“瞬态”项目。在这些情况下,BBEdit 将避免旋转剪贴板环,以免干扰环的其他内容。
  • 更改了“比较两个前窗口”的行为,以便不再总是将较新的文档放在左侧,而是始终将前窗口的文档放在左侧。这样,如果你想改变比较文档的位置,就像改变所需窗口的前后顺序一样简单。
  • 更改了“取消/注释行”的行为,这样如果 选择范围内的任何行都没有注释,则选择范围内的所有行都将以行注释分隔符作为前缀——包括已经加前缀的行。如果所有 行都以行注释定界符为前缀,那么 BBEdit 将删除每行中第一次出现的行注释定界符,从而将事情返回到以前的状态。此行为与 Xcode 和其他人的“切换注释”行为一致。
  • 对状态栏项目在文本区域下方的布局方式进行了一些更改,以减少它们占用的空间。这允许默认情况下启用文本编码和行结束状态栏项目。(与往常一样,您可以使用“外观”首选项调整哪些项目可见。)
  • 文档修改日期状态栏项将只显示时间,如果修改日期为“今天”。如果文档上次保存在不同的日期,状态栏将显示日期和时间。
  • 当您在免费模式下运行并选择需要付费许可证或有效订阅的命令(后者仅在 Mac App Store 中)时,BBEdit 现在将显示其许可证面板,这提供了比以前的警报更好的体验。
  • 当从“Rescued Documents”窗口中淘汰已获救的项目时,BBEdit 会将它们放在废纸篓中的“已获救的 BBEdit Documents”文件夹中,这样它们的来源就不那么神秘了。(提醒:您可以在“文本文件”首选项中控制文档救援行为。)
  • 在执行提取操作时(从“查找”或“多文件搜索”窗口),在关闭Grep 的情况下,BBEdit 现在将提取包含匹配项的整行,而不仅仅是精确匹配项。因为当您的配偶需要在 10 秒内处理跨越两打文件的 1GB CSV 数据时,您只需要做您必须做的事情。
  • 再次增加了窗口调色板的最大宽度。
  • 更改(并标准化)了命名法:现在在编辑器默认首选项、文本选项表、文本选项弹出框和字体面板中使用“每个选项卡的空格”而不是“选项卡宽度:xxx 空格”。
  • 在字体面板(视图 => 文本显示 => 显示字体)的选项卡宽度中添加了步进控件,并对控件布局进行了现代化改造。
  • 在“文本选项”表和编辑器默认首选项中的选项卡宽度设置中添加了步进控件。
  • 如果作为提取操作的结果将搜索/替换字符串对添加到历史记录中,则历史记录菜单将如此指示。
  • 将“搜索”菜单上的“在参考中查找”更改为“在文档中查找”,由于存在“查找所选符号的参考”,因此不再含糊。
  • 将限定词 ( AND, OR)添加到文件过滤器编辑器设置中。
  • 将内置更新cmark到版本 0.30.0(在撰写本文时为当前版本)。
  • 语言模块开发人员:语言模块(已编译和无代码)支持新的(和推荐的)属性键: BBLMFilenameExtensions. 这是一个字符串数组,旨在替换旧BBLMSuffixMap的字典数组。
    BBLMFilenameExtensions数组中的每个字符串都是一个文件扩展名(根据定义不包括句点),它应该映射到所描述的语言。
    为了向后兼容,BBEdit 将继续识别和加载旧BBLMSuffixMap数组,但您不应将其用于新模块。
  • 语言模块开发人员:语言模块 API 中的字符串常量已被重新定义为全局符号而不是宏,以便它们存储在单个全局部分中,而不是每次BBLMInterface.h包含“ ”时都被复制。您需要将“ BBLMInterface.mm”添加到您的项目中。
  • 语言模块开发人员:如果您想为 BBEdit 指定要使用的默认文档集列表,请使用BBLMDashDocsets字符串数组向语言模块的属性列表中添加一个值。每个字符串都是一个文档集名称,该列表按照您指定的顺序提供给 Dash。
    下面是一个针对 Objective-C 的示例:
    <key>BBLMDashDocsets</key>
    <array>
     <string>iphoneos</string>
     <string>macosx</string>
     <string>watchos</string>
     <string>tvos</string>
     <string>cocoapods</string>
     <string>appledoc</string>
     <string>cocos2d</string>
     <string>cocos3d</string>
     <string>kobold2d</string>
     <string>sparrow</string>
     <string>c</string>
     <string>manpages</string>
    </array>

回到顶部

修复

  • 在检查给定文件是否已打开时进行了更改以提高性能。当将大量文件(例如多文件搜索)与大量打开的文档相交时,这一点很明显。
  • 如果您指定自定义 Markdown 处理器的完整路径,现在可以正常工作。(通常没有理由这样做,因为命令行工具通常应该在您的 $PATH.)
  • 进行了更改以提高非常大文档的 UTF-16 字节顺序转换的性能。
  • 在差异窗口中计算子线差异时进行了更改以提高性能。
  • 在将单个项目放入编辑窗口期间进行了更改以提高性能并减少内存需求。
  • 调整了出厂默认设置,以便自定义语言设置列表(在语言首选项中)不再显示 YAML 的虚假条目。
  • 对(转到)命名符号面板进行了一些改进,改进了徽章渲染和表格项目对齐。
  • 修复了语言首选项中语言模块提示中被剪裁的下行字符。
  • 在语言首选项中为自定义设置列表设置默认排序顺序;“语言”列现在按名称(默认)按升序排序,并且是唯一可排序的列。
  • 修复了在 macOS 11 上运行时“新建 HTML 文档”对话框中语言和字符集弹出窗口的外观问题。
  • 在未保存更改的文档上使用 Subversion 或 Git“Revert”命令时,BBEdit 现在将在发出 SCM 命令之前丢弃这些更改,以避免在打开的文档有未保存更改的情况下修改后备文件时发生警报.
  • 修复了添加到项目中的 BBEdit 项目会显示为可扭曲项目的错误,双击项目会通过 Finder 进行奇怪的往返,而不是像它们应该那样直接在 BBEdit 中打开。
  • 重新设计了功能菜单和完成面板中使用的徽章装饰,以改善外观和(在某些情况下)可读性。
  • 进行了更改,以便 BBEdit 仅在文档内容实际更改的情况下调用“ documentWillSave”和“ documentDidSave”附件脚本。这可以防止对自动保存的文档(如注释)进行不必要的工作。
  • 修复了 BBEdit 项目被视为与磁盘浏览器和项目侧边栏中的文件夹相同的错误。
  • 在搜索结果列表的绘图中进行了布局更改,以便文本排列更漂亮。
  • 更新了 HTML5 语法表以允许以前报告为错误的属性和值。
  • 将 BBEdit 脚本字典的编码更改为 Western (Mac OS Roman)使术语代码中的八位 Mac Roman 字符不会混淆 Cocoa Scripting 之类的东西。
  • 修复了运行perldoc“在文档中查找”时未正确设置 Unix 环境的错误。
  • 修复了在不更改自定义配色方案设置的情况下确认特定于语言的设置表会导致设置重置为“应用程序默认值”的错误。
  • 修复了“部署站点”在启动前总是要求输入密码的错误,即使它不是绝对必要的(例如使用 SSH 密钥时)。
  • 允许在 PHP 数字常量中使用插页式下划线。
  • 解决了 iCloud Drive 行为,当“ UseResourceForkForDocumentState”专家首选项生效时,该行为会导致存储在那里的文档的文档设置和状态丢失。
  • BBEdit 不再需要用于深色背景的自定义工字梁光标;所以它(再次)使用系统提供的工字形光标。
  • 更正了用于排序行和“保存 Grep 模式”表中的 Grep 模式弹出菜单的图像。
  • 在适当的地方使用“警告”的系统映像,而不是我们的旧映像。
  • 对 Extract 的机制进行了更改,以便不进行任何工作来累积搜索结果,然后将其丢弃。
  • 修复了尝试转换旧(非包)项目文档时发生的崩溃。
  • 如果一个项目包含对其他项目的循环引用,返回到原始项目,则放置一个保护,以便按名称打开文件和其他枚举 Xcode 项目的命令不会卡住。(是的,确实有人这样做了。不,我不会告诉你是谁。)
  • 修复了允许完成面板从屏幕右侧边缘运行的错误,如果它很宽并且看起来足够靠近该边缘而重要。
  • 修复了在“查找”或“多文件搜索”窗口中使用“提取”时搜索历史记录中不包含替换字符串的错误。
  • 修复了“菜单和快捷方式”首选项中的某些子菜单标题项具有“单击以设置”指示符的错误,即使无法为这些项设置等效键。
  • 修复了 HTML 中包含处理器的错误,其中部分匹配文件(但 实际上不匹配现有文件)的相对包含引用会错误地返回现有文件夹的部分路径,然后报告错误。(“不能包含非文本文件的内容”错误消息也已更正。)
  • 修复了 HTML 中包含处理器的错误,其中部分匹配文件(但 实际上不匹配现有文件)的相对包含引用会错误地返回现有文件夹的部分路径,然后报告错误。(“不能包含非文本文件的内容”错误消息也已更正。)
  • 修复了如果启用软包装打印,在文档上使用“打印选择”会导致看起来奇怪的打印输出的错误。

相关文章