前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Atom飞行手册翻译: 4.1 配置API

Atom飞行手册翻译: 4.1 配置API

作者头像
ApacheCN_飞龙
发布2022-11-27 15:37:40
4670
发布2022-11-27 15:37:40
举报
文章被收录于专栏:信数据得永生

在我们编写了一些主题和包之后,让我们花一些时间来深入了解一些Atom的工作方式。在这一章中,我们会更进一步了解Atom中独特的内部API和系统,甚至查看一些源码来看一看它们是如何很好地工作的。

配置API

读取配置

如果你想要编写一个可配置的包,你需要通过atom.config来整体读取配置,或者通过atom.config.get来读取一个具有命名空间的配置键的当前值。

代码语言:javascript
复制
# read a value with `config.get`
@showInvisibles() if atom.config.get "editor.showInvisibles"

或者通过atom.config.observe来跟踪任何视图对象产生的修改。

代码语言:javascript
复制
{View} = require 'space-pen'

class MyView extends View
  attached: ->
    @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用编程的方式对其写入。

代码语言:javascript
复制
# basic key update
atom.config.set("core.showInvisibles", true)

如果你通过特定键路径来访问包的配置,你也可能像将它们和你包里面的主模块的schema关联起来。更多schema的细节请阅读配置API文档

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-08-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 配置API
    • 读取配置
      • 写入配置
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档