你好,游客 登录 注册 搜索
背景:
阅读新闻

Atom 1.13的版本提升

[日期:2017-01-19] 来源:infoq.com  作者:Sergio De Simone ,译者 冬雨 [字体: ]

Atom是GitHub基于Electron的开源文本编辑器,它的1.13版本 为用户和开发人员增加了许多新的特性和改进,包括一个基准工具,一个“重新打开项目”菜单选项和API,以及一个自定义按钮解析器,它可以把Chrome键盘事件映射为Atom风格的按键。

在Atom之前,只能使用Chrome的分析工具来度量Atom代码库中的变更对性能有怎样的影响。Atom 1.13版本引入了一个新的atom --benchmark 选项,使开发人员可以在他们自己的机器上运行基准测试,从而比对不同Atom版本在运行同一基准测试时的差异。这个基准测试命令也可以在Window 下的命令行中执行:执行Benchmarks将执行在benchmarks 目录下找到的所有基准测试。如果你调用atom --benchmark,将得到一个CSV格式的文本输出;此外,Atom将在屏幕中描绘出基准测试的情况。

为了能够不必使用不常用的命令行选项就可以回到之前的编辑状态,1.13版本引入了一个新的“重新打开项目”命令及其相关的atom.historyAPI。这个新的API包括.getProjects()、.clearProjects()和.onDidChangeProjects(callback) 端点。可以使用core.reopenProjectMenuCount 定义缓存的项目名称的个数,默认为15个。

此外,Atom 1.13版本增加了一个新的按键解析器API,它的目标是解决键盘事件处理相关的一些缺陷,采取的方式让你可以去定义如何去解释按键,如以下代码所示:

atom.keymaps.addKeystrokeResolver(({event}) => {
  if (event.code === 'KeyG' && event.altKey && event.ctrlKey) {
    return 'ctrl-@'
  }
})

特别是,当辅助按键是用过的以及具有国际化布局时,这将有助于改进键盘事件的处理。

最后要说的是,Atom 1.13撤回了Shadow DOM边界,在渲染受保护的命名空间内的编辑器的内容时会用到它,从而避免编辑器和该工作空间内其他元素之间的样式冲突。这种Shadow DOM边界方式遇到了很多的问题,在1.13版中已经替换为Light DOM,这种方式是由syntax-- 加类名构成,大致格式如下:

.syntax--source.syntax--js .syntax--operator {
  color: #000000;
}

Atoms提供了一个指南,该指南描述了从已有主题或包中清除Shadow DOM样式的步骤。这些所需做的修改不是向下兼容的,这意味着更新的主题或包将无法在Atom 1.13之前的版本中运行。

下面关于Atom的文章您也可能喜欢,不妨看看:

Ubuntu 下通过 PPA 安装 Atom http://www.linuxidc.com/Linux/2014-05/101501.htm

非官方构建的 Windows 下的 Atom 编辑器 http://www.linuxidc.com/Linux/2014-05/101505.htm

在Ubuntu下编译安装Atom编辑器 http://www.linuxidc.com/Linux/2014-05/101417.htm

安装和使用Atom编辑器  http://www.linuxidc.com/Linux/2016-11/137492.htm

Ubuntu 及衍生系统安装 Atom 0.104.0 http://www.linuxidc.com/Linux/2014-06/103518.htm

Ubuntu/Linux Mint上安装Atom文本编辑器 http://www.linuxidc.com/Linux/2014-08/105624.htm

Github Atom 的详细介绍请点这里
Github Atom 的下载地址请点这里

查看英文原文Atom 1.13 Brings Benchmarks, Project History, and Keystroke Resolver API

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-01/139697.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款