## What's new - color completion message command green https://github.com/versenilvis/IRIS/pull/10/commits/6e141f5e6909fad1ec42725cce38d51729acf399 - new flat command folder structure https://github.com/versenilvis/IRIS/pull/10/commits/87026a854a529ec5d5baed967d5f7a7f0085a24b - fix some linter problems https://github.com/versenilvis/IRIS/pull/10/commits/536de790cefda912f50bf4022e40ce2b965db2e2 - fix some gemini fix suggestions
58 lines
2.1 KiB
Go
58 lines
2.1 KiB
Go
package text
|
|
|
|
import (
|
|
"github.com/versenilvis/iris/commands/core"
|
|
)
|
|
|
|
func init() {
|
|
core.Register(&core.Spec{
|
|
Name: "grep",
|
|
Description: "search text in files",
|
|
Generator: core.FileGenerator(),
|
|
Options: []core.Option{
|
|
{Name: "-r", Description: "recursive"},
|
|
{Name: "-R", Description: "recursive + follow symlinks"},
|
|
{Name: "-i", Description: "ignore case"},
|
|
{Name: "-n", Description: "show line numbers"},
|
|
{Name: "-v", Description: "invert match"},
|
|
{Name: "-l", Description: "show filenames only"},
|
|
{Name: "-L", Description: "files without match"},
|
|
{Name: "-c", Description: "count matching lines"},
|
|
{Name: "-E", Description: "extended regex (egrep)"},
|
|
{Name: "-P", Description: "perl-compatible regex"},
|
|
{Name: "-F", Description: "fixed string (fgrep)"},
|
|
{Name: "-w", Description: "whole word match"},
|
|
{Name: "-x", Description: "whole line match"},
|
|
{Name: "-A", Description: "lines after match"},
|
|
{Name: "-B", Description: "lines before match"},
|
|
{Name: "-C", Description: "lines around match"},
|
|
{Name: "-m", Description: "max matches per file"},
|
|
{Name: "-o", Description: "only matching part"},
|
|
{Name: "-q", Description: "quiet mode"},
|
|
{Name: "--include", Description: "include file pattern"},
|
|
{Name: "--exclude", Description: "exclude file pattern"},
|
|
{Name: "--exclude-dir", Description: "exclude directory"},
|
|
{Name: "-H", Description: "always print filename"},
|
|
{Name: "-h", Description: "never print filename"},
|
|
},
|
|
})
|
|
|
|
// egrep and fgrep aliases
|
|
core.Register(&core.Spec{
|
|
Name: "egrep",
|
|
Description: "grep with extended regex",
|
|
Generator: core.FileGenerator(),
|
|
Options: []core.Option{
|
|
{Name: "-r", Description: "recursive"},
|
|
{Name: "-i", Description: "ignore case"},
|
|
{Name: "-n", Description: "show line numbers"},
|
|
{Name: "-v", Description: "invert match"},
|
|
{Name: "-l", Description: "show filenames only"},
|
|
{Name: "-w", Description: "whole word"},
|
|
{Name: "-A", Description: "lines after"},
|
|
{Name: "-B", Description: "lines before"},
|
|
{Name: "-C", Description: "lines around"},
|
|
},
|
|
})
|
|
}
|