A tool to grep through the AST of a source file
Project description
grep-ast
Grep soure code files and see matching lines with useful context that show how they fit into the code. See the loops, functions, methods, classes, etc that contain all the matching lines. Get a sense of what's inside a matched class or function definition. You see relevant code from every layer of the abstract syntax tree, above and below the matches.
Grep-AST is built with tree-sitter and tree-sitter-languages. So it supports a lot of popular code languages.
Install
python -m pip install git+https://github.com/paul-gauthier/grep-ast.git
Usage
Basic usage:
grep-ast [pattern] [filenames...]
Full options list:
usage: grep_ast.py [-h] [-i] [--color] [--no-color] [--encoding ENCODING] [--languages] [--verbose]
[pat] [filenames ...]
positional arguments:
pat the pattern to search for
filenames the files to display
options:
-h, --help show this help message and exit
-i, --ignore-case ignore case distinctions
--color force color printing
--no-color disable color printing
--encoding ENCODING file encoding
--languages print the parsers table
--verbose enable verbose output
Examples
Here we search for "encoding" in the source to this tool:
Here we search for "TreeContext" in the source to this tool:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file grep-ast-0.2.0.tar.gz
.
File metadata
- Download URL: grep-ast-0.2.0.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7cf6d26a74e91441dec5cd70b13e6f6b3ee22c64c3a2c99fdfa6cb7d61e3162 |
|
MD5 | 120b6ac183a375e6669c180ebee6f0b4 |
|
BLAKE2b-256 | 93cbcc7605b6eb75f607f2f8e6e3a302798b1e4733eba96fd57eba5db460f1bb |
File details
Details for the file grep_ast-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: grep_ast-0.2.0-py3-none-any.whl
- Upload date:
- Size: 11.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccf8532cfc9db841a4788975178ebcc74c80bdc32e4131610585175c3d73a510 |
|
MD5 | 26d4c58011cf47e3c5d56561a58ecf2f |
|
BLAKE2b-256 | bd20f37d3d3dac35f7b64c406a3c1a323c1da63f8395348a5f2a57802fcdaae5 |