Commit Graph

123 Commits (0886a24685dbab13bfcf186d9c5d0891d8100344)
 

Author SHA1 Message Date
Ezinwa Okpoechi 0886a24685 Add snapshot testing 6 years ago
Ezinwa Okpoechi 53eb9c57d6 Add generated snapshots 6 years ago
Ezinwa Okpoechi 026a9ebae3 Add sample files and snapshot generator 6 years ago
sharkdp cb7b158172 Add bold, italic and underline font styles 6 years ago
Ryan Leung 22c8978fca add theme option (#95)
closes #89
6 years ago
Ezinwa Okpoechi f711fb5006 Split style to separate module 6 years ago
Ezinwa Okpoechi 64a9341b73 Split app to separate module 6 years ago
sharkdp ccf88fd5d8 Add and use --style=auto by default 6 years ago
David Peter 6343535eb2
Add 32bit support (#87)
* Add 32bit support, closes #84
* Remove error-chain backtrace support
6 years ago
sharkdp e2ac6de783 Fix clippy warnings 6 years ago
Ezinwa Okpoechi 25cee002f9 Split modules (#86)
* Split diffing to separate module
* Split assets to separate module
6 years ago
sharkdp 13a53d230b Add MacOS install instructions, closes #33 6 years ago
sharkdp ea27053a63 Remove unused lifetimes 6 years ago
Pit Kleyersburg b2b932f3ed Fix header-line if grid is not requested 6 years ago
Pit Kleyersburg 747d074be1 Replace `Cow` by `String` 6 years ago
Pit Kleyersburg 61109ece15 Create `OutputComponents` struct, use HashSet 6 years ago
Pit Kleyersburg 389edd7239 Combine `OutputComponent`s and `PredefinedStyle`s
This commit tries to simply the change. Instead of separating an
`OutputComponent` and a `PredefinedStyle`, I have combined the two into
just `OutputComponent`.

To still have the styles work, I added an impl to `OutputComponent` with
a function `components` which returns the components related to the
specified component.

For a simple output component this is trivial, but for the predefined
styles this is a list of other components.

The evaluating of the command-line parameter simplified significantly,
making use of Claps `values_t!` macro to parse the supplied parameters
into a `Vec<OutputComponent>`. After that it is simply a task of
combining all supplied output components into one vector.

Important: this means that the styles are now additive, rather than one
of the predefined styles overruling other parameters supplied.
6 years ago
Pit Kleyersburg 23813cc08b Make `--style` parameter more flexible
The `--style` parameter now accepts a comma-separated list of strings,
where every element defines either a single output component (`changes`,
`grid`, `header`, `numbers`) or a predefined style (`full`,
`line-numbers`, `plain`).

If available, bat picks the first predefined style in the user-supplied
style-list and ignores everything else. If no predefined style was
requested, the other parameters that are simple output components will
be used.

Examples:

    --style changes,full,numbers

  Will internally be reduced to only the predefined style `full`.

    --style plain,full

  Will internally be reduced to only the predefined style `plain`.

    --style changes,numbers

  Will not be reduced, because the list does not contain any predefined
  styles.

(Note: if `grid` is requested but no other parameters, bat still creates
the left-most column with a width of `PANEL_WIDTH`. I didn't want to
introduce further logic in this PR that drops or adapts the width of the
left column.)
6 years ago
David Peter fdeb98e859
Add usage examples 6 years ago
David Peter 6a417886aa
Add comment about paging & concatenation 6 years ago
sharkdp 8b9991d780 Append newline at the end of the file if necessary 6 years ago
sharkdp f59ddd1e36 Update dependencies 6 years ago
sharkdp f90b9d1acc Do not peek at FIFOs, closes #80 6 years ago
sharkdp f7af537018 Filter out languages without extensions 6 years ago
sharkdp fd68af8031 Paint file extensions in green 6 years ago
sharkdp ebdef04c8f Compute 'longest' for non-hidden languages only 6 years ago
sharkdp a4150600af Correctly update num_chars 6 years ago
Connor Kuehl 49223eed06 Remove term_width from Printer, its options owns it. 6 years ago
Connor Kuehl 7dc7133b3c Add revisions for line-wrapping and terminal width.
* Adds separator.length() to calculation for desired width.
* Replaces use of term_width with options.term_width.
* Adds the comma and space separator to calculation for line-wrapping.
6 years ago
Connor Kuehl e5e47716b0 Add term_width to options struct, move getting term_width to run() 6 years ago
Connor Kuehl b4f8cd3bae Filter out languages that are hidden. 6 years ago
Connor Kuehl ee3a37f3fc WIP edit desired width. 6 years ago
Connor Kuehl 4c60ab12cc Add simple line-wrapping for file extensions. 6 years ago
Connor Kuehl ac32dd17c9 Adds requested revisions.
* removes redundant `.takes_value(false)`.
* changes Arg name to "list-languages" to be consistent with long-form.
* replaces unnecessary match statement with is_present().
* replaces unnecessary match statement on iter and uses unwrap_or()
instead.
* replaces for-loop with a call to join().
6 years ago
Connor Kuehl 4e3c57cc7c Rename and add comment to the match block. 6 years ago
Connor Kuehl 438a9a99ed Size language name column width to the length of the longest language. 6 years ago
Connor Kuehl 9b0877102c Display language and extensions from loaded assets. 6 years ago
Connor Kuehl 67bed73e15 Add --list-languages argument to clap. 6 years ago
sharkdp ef7c39b159 Improve cache subcommand
* Remove the old `init-cache` subcommand

* Introduce a new `cache` subcommand that can be used like this:

    * `bat cache -h` - Show help
    * `bat cache --init` - Initialize cache from config dir
    * `bat cache --clear` - Reset the cache
    * `bat cache --config-dir` - Show config directory

* Update README

closes #44
6 years ago
sharkdp 8a399c8d7d Disable paging-mode if we read from an interactive TTY 6 years ago
sharkdp 9a0e444e09 Simplify stdout handling 6 years ago
sharkdp 438f3df345 Paint STDOUT bold, unify writeln statement 6 years ago
sharkdp 7e2e0c82ac Add support for reading from stdin, closes #2 6 years ago
sharkdp da92154163 Re-format README 6 years ago
sharkdp 179bd4f525 Mention cmake in build instructions, closes #57 6 years ago
Ezinwa Okpoechi 53d67e2b6e Add printer
This adds a separate struct that handles printing of the different
tokens.
6 years ago
sharkdp b625d07c34 Use syntect newlines mode (instead of nonewlines) 6 years ago
Ezinwa Okpoechi ec606e5dcc Add option to disable automatic paging 6 years ago
Ezinwa Okpoechi c253821a5e Open pager once for multiple files 6 years ago
sharkdp ccb1d78b22 Remove short versions for --style and --color for now 6 years ago