diff --git a/main.go b/main.go index 0a6500c..26961f5 100644 --- a/main.go +++ b/main.go @@ -45,6 +45,11 @@ var ( completion string // execCommand targets the output of executing the command. execCommand bool + + // alignF is align column. + alignF bool + // rawF is raw output of escape sequences. + rawF bool ) var ( @@ -99,6 +104,13 @@ It supports various compressed files(gzip, bzip2, zstd, lz4, and xz). config.General.SectionHeader = true } + // Set a converter by specifying flag. + if alignF { + config.General.Converter = "align" + } else if rawF { + config.General.Converter = "raw" + } + // Set a global variable to convert to a style before opening the file. oviewer.OverStrikeStyle = oviewer.ToTcellStyle(config.StyleOverStrike) oviewer.OverLineStyle = oviewer.ToTcellStyle(config.StyleOverLine) @@ -358,8 +370,11 @@ func init() { rootCmd.PersistentFlags().StringVarP(&nonMatchFilter, "non-match-filter", "", "", "filter non match search pattern") rootCmd.PersistentFlags().BoolVarP(&oviewer.SkipExtract, "skip-extract", "", false, "skip extracting compressed files") + rootCmd.PersistentFlags().BoolVarP(&alignF, "align", "l", false, "align column") + rootCmd.PersistentFlags().BoolVarP(&rawF, "raw", "r", false, "raw output of escape sequences") + // Config.General - rootCmd.PersistentFlags().StringP("converter", "", "es", "converter [es|raw]") + rootCmd.PersistentFlags().StringP("converter", "", "es", "converter [es|raw|align]") _ = viper.BindPFlag("general.Converter", rootCmd.PersistentFlags().Lookup("converter")) _ = rootCmd.RegisterFlagCompletionFunc("converter", func(_ *cobra.Command, _ []string, _ string) ([]string, cobra.ShellCompDirective) { return []string{"es\tEscape Sequence", "raw\tRaw output of escape sequences", "align\tAlign Column Widths"}, cobra.ShellCompDirectiveNoFileComp