Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 1,000,000+ packages pre-installed, including jsctags with all npm packages installed. Try it out:

var jsctags = require("jsctags")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

jsctags v5.2.2

jsctags generator

jsctags

jsctags generator using tern

install

For access to the binary:

npm install -g git+https://github.com/ramitos/jsctags.git

Otherwise, add to your project's package.json under dependencies or dev-dependencies:

"jsctags": "git://github.com/ramitos/jsctags.git"

usage

$ jsctags [--dir=/path/to] /path/to/file.js [-f]
$ cat /path/to/file.js | jsctags [--dir=/path/to] [--file=/path/to/file.js] [-f]

By default, jsctags will output a JSON file. Use the -f flag to output an exuberant ctags-compatible file.

const jsctags = require('jsctags');
const fs = require('fs');

const file = '/path/to/file.js';
const dir = '/path/to/';
const content = fs.readFileSync(file, 'utf8');

jsctags(file, dir, content, function(e, tags) {
  console.log(tags);
});

Usage with Vim

If you'd like to take a JavaScript project and generate a tags file that Vim can parse, you can use the below command. It searches your directory for any .js files, excluding ./node_modules, formats the tags correctly for Vim and outputs them into tags.

find . -type f -iregex ".*\.jsquot; -not -path "./node_modules/*" -exec jsctags {} -f \; | sed '/^$/d' | LANG=C sort > tags

If you would like tags generated for files within node_modules/, just remove the -not -path "./node_modules/* part of the command:

find . -type f -iregex ".*\.jsquot; -exec jsctags {} -f \; | sed '/^$/d' | LANG=C sort > tags

examples

license

MIT

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free