UNPKG

linguist-js

Version:

Analyse the programming languages used in a folder or from raw content, using the same rules that GitHub Linguist does.

26 lines (25 loc) 886 B
import linguist from '../index.js'; import defaultOutput from './output/default.js'; import treeOutput from './output/tree.js'; const validCategories = ['data', 'programming', 'prose', 'markup']; export default async function runCliAnalysis(args) { // Check arguments if (args.categories?.some((category) => !validCategories.includes(category))) { console.log(`Error: '${args.categories.join(', ')}' contains an invalid category.`); console.log(`\tValid options: ${validCategories.join(', ')}.`); return; } // Fetch language data const root = args.analyze === true ? '.' : args.analyze; const data = await linguist(root, args); // Print output if (!args.json) { defaultOutput(args, data); } else if (args.tree) { treeOutput(args, data); } else { console.dir(data, { depth: null }); } }