Skip to main content

Web interface for searching your code using ripgrep, built as a Datasette plugin

Project description

datasette-ripgrep

PyPI Changelog Tests License

Web interface for searching your code using ripgrep, built as a Datasette plugin

For background on this project see datasette-ripgrep: deploy a regular expression search engine for your source code.

Demo

Try this plugin out at https://ripgrep.datasette.io/-/ripgrep - where you can run regular expression searches across the source code of Datasette and all of the datasette-* plugins belonging to the simonw GitHub user.

Some example searches:

Installation

Install this plugin in the same environment as Datasette.

$ datasette install datasette-ripgrep

The rg executable needs to be installed such that it can be run by this tool.

Usage

This plugin requires configuration: it needs to a path setting so that it knows where to run searches.

Create a metadata.json file that looks like this:

{
    "plugins": {
        "datasette-ripgrep": {
            "path": "/path/to/your/files"
        }
    }
}

Now run Datasette using datasette -m metadata.json. The plugin will add an interface at /-/ripgrep for running searches.

Plugin configuration

The "path" configuration is required. Optional extra configuration options are:

  • time_limit - floating point number. The rg process will be terminated if it takes longer than this limit. The default is one second, 1.0.
  • max_lines - integer. The rg process will be terminated if it returns more than this number of lines. The default is 2000.

Development

To set up this plugin locally, first checkout the code. Then create a new virtual environment:

cd datasette-ripgrep
python3 -mvenv venv
source venv/bin/activate

Or if you are using pipenv:

pipenv shell

Now install the dependencies and tests:

pip install -e '.[test]'

To run the tests:

pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datasette-ripgrep-0.8.2.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

datasette_ripgrep-0.8.2-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file datasette-ripgrep-0.8.2.tar.gz.

File metadata

  • Download URL: datasette-ripgrep-0.8.2.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for datasette-ripgrep-0.8.2.tar.gz
Algorithm Hash digest
SHA256 a785627b08f6288f10f0f94dcfe5c40502b6b5614f8fd844f824236e165f3bdf
MD5 fffc6794ffe1da2d7289e195d8b2d2b9
BLAKE2b-256 af789673d5fa9464e8fbcef3d9fde53d0d0025dc69e0a5f889efa7a549d3d8d2

See more details on using hashes here.

File details

Details for the file datasette_ripgrep-0.8.2-py3-none-any.whl.

File metadata

File hashes

Hashes for datasette_ripgrep-0.8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7696c6806cc5a45597cbab5fcb0d3f180f080b4ffb46d09a634d48079d28d5f1
MD5 0f9531324d1416d0f052019722f7e782
BLAKE2b-256 fba43e208df7d24b0ab9423f9dacc581ce2332e06a55c7394e66a3de0d6911f4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page