node package manager
Stop writing boring code. Discover, share, and reuse within your team. Create a free org »

language-detect

Language Detect

NPM version NPM downloads Build status Test coverage

Detect the programming language of any file by checking the file name, file extension, file shebang and falling back to a programming language classifier. For more language information, it should be used in conjunction with language-map.

Installation

npm install language-detect --save

Usage

var detect = require('language-detect');

Asynchronously From a File

detect(__dirname + '/test.js', function (err, language) {
  console.log(err);      //=> null 
  console.log(language); //=> "JavaScript" 
});

Synchronously From a File

detect.sync(__dirname + '/test.js'); //=> "JavaScript" 

From The Filename and Contents

detect.contents(__dirname + '/test.js', 'var test = true;\n'); //=> "JavaScript" 

From Only a Filename

detect.filename(__dirname + '/test.js'); //=> "JavaScript" 

Check for Shebang

detect.shebang('#!/usr/bin/env node\n...'); //=> "JavaScript" 

Run Classification

Uses language-classifier which can only detect a small subset of languages.

detect.classify('.test { color: red; }')

Other Properties

  • detect.aliases A map of known aliases
  • detect.interpreters A map of known interpreters
  • detect.extensions A map of known file extensions
  • detect.filenames A map of known file names

License

MIT