UNPKG

javascript-ctags

Version:

A command line tool for generating an extended ctags file for Javascript.

35 lines (28 loc) 800 B
"use strict"; var glob = require('glob'); var nopt = require('nopt'); var fs = require('fs'); var _ = require('underscore'); var Parser = require('./parser'); var generate = require('./generate'); function parseAndGenerate(pattern, tagfile) { var fileDefs = parse(files(pattern)); var tags = generate(fileDefs); writeFile(tagfile, tags); } function files(pattern) { return glob.sync(pattern); } function parse(files) { var parser = new Parser(); return _.map(files, function(file) { var contents = fs.readFileSync(file, 'utf-8'); var entries = parser.parse(contents); return {filename: file, entries: entries}; }); } function writeFile(filename, tags) { fs.writeFileSync(filename, tags.join('\n')); } module.exports = parseAndGenerate; module.exports.files = files;