mirror of
https://codeberg.org/scip/tablizer.git
synced 2026-02-04 02:20:56 +01:00
colorize-output using regexes, refactor line colorization (#49)
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright © 2022-2025 Thomas von Dein
|
||||
Copyright © 2022-2026 Thomas von Dein
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -95,6 +95,7 @@ func Execute() {
|
||||
conf.PrepareCustomHeaders(headers)
|
||||
|
||||
wrapE(conf.PrepareFilters())
|
||||
wrapE(conf.PrepareColorizers())
|
||||
|
||||
conf.DetermineColormode()
|
||||
conf.ApplyDefaults()
|
||||
@@ -191,6 +192,8 @@ func Execute() {
|
||||
"filter", "F", nil, "Filter by field (field=regexp || field!=regexp)")
|
||||
rootCmd.PersistentFlags().StringArrayVarP(&conf.Transposers,
|
||||
"regex-transposer", "R", nil, "apply /search/replace/ regexp to fields given in -T")
|
||||
rootCmd.PersistentFlags().StringArrayVarP(&conf.Colorizers,
|
||||
"regex-colorizer", "K", nil, "apply /search/color[:background]/ to the whole output")
|
||||
|
||||
// input
|
||||
rootCmd.PersistentFlags().StringVarP(&conf.InputFile, "read-file", "r", "",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package cmd
|
||||
|
||||
const shortusage = `tablizer [regex,...] [-r file] [flags]
|
||||
-c col,... show specified columns -L highlight matching lines
|
||||
-c col,... show specified columns -L colorize rows
|
||||
-k col,... sort by specified columns -j read JSON input
|
||||
-F col=reg filter field with regexp -v invert match
|
||||
-T col,... transpose specified columns -n numberize columns
|
||||
@@ -13,6 +13,7 @@ const shortusage = `tablizer [regex,...] [-r file] [flags]
|
||||
-x col,... use custom headers -d debug
|
||||
-o char use char as output separator -g auto generate headers
|
||||
|
||||
-K /pattern/foreground[:background]/ colorize pattern of output
|
||||
-O org -C CSV -M md -X ext -S shell -Y yaml -J json -P template
|
||||
-a sort by age -i sort numerically -t sort by time -D sort descending order
|
||||
-m show manual -v show version --help show detailed help`
|
||||
|
||||
@@ -20,6 +20,7 @@ SYNOPSIS
|
||||
-F, --filter <field[!]=reg> Filter given field with regex, can be used multiple times
|
||||
-T, --transpose-columns string Transpose the speficied columns (separated by ,)
|
||||
-R, --regex-transposer </from/to/> Apply /search/replace/ regexp to fields given in -T
|
||||
-K --regex-colorizer /from/color/ colorize pattern of output (color: fg[:bg])
|
||||
-j, --json Read JSON input (must be array of hashes)
|
||||
-I, --interactive Interactively filter and select rows
|
||||
-g, --auto-headers Generate headers if there are none present in input
|
||||
@@ -467,9 +468,20 @@ CONFIGURATION AND COLORS
|
||||
lightGreen, lightMagenta, lightRed, lightWhite, lightYellow, magenta,
|
||||
red, white, yellow
|
||||
|
||||
The Variables FG and BG are being used to highlight matches. The other
|
||||
*FG and *BG variables are for colored table output (enabled with the
|
||||
"-L" parameter).
|
||||
but you may also use HTML color codes without the hash sign.
|
||||
|
||||
The Variables FG and BG are being used to highlight matching rows. The
|
||||
other *FG and *BG variables are for colored table output (enabled with
|
||||
the "-L" parameter).
|
||||
|
||||
You can also use the option "-K" to colorize particular patterns, not
|
||||
whole lines. The option can be given multiple times and expects the
|
||||
following parameter:
|
||||
|
||||
-K '/regex/foreground[:background]/
|
||||
|
||||
that is, background color is optional. This colorization will applied on
|
||||
top of any previous colorizations, if any.
|
||||
|
||||
Colorization can be turned off completely either by setting the
|
||||
parameter "-N" or the environment variable NO_COLOR to a true value.
|
||||
@@ -531,6 +543,7 @@ Operational Flags:
|
||||
-F, --filter <field[!]=reg> Filter given field with regex, can be used multiple times
|
||||
-T, --transpose-columns string Transpose the speficied columns (separated by ,)
|
||||
-R, --regex-transposer </from/to/> Apply /search/replace/ regexp to fields given in -T
|
||||
-K --regex-colorizer /from/color/ colorize pattern of output (color: fg[:bg])
|
||||
-j, --json Read JSON input (must be array of hashes)
|
||||
-I, --interactive Interactively filter and select rows
|
||||
-g, --auto-headers Generate headers if there are none present in input
|
||||
|
||||
Reference in New Issue
Block a user