diff --git a/build/cmds/config_cmds/init.js b/build/cmds/config_cmds/init.js index d652bae..3a560e3 100644 --- a/build/cmds/config_cmds/init.js +++ b/build/cmds/config_cmds/init.js @@ -26,20 +26,31 @@ exports.builder = { } }; exports.handler = function (argv) { + var obj = null; + var configExists = null; var dirExists = null; try { - fs.statSync(PKGDIR); - dirExists = true; + fs.statSync('default.config.noon'); + configExists = true; } catch (e) { - if (e.code === 'ENOENT') { - dirExists = false; - } + if (e.code === 'ENOENT') configExists = false; } - var obj = null; - if (dirExists) { - obj = noon.load(PKGDIR + 'default.config.noon'); + if (configExists) { + obj = noon.load('default.config.noon'); } else { - throw new Error('Package dir not found, set NODE_PATH per documentation.'); + try { + fs.statSync(PKGDIR); + dirExists = true; + } catch (e) { + if (e.code === 'ENOENT') { + dirExists = false; + } + } + if (dirExists) { + obj = noon.load(PKGDIR + 'default.config.noon'); + } else { + throw new Error('Package dir not found, set NODE_PATH per documentation.'); + } } obj.dmuse.date.stamp = (0, _stringify2.default)(new Date()).replace(/"/mig, ''); obj.onelook.date.stamp = (0, _stringify2.default)(new Date()).replace(/"/mig, ''); @@ -89,4 +100,4 @@ exports.handler = function (argv) { console.log(''); } }; -//# sourceMappingURL=data:application/json;base64,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QU9BLFlBQVEsR0FBUixDQUFZLEVBQVo7QUFDRDtBQUNGLENBL0REIiwiZmlsZSI6ImNtZHMvY29uZmlnX2NtZHMvaW5pdC5qcyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHRoZW1lcyA9IHJlcXVpcmUoJy4uLy4uL3RoZW1lcycpXG5cbmNvbnN0IGNoYWxrID0gcmVxdWlyZSgnY2hhbGsnKVxuY29uc3QgZnMgPSByZXF1aXJlKCdmcycpXG5jb25zdCBub29uID0gcmVxdWlyZSgnbm9vbicpXG5cbmNvbnN0IENGSUxFID0gYCR7cHJvY2Vzcy5lbnYuSE9NRX0vLmxleGltYXZlbi5ub29uYFxuY29uc3QgUEtHRElSID0gYCR7cHJvY2Vzcy5lbnYuTk9ERV9QQVRIfS9sZXhpbWF2ZW4vYFxuXG5leHBvcnRzLmNvbW1hbmQgPSAnaW5pdCdcbmV4cG9ydHMuZGVzYyA9ICdJbml0aWFsaXplIGNvbmZpZyBmaWxlJ1xuZXhwb3J0cy5idWlsZGVyID0ge1xuICBmb3JjZToge1xuICAgIGFsaWFzOiAnZicsXG4gICAgZGVzYzogJ0ZvcmNlIG92ZXJ3cml0aW5nIGNvbmZpZ3VyYXRpb24gZmlsZScsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxuICB9LFxufVxuZXhwb3J0cy5oYW5kbGVyID0gKGFyZ3YpID0+IHtcbiAgbGV0IGRpckV4aXN0cyA9IG51bGxcbiAgdHJ5IHtcbiAgICBmcy5zdGF0U3luYyhQS0dESVIpXG4gICAgZGlyRXhpc3RzID0gdHJ1ZVxuICB9IGNhdGNoIChlKSB7XG4gICAgaWYgKGUuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgIGRpckV4aXN0cyA9IGZhbHNlXG4gICAgfVxuICB9XG4gIGxldCBvYmogPSBudWxsXG4gIGlmIChkaXJFeGlzdHMpIHtcbiAgICBvYmogPSBub29uLmxvYWQoYCR7UEtHRElSfWRlZmF1bHQuY29uZmlnLm5vb25gKVxuICB9IGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcignUGFja2FnZSBkaXIgbm90IGZvdW5kLCBzZXQgTk9ERV9QQVRIIHBlciBkb2N1bWVudGF0aW9uLicpXG4gIH1cbiAgb2JqLmRtdXNlLmRhdGUuc3RhbXAgPSBKU09OLnN0cmluZ2lmeShuZXcgRGF0ZSgpKS5yZXBsYWNlKC9cIi9taWcsICcnKVxuICBvYmoub25lbG9vay5kYXRlLnN0YW1wID0gSlNPTi5zdHJpbmdpZnkobmV3IERhdGUoKSkucmVwbGFjZSgvXCIvbWlnLCAnJylcbiAgb2JqLnJicmFpbi5kYXRlLnN0YW1wID0gSlNPTi5zdHJpbmdpZnkobmV3IERhdGUoKSkucmVwbGFjZSgvXCIvbWlnLCAnJylcbiAgb2JqLndvcmRuaWsuZGF0ZS5zdGFtcCA9IEpTT04uc3RyaW5naWZ5KG5ldyBEYXRlKCkpLnJlcGxhY2UoL1wiL21pZywgJycpXG4gIGxldCBmaWxlRXhpc3RzID0gbnVsbFxuICB0cnkge1xuICAgIGZzLnN0YXRTeW5jKENGSUxFKVxuICAgIGZpbGVFeGlzdHMgPSB0cnVlXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoZS5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgZmlsZUV4aXN0cyA9IGZhbHNlXG4gICAgfVxuICB9XG4gIGlmIChmaWxlRXhpc3RzKSB7XG4gICAgaWYgKGFyZ3YuZikge1xuICAgICAgY29uc3QgY29uZmlnID0gbm9vbi5sb2FkKENGSUxFKVxuICAgICAgb2JqLmRtdXNlLmRhdGUuc3RhbXAgPSBjb25maWcuZG11c2UuZGF0ZS5zdGFtcFxuICAgICAgb2JqLmRtdXNlLmRhdGUucmVtYWluID0gY29uZmlnLmRtdXNlLmRhdGUucmVtYWluXG4gICAgICBvYmoub25lbG9vay5kYXRlLnN0YW1wID0gY29uZmlnLm9uZWxvb2suZGF0ZS5zdGFtcFxuICAgICAgb2JqLm9uZWxvb2suZGF0ZS5yZW1haW4gPSBjb25maWcub25lbG9vay5kYXRlLnJlbWFpblxuICAgICAgb2JqLnJicmFpbi5kYXRlLnN0YW1wID0gY29uZmlnLnJicmFpbi5kYXRlLnN0YW1wXG4gICAgICBvYmoucmJyYWluLmRhdGUucmVtYWluID0gY29uZmlnLnJicmFpbi5kYXRlLnJlbWFpblxuICAgICAgb2JqLndvcmRuaWsuZGF0ZS5zdGFtcCA9IGNvbmZpZy53b3JkbmlrLmRhdGUuc3RhbXBcbiAgICAgIG9iai53b3JkbmlrLmRhdGUucmVtYWluID0gY29uZmlnLndvcmRuaWsuZGF0ZS5yZW1haW5cbiAgICAgIG5vb24uc2F2ZShDRklMRSwgb2JqKVxuICAgICAgY29uc29sZS5sb2coYE92ZXJ3cm90ZSAke2NoYWxrLndoaXRlLmJvbGQoQ0ZJTEUpfS5gKVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmxvZyhgVXNpbmcgY29uZmlndXJhdGlvbiBhdCAke2NoYWxrLndoaXRlLmJvbGQoQ0ZJTEUpfS5gKVxuICAgIH1cbiAgfSBlbHNlIGlmICghZmlsZUV4aXN0cykge1xuICAgIG5vb24uc2F2ZShDRklMRSwgb2JqKVxuICAgIGNvbnNvbGUubG9nKGBDcmVhdGVkICR7Y2hhbGsud2hpdGUuYm9sZChDRklMRSl9LmApXG4gIH1cbiAgY29uc3QgY29uZmlnID0gbm9vbi5sb2FkKENGSUxFKVxuICBjb25zdCB0aGVtZSA9IHRoZW1lcy5sb2FkVGhlbWUoY29uZmlnLnRoZW1lKVxuICBpZiAoYXJndi52KSB7XG4gICAgdGhlbWVzLmxhYmVsRG93bignQ29uZmlndXJhdGlvbicsIHRoZW1lLCBudWxsKVxuICAgIGNvbnNvbGUubG9nKCdZb3VyIGN1cnJlbnQgY29uZmlndXJhdGlvbiBpczonKVxuICAgIGNvbnNvbGUubG9nKG5vb24uc3RyaW5naWZ5KGNvbmZpZywge1xuICAgICAgaW5kZW50OiAyLFxuICAgICAgYWxpZ246IHRydWUsXG4gICAgICBtYXhhbGlnbjogMzIsXG4gICAgICBzb3J0OiB0cnVlLFxuICAgICAgY29sb3JzOiB0cnVlLFxuICAgIH0pKVxuICAgIGNvbnNvbGUubG9nKCcnKVxuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNtZHMvY29uZmlnX2NtZHMvaW5pdC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQU0sU0FBUyxRQUFRLGNBQVIsQ0FBZjs7QUFFQSxJQUFNLFFBQVEsUUFBUSxPQUFSLENBQWQ7QUFDQSxJQUFNLEtBQUssUUFBUSxJQUFSLENBQVg7QUFDQSxJQUFNLE9BQU8sUUFBUSxNQUFSLENBQWI7O0FBRUEsSUFBTSxRQUFXLFFBQVEsR0FBUixDQUFZLElBQXZCLHFCQUFOO0FBQ0EsSUFBTSxTQUFZLFFBQVEsR0FBUixDQUFZLFNBQXhCLGdCQUFOOztBQUVBLFFBQVEsT0FBUixHQUFrQixNQUFsQjtBQUNBLFFBQVEsSUFBUixHQUFlLHdCQUFmO0FBQ0EsUUFBUSxPQUFSLEdBQWtCO0FBQ2hCLFNBQU87QUFDTCxXQUFPLEdBREY7QUFFTCxVQUFNLHNDQUZEO0FBR0wsYUFBUyxLQUhKO0FBSUwsVUFBTTtBQUpEO0FBRFMsQ0FBbEI7QUFRQSxRQUFRLE9BQVIsR0FBa0IsVUFBQyxJQUFELEVBQVU7QUFDMUIsTUFBSSxNQUFNLElBQVY7QUFDQSxNQUFJLGVBQWUsSUFBbkI7QUFDQSxNQUFJLFlBQVksSUFBaEI7QUFDQSxNQUFJO0FBQ0YsT0FBRyxRQUFILENBQVkscUJBQVo7QUFDQSxtQkFBZSxJQUFmO0FBQ0QsR0FIRCxDQUdFLE9BQU8sQ0FBUCxFQUFVO0FBQ1YsUUFBSSxFQUFFLElBQUYsS0FBVyxRQUFmLEVBQXlCLGVBQWUsS0FBZjtBQUMxQjtBQUNELE1BQUksWUFBSixFQUFrQjtBQUNoQixVQUFNLEtBQUssSUFBTCxDQUFVLHFCQUFWLENBQU47QUFDRCxHQUZELE1BRU87QUFDTCxRQUFJO0FBQ0YsU0FBRyxRQUFILENBQVksTUFBWjtBQUNBLGtCQUFZLElBQVo7QUFDRCxLQUhELENBR0UsT0FBTyxDQUFQLEVBQVU7QUFDVixVQUFJLEVBQUUsSUFBRixLQUFXLFFBQWYsRUFBeUI7QUFDdkIsb0JBQVksS0FBWjtBQUNEO0FBQ0Y7QUFD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SyxDQUFULEVBQVk7QUFDVixXQUFPLFNBQVAsQ0FBaUIsZUFBakIsRUFBa0MsS0FBbEMsRUFBeUMsSUFBekM7QUFDQSxZQUFRLEdBQVIsQ0FBWSxnQ0FBWjtBQUNBLFlBQVEsR0FBUixDQUFZLEtBQUssU0FBTCxDQUFlLE1BQWYsRUFBdUI7QUFDakMsY0FBUSxDQUR5QjtBQUVqQyxhQUFPLElBRjBCO0FBR2pDLGdCQUFVLEVBSHVCO0FBSWpDLFlBQU0sSUFKMkI7QUFLakMsY0FBUTtBQUx5QixLQUF2QixDQUFaO0FBT0EsWUFBUSxHQUFSLENBQVksRUFBWjtBQUNEO0FBQ0YsQ0ExRUQiLCJmaWxlIjoiY21kcy9jb25maWdfY21kcy9pbml0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgdGhlbWVzID0gcmVxdWlyZSgnLi4vLi4vdGhlbWVzJylcblxuY29uc3QgY2hhbGsgPSByZXF1aXJlKCdjaGFsaycpXG5jb25zdCBmcyA9IHJlcXVpcmUoJ2ZzJylcbmNvbnN0IG5vb24gPSByZXF1aXJlKCdub29uJylcblxuY29uc3QgQ0ZJTEUgPSBgJHtwcm9jZXNzLmVudi5IT01FfS8ubGV4aW1hdmVuLm5vb25gXG5jb25zdCBQS0dESVIgPSBgJHtwcm9jZXNzLmVudi5OT0RFX1BBVEh9L2xleGltYXZlbi9gXG5cbmV4cG9ydHMuY29tbWFuZCA9ICdpbml0J1xuZXhwb3J0cy5kZXNjID0gJ0luaXRpYWxpemUgY29uZmlnIGZpbGUnXG5leHBvcnRzLmJ1aWxkZXIgPSB7XG4gIGZvcmNlOiB7XG4gICAgYWxpYXM6ICdmJyxcbiAgICBkZXNjOiAnRm9yY2Ugb3ZlcndyaXRpbmcgY29uZmlndXJhdGlvbiBmaWxlJyxcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICB0eXBlOiAnYm9vbGVhbicsXG4gIH0sXG59XG5leHBvcnRzLmhhbmRsZXIgPSAoYXJndikgPT4ge1xuICBsZXQgb2JqID0gbnVsbFxuICBsZXQgY29uZmlnRXhpc3RzID0gbnVsbFxuICBsZXQgZGlyRXhpc3RzID0gbnVsbFxuICB0cnkge1xuICAgIGZzLnN0YXRTeW5jKCdkZWZhdWx0LmNvbmZpZy5ub29uJylcbiAgICBjb25maWdFeGlzdHMgPSB0cnVlXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoZS5jb2RlID09PSAnRU5PRU5UJykgY29uZmlnRXhpc3RzID0gZmFsc2VcbiAgfVxuICBpZiAoY29uZmlnRXhpc3RzKSB7XG4gICAgb2JqID0gbm9vbi5sb2FkKCdkZWZhdWx0LmNvbmZpZy5ub29uJylcbiAgfSBlbHNlIHtcbiAgICB0cnkge1xuICAgICAgZnMuc3RhdFN5bmMoUEtHRElSKVxuICAgICAgZGlyRXhpc3RzID0gdHJ1ZVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmIChlLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICAgIGRpckV4aXN0cyA9IGZhbHNlXG4gICAgICB9XG4gICAgfVxuICAgIGlmIChkaXJFeGlzdHMpIHtcbiAgICAgIG9iaiA9IG5vb24ubG9hZChgJHtQS0dESVJ9ZGVmYXVsdC5jb25maWcubm9vbmApXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUGFja2FnZSBkaXIgbm90IGZvdW5kLCBzZXQgTk9ERV9QQVRIIHBlciBkb2N1bWVudGF0aW9uLicpXG4gICAgfVxuICB9XG4gIG9iai5kbXVzZS5kYXRlLnN0YW1wID0gSlNPTi5zdHJpbmdpZnkobmV3IERhdGUoKSkucmVwbGFjZSgvXCIvbWlnLCAnJylcbiAgb2JqLm9uZWxvb2suZGF0ZS5zdGFtcCA9IEpTT04uc3RyaW5naWZ5KG5ldyBEYXRlKCkpLnJlcGxhY2UoL1wiL21pZywgJycpXG4gIG9iai5yYnJhaW4uZGF0ZS5zdGFtcCA9IEpTT04uc3RyaW5naWZ5KG5ldyBEYXRlKCkpLnJlcGxhY2UoL1wiL21pZywgJycpXG4gIG9iai53b3JkbmlrLmRhdGUuc3RhbXAgPSBKU09OLnN0cmluZ2lmeShuZXcgRGF0ZSgpKS5yZXBsYWNlKC9cIi9taWcsICcnKVxuICBsZXQgZmlsZUV4aXN0cyA9IG51bGxcbiAgdHJ5IHtcbiAgICBmcy5zdGF0U3luYyhDRklMRSlcbiAgICBmaWxlRXhpc3RzID0gdHJ1ZVxuICB9IGNhdGNoIChlKSB7XG4gICAgaWYgKGUuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgIGZpbGVFeGlzdHMgPSBmYWxzZVxuICAgIH1cbiAgfVxuICBpZiAoZmlsZUV4aXN0cykge1xuICAgIGlmIChhcmd2LmYpIHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IG5vb24ubG9hZChDRklMRSlcbiAgICAgIG9iai5kbXVzZS5kYXRlLnN0YW1wID0gY29uZmlnLmRtdXNlLmRhdGUuc3RhbXBcbiAgICAgIG9iai5kbXVzZS5kYXRlLnJlbWFpbiA9IGNvbmZpZy5kbXVzZS5kYXRlLnJlbWFpblxuICAgICAgb2JqLm9uZWxvb2suZGF0ZS5zdGFtcCA9IGNvbmZpZy5vbmVsb29rLmRhdGUuc3RhbXBcbiAgICAgIG9iai5vbmVsb29rLmRhdGUucmVtYWluID0gY29uZmlnLm9uZWxvb2suZGF0ZS5yZW1haW5cbiAgICAgIG9iai5yYnJhaW4uZGF0ZS5zdGFtcCA9IGNvbmZpZy5yYnJhaW4uZGF0ZS5zdGFtcFxuICAgICAgb2JqLnJicmFpbi5kYXRlLnJlbWFpbiA9IGNvbmZpZy5yYnJhaW4uZGF0ZS5yZW1haW5cbiAgICAgIG9iai53b3JkbmlrLmRhdGUuc3RhbXAgPSBjb25maWcud29yZG5pay5kYXRlLnN0YW1wXG4gICAgICBvYmoud29yZG5pay5kYXRlLnJlbWFpbiA9IGNvbmZpZy53b3JkbmlrLmRhdGUucmVtYWluXG4gICAgICBub29uLnNhdmUoQ0ZJTEUsIG9iailcbiAgICAgIGNvbnNvbGUubG9nKGBPdmVyd3JvdGUgJHtjaGFsay53aGl0ZS5ib2xkKENGSUxFKX0uYClcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coYFVzaW5nIGNvbmZpZ3VyYXRpb24gYXQgJHtjaGFsay53aGl0ZS5ib2xkKENGSUxFKX0uYClcbiAgICB9XG4gIH0gZWxzZSBpZiAoIWZpbGVFeGlzdHMpIHtcbiAgICBub29uLnNhdmUoQ0ZJTEUsIG9iailcbiAgICBjb25zb2xlLmxvZyhgQ3JlYXRlZCAke2NoYWxrLndoaXRlLmJvbGQoQ0ZJTEUpfS5gKVxuICB9XG4gIGNvbnN0IGNvbmZpZyA9IG5vb24ubG9hZChDRklMRSlcbiAgY29uc3QgdGhlbWUgPSB0aGVtZXMubG9hZFRoZW1lKGNvbmZpZy50aGVtZSlcbiAgaWYgKGFyZ3Yudikge1xuICAgIHRoZW1lcy5sYWJlbERvd24oJ0NvbmZpZ3VyYXRpb24nLCB0aGVtZSwgbnVsbClcbiAgICBjb25zb2xlLmxvZygnWW91ciBjdXJyZW50IGNvbmZpZ3VyYXRpb24gaXM6JylcbiAgICBjb25zb2xlLmxvZyhub29uLnN0cmluZ2lmeShjb25maWcsIHtcbiAgICAgIGluZGVudDogMixcbiAgICAgIGFsaWduOiB0cnVlLFxuICAgICAgbWF4YWxpZ246IDMyLFxuICAgICAgc29ydDogdHJ1ZSxcbiAgICAgIGNvbG9yczogdHJ1ZSxcbiAgICB9KSlcbiAgICBjb25zb2xlLmxvZygnJylcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/build/themes.js b/build/themes.js index 213f2ab..20feba5 100644 --- a/build/themes.js +++ b/build/themes.js @@ -2,6 +2,7 @@ var _ = require('lodash'); var chalk = require('chalk'); +var fs = require('fs'); var glob = require('glob'); var noon = require('noon'); @@ -16,10 +17,23 @@ var TDIR = process.env.NODE_PATH + '/leximaven/themes/'; * Loads theme * @public * @param {string} theme The name of the theme - * @return {Object} theme The style to use + * @return {Object} load The style to use */ exports.loadTheme = function (theme) { - return noon.load('' + TDIR + theme + '.noon'); + var dirExists = null; + var load = null; + try { + fs.statSync('themes'); + dirExists = true; + } catch (e) { + if (e.code === 'ENOENT') dirExists = false; + } + if (dirExists) { + load = noon.load('themes/' + theme + '.noon'); + } else { + load = noon.load('' + TDIR + theme + '.noon'); + } + return load; }; /** @@ -29,7 +43,19 @@ exports.loadTheme = function (theme) { */ exports.getThemes = function () { var list = []; - var files = glob.sync(TDIR + '*.noon'); + var dirExists = null; + var files = []; + try { + fs.statSync('themes'); + dirExists = true; + } catch (e) { + if (e.code === 'ENOENT') dirExists = false; + } + if (dirExists) { + files = glob.sync('themes/*.noon'); + } else { + files = glob.sync(TDIR + '*.noon'); + } _.each(files, function (path) { var name = path.replace(/[a-z0-9\/_\.]*themes\//, '').replace(/\.noon/, ''); list.push(name); @@ -81,4 +107,4 @@ exports.labelRight = function (text, theme, content) { console.log(ctstyle(content)); } }; -//# sourceMappingURL=data:application/json;base64,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TUFBTixDQUFhLEdBQXBCLENBQXJCO0FBQ0EsTUFBSSxZQUFZLElBQVosSUFBb0IsU0FBeEIsRUFBbUM7QUFDakMsUUFBTSxVQUFVLEVBQUUsR0FBRixDQUFNLEtBQU4sRUFBYSxNQUFNLFNBQU4sQ0FBZ0IsS0FBN0IsQ0FBaEI7QUFDQSxZQUFRLE1BQVIsQ0FBZSxLQUFmLENBQXFCLFFBQVEsTUFBTSxTQUFOLENBQWdCLEdBQXhCLENBQXJCO0FBQ0EsUUFBTSxVQUFVLEVBQUUsR0FBRixDQUFNLEtBQU4sRUFBYSxNQUFNLE9BQU4sQ0FBYyxLQUEzQixDQUFoQjtBQUNBLFlBQVEsR0FBUixDQUFZLFFBQVEsT0FBUixDQUFaO0FBQ0Q7QUFDRixDQWJEIiwiZmlsZSI6InRoZW1lcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IF8gPSByZXF1aXJlKCdsb2Rhc2gnKVxuY29uc3QgY2hhbGsgPSByZXF1aXJlKCdjaGFsaycpXG5jb25zdCBnbG9iID0gcmVxdWlyZSgnZ2xvYicpXG5jb25zdCBub29uID0gcmVxdWlyZSgnbm9vbicpXG5cbmNvbnN0IFRESVIgPSBgJHtwcm9jZXNzLmVudi5OT0RFX1BBVEh9L2xleGltYXZlbi90aGVtZXMvYFxuXG4vKipcbiAgKiBUaGUgdGhlbWVzIG1vZHVsZSBwcm92aWRlcyB1c2VmdWwgcmVwZXRpdGl2ZSB0aGVtZSB0YXNrc1xuICAqIEBtb2R1bGUgVGhlbWVzXG4gICovXG5cbi8qKlxuICAqIExvYWRzIHRoZW1lXG4gICogQHB1YmxpY1xuICAqIEBwYXJhbSB7c3RyaW5nfSB0aGVtZSBUaGUgbmFtZSBvZiB0aGUgdGhlbWVcbiAgKiBAcmV0dXJuIHtPYmplY3R9IHRoZW1lIFRoZSBzdHlsZSB0byB1c2VcbiAgKi9cbmV4cG9ydHMubG9hZFRoZW1lID0gKHRoZW1lKSA9PiBub29uLmxvYWQoYCR7VERJUn0ke3RoZW1lfS5ub29uYClcblxuLyoqXG4gICogR2V0cyB0aGVtZXMgZm9yIGxpc3QgY29tbWFuZFxuICAqIEBwdWJsaWNcbiAgKiBAcmV0dXJuIHtBcnJheX0gTGlzdCBvZiB0aGVtZSBuYW1lc1xuICAqL1xuZXhwb3J0cy5nZXRUaGVtZXMgPSAoKSA9PiB7XG4gIGNvbnN0IGxpc3QgPSBbXVxuICBjb25zdCBmaWxlcyA9IGdsb2Iuc3luYyhgJHtURElSfSoubm9vbmApXG4gIF8uZWFjaChmaWxlcywgKHBhdGgpID0+IHtcbiAgICBjb25zdCBuYW1lID0gcGF0aC5yZXBsYWNlKC9bYS16MC05XFwvX1xcLl0qdGhlbWVzXFwvLywgJycpLnJlcGxhY2UoL1xcLm5vb24vLCAnJylcbiAgICBsaXN0LnB1c2gobmFtZSlcbiAgfSlcbiAgcmV0dXJuIGxpc3Rcbn1cblxuLyoqXG4gICogUHJpbnRzIGNvbm5lY3RvciBhbmQgY29udGVudCBiZWxvdyB0aGUgbGFiZWxcbiAgKiBAcHVibGljXG4gICogQHBhcmFtIHtzdHJpbmd9IHRleHQgVGhlIGxhYmVsIHRleHRcbiAgKiBAcGFyYW0ge09iamVjdH0gdGhlbWUgVGhlIHN0eWxlIHRvIHVzZVxuICAqIEBwYXJhbSB7c3RyaW5nfSBbY29udGVudF0gVGhlIHRleHQgdGhlIGxhYmVsIHBvaW50cyBhdFxuICAqL1xuZXhwb3J0cy5sYWJlbERvd24gPSAodGV4dCwgdGhlbWUsIGNvbnRlbnQpID0+IHtcbiAgY29uc3QgcHN0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLnByZWZpeC5zdHlsZSlcbiAgcHJvY2Vzcy5zdGRvdXQud3JpdGUocHN0eWxlKHRoZW1lLnByZWZpeC5zdHIpKVxuICBjb25zdCB0c3R5bGUgPSBfLmdldChjaGFsaywgdGhlbWUudGV4dC5zdHlsZSlcbiAgcHJvY2Vzcy5zdGRvdXQud3JpdGUodHN0eWxlKHRleHQpKVxuICBjb25zdCBzc3R5bGUgPSBfLmdldChjaGFsaywgdGhlbWUuc3VmZml4LnN0eWxlKVxuICBwcm9jZXNzLnN0ZG91dC53cml0ZShzc3R5bGUodGhlbWUuc3VmZml4LnN0cikpXG4gIGNvbnNvbGUubG9nKCcnKVxuICBpZiAoY29udGVudCAhPT0gbnVsbCB8fCB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBjbnN0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLmNvbm5lY3Rvci5zdHlsZSlcbiAgICBwcm9jZXNzLnN0ZG91dC53cml0ZShjbnN0eWxlKHRoZW1lLmNvbm5lY3Rvci5zdHIpKVxuICAgIGNvbnN0IGN0c3R5bGUgPSBfLmdldChjaGFsaywgdGhlbWUuY29udGVudC5zdHlsZSlcbiAgICBjb25zb2xlLmxvZyhjdHN0eWxlKGNvbnRlbnQpKVxuICB9XG59XG5cbi8qKlxuICAqIFByaW50cyBjb25uZWN0b3IgYW5kIGNvbnRlbnQgbmV4dCB0byB0aGUgbGFiZWxcbiAgKiBAcHVibGljXG4gICogQHBhcmFtIHtzdHJpbmd9IHRleHQgVGhlIGxhYmVsIHRleHRcbiAgKiBAcGFyYW0ge09iamVjdH0gdGhlbWUgVGhlIHN0eWxlIHRvIHVzZVxuICAqIEBwYXJhbSB7c3RyaW5nfSBbY29udGVudF0gVGhlIHRleHQgdGhlIGxhYmVsIHBvaW50cyBhdFxuICAqL1xuZXhwb3J0cy5sYWJlbFJpZ2h0ID0gKHRleHQsIHRoZW1lLCBjb250ZW50KSA9PiB7XG4gIGNvbnN0IHBzdHlsZSA9IF8uZ2V0KGNoYWxrLCB0aGVtZS5wcmVmaXguc3R5bGUpXG4gIHByb2Nlc3Muc3Rkb3V0LndyaXRlKHBzdHlsZSh0aGVtZS5wcmVmaXguc3RyKSlcbiAgY29uc3QgdHN0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLnRleHQuc3R5bGUpXG4gIHByb2Nlc3Muc3Rkb3V0LndyaXRlKHRzdHlsZSh0ZXh0KSlcbiAgY29uc3Qgc3N0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLnN1ZmZpeC5zdHlsZSlcbiAgcHJvY2Vzcy5zdGRvdXQud3JpdGUoc3N0eWxlKHRoZW1lLnN1ZmZpeC5zdHIpKVxuICBpZiAoY29udGVudCAhPT0gbnVsbCB8fCB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBjbnN0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLmNvbm5lY3Rvci5zdHlsZSlcbiAgICBwcm9jZXNzLnN0ZG91dC53cml0ZShjbnN0eWxlKHRoZW1lLmNvbm5lY3Rvci5zdHIpKVxuICAgIGNvbnN0IGN0c3R5bGUgPSBfLmdldChjaGFsaywgdGhlbWUuY29udGVudC5zdHlsZSlcbiAgICBjb25zb2xlLmxvZyhjdHN0eWxlKGNvbnRlbnQpKVxuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,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c3QgXyA9IHJlcXVpcmUoJ2xvZGFzaCcpXG5jb25zdCBjaGFsayA9IHJlcXVpcmUoJ2NoYWxrJylcbmNvbnN0IGZzID0gcmVxdWlyZSgnZnMnKVxuY29uc3QgZ2xvYiA9IHJlcXVpcmUoJ2dsb2InKVxuY29uc3Qgbm9vbiA9IHJlcXVpcmUoJ25vb24nKVxuXG5jb25zdCBURElSID0gYCR7cHJvY2Vzcy5lbnYuTk9ERV9QQVRIfS9sZXhpbWF2ZW4vdGhlbWVzL2BcblxuLyoqXG4gICogVGhlIHRoZW1lcyBtb2R1bGUgcHJvdmlkZXMgdXNlZnVsIHJlcGV0aXRpdmUgdGhlbWUgdGFza3NcbiAgKiBAbW9kdWxlIFRoZW1lc1xuICAqL1xuXG4vKipcbiAgKiBMb2FkcyB0aGVtZVxuICAqIEBwdWJsaWNcbiAgKiBAcGFyYW0ge3N0cmluZ30gdGhlbWUgVGhlIG5hbWUgb2YgdGhlIHRoZW1lXG4gICogQHJldHVybiB7T2JqZWN0fSBsb2FkIFRoZSBzdHlsZSB0byB1c2VcbiAgKi9cbmV4cG9ydHMubG9hZFRoZW1lID0gKHRoZW1lKSA9PiB7XG4gIGxldCBkaXJFeGlzdHMgPSBudWxsXG4gIGxldCBsb2FkID0gbnVsbFxuICB0cnkge1xuICAgIGZzLnN0YXRTeW5jKCd0aGVtZXMnKVxuICAgIGRpckV4aXN0cyA9IHRydWVcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmIChlLmNvZGUgPT09ICdFTk9FTlQnKSBkaXJFeGlzdHMgPSBmYWxzZVxuICB9XG4gIGlmIChkaXJFeGlzdHMpIHtcbiAgICBsb2FkID0gbm9vbi5sb2FkKGB0aGVtZXMvJHt0aGVtZX0ubm9vbmApXG4gIH0gZWxzZSB7XG4gICAgbG9hZCA9IG5vb24ubG9hZChgJHtURElSfSR7dGhlbWV9Lm5vb25gKVxuICB9XG4gIHJldHVybiBsb2FkXG59XG5cbi8qKlxuICAqIEdldHMgdGhlbWVzIGZvciBsaXN0IGNvbW1hbmRcbiAgKiBAcHVibGljXG4gICogQHJldHVybiB7QXJyYXl9IExpc3Qgb2YgdGhlbWUgbmFtZXNcbiAgKi9cbmV4cG9ydHMuZ2V0VGhlbWVzID0gKCkgPT4ge1xuICBjb25zdCBsaXN0ID0gW11cbiAgbGV0IGRpckV4aXN0cyA9IG51bGxcbiAgbGV0IGZpbGVzID0gW11cbiAgdHJ5IHtcbiAgICBmcy5zdGF0U3luYygndGhlbWVzJylcbiAgICBkaXJFeGlzdHMgPSB0cnVlXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoZS5jb2RlID09PSAnRU5PRU5UJykgZGlyRXhpc3RzID0gZmFsc2VcbiAgfVxuICBpZiAoZGlyRXhpc3RzKSB7XG4gICAgZmlsZXMgPSBnbG9iLnN5bmMoJ3RoZW1lcy8qLm5vb24nKVxuICB9IGVsc2Uge1xuICAgIGZpbGVzID0gZ2xvYi5zeW5jKGAke1RESVJ9Ki5ub29uYClcbiAgfVxuICBfLmVhY2goZmlsZXMsIChwYXRoKSA9PiB7XG4gICAgY29uc3QgbmFtZSA9IHBhdGgucmVwbGFjZSgvW2EtejAtOVxcL19cXC5dKnRoZW1lc1xcLy8sICcnKS5yZXBsYWNlKC9cXC5ub29uLywgJycpXG4gICAgbGlzdC5wdXNoKG5hbWUpXG4gIH0pXG4gIHJldHVybiBsaXN0XG59XG5cbi8qKlxuICAqIFByaW50cyBjb25uZWN0b3IgYW5kIGNvbnRlbnQgYmVsb3cgdGhlIGxhYmVsXG4gICogQHB1YmxpY1xuICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IFRoZSBsYWJlbCB0ZXh0XG4gICogQHBhcmFtIHtPYmplY3R9IHRoZW1lIFRoZSBzdHlsZSB0byB1c2VcbiAgKiBAcGFyYW0ge3N0cmluZ30gW2NvbnRlbnRdIFRoZSB0ZXh0IHRoZSBsYWJlbCBwb2ludHMgYXRcbiAgKi9cbmV4cG9ydHMubGFiZWxEb3duID0gKHRleHQsIHRoZW1lLCBjb250ZW50KSA9PiB7XG4gIGNvbnN0IHBzdHlsZSA9IF8uZ2V0KGNoYWxrLCB0aGVtZS5wcmVmaXguc3R5bGUpXG4gIHByb2Nlc3Muc3Rkb3V0LndyaXRlKHBzdHlsZSh0aGVtZS5wcmVmaXguc3RyKSlcbiAgY29uc3QgdHN0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLnRleHQuc3R5bGUpXG4gIHByb2Nlc3Muc3Rkb3V0LndyaXRlKHRzdHlsZSh0ZXh0KSlcbiAgY29uc3Qgc3N0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLnN1ZmZpeC5zdHlsZSlcbiAgcHJvY2Vzcy5zdGRvdXQud3JpdGUoc3N0eWxlKHRoZW1lLnN1ZmZpeC5zdHIpKVxuICBjb25zb2xlLmxvZygnJylcbiAgaWYgKGNvbnRlbnQgIT09IG51bGwgfHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgY25zdHlsZSA9IF8uZ2V0KGNoYWxrLCB0aGVtZS5jb25uZWN0b3Iuc3R5bGUpXG4gICAgcHJvY2Vzcy5zdGRvdXQud3JpdGUoY25zdHlsZSh0aGVtZS5jb25uZWN0b3Iuc3RyKSlcbiAgICBjb25zdCBjdHN0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLmNvbnRlbnQuc3R5bGUpXG4gICAgY29uc29sZS5sb2coY3RzdHlsZShjb250ZW50KSlcbiAgfVxufVxuXG4vKipcbiAgKiBQcmludHMgY29ubmVjdG9yIGFuZCBjb250ZW50IG5leHQgdG8gdGhlIGxhYmVsXG4gICogQHB1YmxpY1xuICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IFRoZSBsYWJlbCB0ZXh0XG4gICogQHBhcmFtIHtPYmplY3R9IHRoZW1lIFRoZSBzdHlsZSB0byB1c2VcbiAgKiBAcGFyYW0ge3N0cmluZ30gW2NvbnRlbnRdIFRoZSB0ZXh0IHRoZSBsYWJlbCBwb2ludHMgYXRcbiAgKi9cbmV4cG9ydHMubGFiZWxSaWdodCA9ICh0ZXh0LCB0aGVtZSwgY29udGVudCkgPT4ge1xuICBjb25zdCBwc3R5bGUgPSBfLmdldChjaGFsaywgdGhlbWUucHJlZml4LnN0eWxlKVxuICBwcm9jZXNzLnN0ZG91dC53cml0ZShwc3R5bGUodGhlbWUucHJlZml4LnN0cikpXG4gIGNvbnN0IHRzdHlsZSA9IF8uZ2V0KGNoYWxrLCB0aGVtZS50ZXh0LnN0eWxlKVxuICBwcm9jZXNzLnN0ZG91dC53cml0ZSh0c3R5bGUodGV4dCkpXG4gIGNvbnN0IHNzdHlsZSA9IF8uZ2V0KGNoYWxrLCB0aGVtZS5zdWZmaXguc3R5bGUpXG4gIHByb2Nlc3Muc3Rkb3V0LndyaXRlKHNzdHlsZSh0aGVtZS5zdWZmaXguc3RyKSlcbiAgaWYgKGNvbnRlbnQgIT09IG51bGwgfHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgY25zdHlsZSA9IF8uZ2V0KGNoYWxrLCB0aGVtZS5jb25uZWN0b3Iuc3R5bGUpXG4gICAgcHJvY2Vzcy5zdGRvdXQud3JpdGUoY25zdHlsZSh0aGVtZS5jb25uZWN0b3Iuc3RyKSlcbiAgICBjb25zdCBjdHN0eWxlID0gXy5nZXQoY2hhbGssIHRoZW1lLmNvbnRlbnQuc3R5bGUpXG4gICAgY29uc29sZS5sb2coY3RzdHlsZShjb250ZW50KSlcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/src/cmds/config_cmds/init.js b/src/cmds/config_cmds/init.js index 93ce78c..6cb6eac 100644 --- a/src/cmds/config_cmds/init.js +++ b/src/cmds/config_cmds/init.js @@ -18,20 +18,31 @@ exports.builder = { }, } exports.handler = (argv) => { + let obj = null + let configExists = null let dirExists = null try { - fs.statSync(PKGDIR) - dirExists = true + fs.statSync('default.config.noon') + configExists = true } catch (e) { - if (e.code === 'ENOENT') { - dirExists = false - } + if (e.code === 'ENOENT') configExists = false } - let obj = null - if (dirExists) { - obj = noon.load(`${PKGDIR}default.config.noon`) + if (configExists) { + obj = noon.load('default.config.noon') } else { - throw new Error('Package dir not found, set NODE_PATH per documentation.') + try { + fs.statSync(PKGDIR) + dirExists = true + } catch (e) { + if (e.code === 'ENOENT') { + dirExists = false + } + } + if (dirExists) { + obj = noon.load(`${PKGDIR}default.config.noon`) + } else { + throw new Error('Package dir not found, set NODE_PATH per documentation.') + } } obj.dmuse.date.stamp = JSON.stringify(new Date()).replace(/"/mig, '') obj.onelook.date.stamp = JSON.stringify(new Date()).replace(/"/mig, '') diff --git a/src/themes.js b/src/themes.js index 5b99357..8d44fd4 100644 --- a/src/themes.js +++ b/src/themes.js @@ -1,5 +1,6 @@ const _ = require('lodash') const chalk = require('chalk') +const fs = require('fs') const glob = require('glob') const noon = require('noon') @@ -14,9 +15,24 @@ const TDIR = `${process.env.NODE_PATH}/leximaven/themes/` * Loads theme * @public * @param {string} theme The name of the theme - * @return {Object} theme The style to use + * @return {Object} load The style to use */ -exports.loadTheme = (theme) => noon.load(`${TDIR}${theme}.noon`) +exports.loadTheme = (theme) => { + let dirExists = null + let load = null + try { + fs.statSync('themes') + dirExists = true + } catch (e) { + if (e.code === 'ENOENT') dirExists = false + } + if (dirExists) { + load = noon.load(`themes/${theme}.noon`) + } else { + load = noon.load(`${TDIR}${theme}.noon`) + } + return load +} /** * Gets themes for list command @@ -25,7 +41,19 @@ exports.loadTheme = (theme) => noon.load(`${TDIR}${theme}.noon`) */ exports.getThemes = () => { const list = [] - const files = glob.sync(`${TDIR}*.noon`) + let dirExists = null + let files = [] + try { + fs.statSync('themes') + dirExists = true + } catch (e) { + if (e.code === 'ENOENT') dirExists = false + } + if (dirExists) { + files = glob.sync('themes/*.noon') + } else { + files = glob.sync(`${TDIR}*.noon`) + } _.each(files, (path) => { const name = path.replace(/[a-z0-9\/_\.]*themes\//, '').replace(/\.noon/, '') list.push(name)