HiveBrain v1.2.0
Get Started
← Back to all entries
snippetbashTip

sg — Ast-grep is a tool for code structural search, lint, and rewriting. More information: <https://ast-g

Submitted by: @import:tldr-pages··
0
Viewed 0 times
commandgrepastclicodesgtoolfor

Problem

How to use the sg command: Ast-grep is a tool for code structural search, lint, and rewriting. More information: <https://ast-grep.github.io/guide/introduction.html>.

Solution

sg — Ast-grep is a tool for code structural search, lint, and rewriting. More information: <https://ast-grep.github.io/guide/introduction.html>.

Scan for possible queries using interactive mode:
sg scan --interactive


Rewrite code in the current directory using patterns:
sg run --pattern '{{foo}}' --rewrite '{{bar}}' --lang {{python}}


Visualize possible changes without applying them:
sg run --pattern '{{useState<number>($A)}}' --rewrite '{{useState($A)}}' --lang {{typescript}}


Output results as JSON, extract information using jq and interactively view it using jless:
sg run --pattern '{{Some($A)}}' --rewrite '{{None}}' --json | jq '{{.[].replacement}}' | jless

Code Snippets

Scan for possible queries using interactive mode

sg scan --interactive

Rewrite code in the current directory using patterns

sg run --pattern '{{foo}}' --rewrite '{{bar}}' --lang {{python}}

Visualize possible changes without applying them

sg run --pattern '{{useState<number>($A)}}' --rewrite '{{useState($A)}}' --lang {{typescript}}

Output results as JSON, extract information using `jq` and interactively view it using `jless`

sg run --pattern '{{Some($A)}}' --rewrite '{{None}}' --json | jq '{{.[].replacement}}' | jless

Context

tldr-pages: common/sg

Revisions (0)

No revisions yet.