JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 96
  • Score
    100M100P100Q65778F
  • License MIT

Node.js wrapper around Ripgrep

Package Exports

  • ripgrep-js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (ripgrep-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

ripgrep-js

A Node.js wrapper around ripgrep

Note: I have nothing to do with ripgrep or the search functionality of this JS library. This is only a wrapper to expose ripgrep results in Node.js. All credit for the underlying tool go to @BurntSushi and the lovely contributors to the original project.

Also Note: ripgrep must be installed somewhere in your $PATH for this to work.

Usage

import { ripGrep as rg } from 'ripgrep-js';

// Give `rg` an absolute path to search in and the search term
const results = await rg('path/to/search', 'foo');

// `results` is an array of matches
const [firstMatch] = results;

// Match info provided by each result object
firstMatch.file;
firstMatch.line;
firstMatch.column;
firstMatch.match;

You can also pass an object as the second argument, which supports the following keys:

  • regex: string A regex pattern to match by. Note: this is a Rust-flavored regex pattern, not a JS one
  • string: string A string to match by. Same as passing a string as the second argument.
  • globs: Array<string> An array of glob patterns to limit the results by
  • fileType: Array<string> | string File type or types to limit the search to

For further details and information, you can find real usage examples in test/test.js.