Atom飞行手册翻译: 4.1 配置API
在我们编写了一些主题和包之后,让我们花一些时间来深入了解一些Atom的工作方式。在这一章中,我们会更进一步了解Atom中独特的内部API和系统,甚至查看一些源码来看一看它们是如何很好地工作的。
配置API
读取配置
如果你想要编写一个可配置的包,你需要通过atom.config
来整体读取配置,或者通过atom.config.get
来读取一个具有命名空间的配置键的当前值。
# read a value with `config.get`
@showInvisibles() if atom.config.get "editor.showInvisibles"
或者通过atom.config.observe
来跟踪任何视图对象产生的修改。
{View} = require 'space-pen'class MyView extends Viewattached: ->@fontSizeObserveSubscription =atom.config.observe 'editor.fontSize', (newValue, {previous}) =>@adjustFontSize()detached: ->@fontSizeObserveSubscription.dispose()
atom.config.observe
方法会使用特定键路径的当前值立即调用提供的回调函数,并且以后当这个值发生改变时也会调用。如果你只希望在下次这个值改变的时候调用回调,使用atom.config.onDidChange
来代替它。
订阅(Subscription)方法会返回一个一次性的订阅对象。注意上面的例子中,我们如何将订阅保存在@fontSizeObserveSubscription
实例变量中,以及视图被分离的时候如何处理它。你可以添加多个订阅到[CompositeDisposable](https://atom.io/docs/api/latest/CompositeDisposable)
中来将它们组合到一起。当视图被分离的时候你可以把它处理掉。
写入配置
虽然atom.config
的数据在启动时才从~/.atom/config.cson
加载,但你可以通过atom.config.set
用编程的方式对其写入。
# basic key update
atom.config.set("core.showInvisibles", true)
如果你通过特定键路径来访问包的配置,你也可能像将它们和你包里面的主模块的schema关联起来。更多schema的细节请阅读配置API文档。
Atom飞行手册翻译: 4.1 配置API相关推荐
- Atom飞行手册翻译: 3.7 调试
调试 Atom拱了一些工具来帮助你理解预料之外的行为和调试问题.这篇指南介绍了一些工具和方法用于帮助你调试,以及提供了一些提交工单(issue)时的帮助信息. 升级到最新版本 你可能遇到了在最新版本已 ...
- Atom飞行手册翻译: 4.5 ~ 4.8
开发Node模块 Atom中的一些包是Node模块,而不是Atom的包.如果你想要修改这些Node模块,例如atom-keymap,你需要把它们链接到不同于普通Atom包的开发环境中. 把Node模块 ...
- Atom飞行手册翻译: 1.3 Atom基础
Atom基础 既然Atom在你的系统中已经安装了,让我们启动.配置并且熟悉这一编辑器吧. 当你首次启动Atom时,你会看到这样一个界面: 这是Atom的欢迎界面,它会给你一些很好的建议,关于如何开始使 ...
- Atom飞行手册翻译: 3.1 ~ 3.2
现在是时候来介绍在这一Hackable的编辑器中,真正"Hackable"的部分了.像我们在整个第二章中看到的那样,Atom中很大一部分都由一大堆包组成.如果你想向Atom中添加一 ...
- Atom飞行手册翻译: 2.13 基本的自定义
基本的自定义 在我们感受到Atom中所有东西的便利之后,让我们看看如何改进它.可能有一些快捷键你经常使用但是感觉很别扭,或者一些颜色不是十分适合你.Atom具有惊人的灵活性,所以让我们对它做一些力所能 ...
- Atom飞行手册翻译: 2.12 在Atom中写作
在Atom中写作 虽然Atom通常可能用来编写软件的代码,但是它还可以用来高效地编写文章.这通常采用一些标记语言,比如说Markdown和Asciidoc(也就是英文手册所用的格式)来完成.下面我们会 ...
- Atom飞行手册翻译: 2.6 代码段
代码段 代码段是一个非常有效的工具,可以从一个快捷方式中快速生成常用的代码语法. 这就是说,你可以输入一些类似于habtm的东西,然后按下回车键,他就会扩展为has_and_belongs_to_ma ...
- Atom飞行手册翻译: 2.1 Atom中的包
在我们介绍完Atom最基础的部分之后,我们要了解如何真正尽可能使用它了.在这一章中我们会介绍如何为了添加新功能而寻找并安全新的包,如何寻找并安装新的主题,如何以一种更高级的方法处理文本,如何以任何你想 ...
- Atom飞行手册翻译: 2.7 ~ 2.10
自动补全 如果你仍旧希望节约一些打字时间,Atom自带简单的自动补全功能. 通过使用ctrl-space,自动补全工具可以让你看到并插入可选的完整单词. 通常,自动补全工具会浏览当前打开的整个文档,寻 ...
最新文章
- Android事件机制
- bzoj 1233 or 3549
- vscode 调试html页面,vscode调试HTML
- PHP获取IP的多种方式解析
- FreeMarker MyEclipse IDE
- “5G 时代,手机或被淘汰”
- AndroidTV开发9远程adb调试设备
- PyMuPDF 拼版(一)
- SQLAlchemy session 使用问题
- 抖音超火的动态图如何做 怎么制作GIF
- oracle财务软件导出报表,OracleFusion财务会计中心报表云服务-UAO.PDF
- 计算集群MOSIX-3.1.1.1.for_kernel-3.2.23 配置
- windows下安装Python和安装Python解释器
- 电脑打不开html网页,电脑网页打不开怎么回事
- mvc中js是如何调用HTML的,MVC中javascript直接调用Model
- 前端框架和后端框架总结
- java智能停车场收费管理系统
- 冯.诺伊曼体系结构的计算机工作原理是,冯 诺依曼型计算机的工作原理是什么...
- 时间同步通道跳频TSCH
- DHCP中继原理及配置实操
热门文章
- 傲腾服务器系统,英特尔傲腾加速 释放数据价值
- 查看函数说明_Axure函数使用说明
- ffmpeg获取h264视频数据
- java 布局管理器_java布局管理器-borderlayout
- oracle 行数大于一时,oracle – PL / SQL ORA-01422:精确的提取返回超过请求的行数
- poll接口《来自Linux驱动程序开发实例》
- 源码编译php mysql_linux下apache+mysql+php开发环境纯源代码编译搭建(转)
- java笔试题2015_去哪儿2015笔试题JAVA实现
- python无角正方形的绘制_Python无角正方形,用while True怎么写?我写的这个只能画一行,哪个地方出问题了啊?...
- linux定时任务执行脚本文件找不到,linux中脚本放入计划任务当中为什么没有执行呢?...