NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Atom 1.13 的版本提升

  • 2017-01-18
  • 本文字数:960 字

    阅读完需:约 3 分钟

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.history API。这个新的 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 1.13 Brings Benchmarks, Project History, and Keystroke Resolver API

2017-01-18 18:002146

评论

发布
暂无评论
发现更多内容

iMove 基于 X6 + form-render 背后的思考

阿里巴巴 开源 大前端 Web框架 逻辑编排

从躬身入局到共生入境的做产品

boshi

产品经理 产品设计 七日更

股票配资系统开发

v16629866266

2020年末总结,脚踏实地,一步一个脚印——致敬自己一年的心酸历程

孙叫兽

孙叫兽 年度报告 引航计划

所见即所得! iMove 在线执行代码探索

阿里巴巴 开源 大前端 Web框架 逻辑编排

大作业2-知识总结

arcyao

MyBatis专栏 - 进阶(引入外部配置文件, 类型参数设置)

小马哥

Java mybatis 七日更 2月春节不断更

机器学习笔记之:Matrix Matrix Multiplication

Nydia

2 期架构师训练营 - 大作业(二)

云飞扬

架构师训练营第2期

Elasticsearch multi-index 搜索

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

Python实现钉钉/企业微信自动打卡

sum56

Python python 爬虫 打卡

Go Modules v2 及后续版本

Rayjun

Go 语言

探寻内部类的奥秘(上)

后台技术汇

2月春节不断更

婚恋交友软件开发

luluhulian

驱动力读书笔记之四

张老蔫

28天写作

产品 0 期 - 第四周作业

vipyinzhiwei

【LeetCode】尽可能使字符串相等

Albert

算法 LeetCode 2月春节不断更

团队中的三种成员

熊斌

学习 管理 2月春节不断更

Webpack | 提升构建速度和体积优化的N种方式

梁龙先森

大前端 webpack 2月春节不断更

容器&服务:开篇,压力与资源

程序员架构进阶

容器 服务 七日更 28天写作 2月春节不断更

即使技术再精,面试时一问这个必挂!!

冰河

面试 类加载器 我要进大厂 Java类加载

OpenCV简介及其工程应用-游戏色块检测

行者AI

OpenCV

重磅发布 | 2021年OpenAtom XuperChain开源技术路径

开放原子开源基金会

区块链 百度 开源 开放原子开源基金会

程序员养家活口接私活必备网站(顺便用技术改变世界)

孙叫兽

程序员 网站 私活

史上最全的技术手册整理总结,编程小白都从这篇文章迅速成为大牛

孙叫兽

Java 大前端 技术手册 开发文档

百度网盘限速解决方案

孙叫兽

解决方案 百度网盘 限速

使用APICloud敏捷式开发总结,回顾开发一个完整APP过程。

孙叫兽

App 开发 APICloud 引航计划

什么是防火墙?

OpenCV--基本的线条操作

IT蜗壳-Tango

七日更 2月春节不断更

Linux Lab 进阶: Uboot 引导程序

贾献华

Linux bootloader Linux Kenel boot

学习总结之HTML5剑指前端(建议收藏,图文并茂)

我是哪吒

学习 程序员 面试 大前端 2月春节不断更

Atom 1.13的版本提升_JavaScript_Sergio De Simone_InfoQ精选文章