From 63bfca3d09fd6c166f69b41617d06648cb19e209 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Tue, 21 May 2013 17:15:15 -0700 Subject: [PATCH] Allow metadata to be loaded independently --- src/app/atom-package.coffee | 8 +------- src/app/package.coffee | 10 +++++++++- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/app/atom-package.coffee b/src/app/atom-package.coffee index 6b1a9762a..bff8c2270 100644 --- a/src/app/atom-package.coffee +++ b/src/app/atom-package.coffee @@ -20,7 +20,7 @@ class AtomPackage extends Package load: -> try - @loadMetadata() + @metadata = Package.loadMetadata(@path) @loadKeymaps() @loadStylesheets() @loadGrammars() @@ -60,12 +60,6 @@ class AtomPackage extends Package syntax.addGrammar(grammar) for grammar in @grammars syntax.addProperties(path, selector, properties) for [path, selector, properties] in @scopedProperties - loadMetadata: -> - if metadataPath = CSON.resolve(fsUtils.join(@path, 'package')) - @metadata = CSON.readFileSync(metadataPath) - @metadata ?= {} - @metadata.name = @name - loadKeymaps: -> @keymaps = @getKeymapPaths().map (path) -> [path, CSON.readFileSync(path)] diff --git a/src/app/package.coffee b/src/app/package.coffee index fc5a5dcd2..2147336c9 100644 --- a/src/app/package.coffee +++ b/src/app/package.coffee @@ -1,4 +1,5 @@ -{basename} = require 'path' +CSON = require 'season' +{basename, join} = require 'path' ### Internal ### module.exports = @@ -17,6 +18,13 @@ class Package pack.load(options) pack + @loadMetadata: (path) -> + if metadataPath = CSON.resolve(join(path, 'package')) + metadata = CSON.readFileSync(metadataPath) + metadata ?= {} + metadata.name = basename(path) + metadata + name: null path: null