Commit Graph

102 Commits

Author SHA1 Message Date
sharkdp
a0ae089c4a Reset line number to 0 for new files 2018-05-19 12:25:07 +02:00
sharkdp
96cc391f2d Skip '--quit-if-one-screen' for --paging=always
closes #97
2018-05-19 10:54:54 +02:00
sharkdp
5e3b17e6f7 Fix code formatting 2018-05-18 17:44:43 +02:00
eth-p
486e6a19cd Fixed #124 2018-05-18 17:44:43 +02:00
Ezinwa Okpoechi
247dfbee83 Extract syntax finding to assets module 2018-05-18 16:45:59 +02:00
Ezinwa Okpoechi
12cb438aa4 Handle line with invalid UTF-8 2018-05-18 16:44:34 +02:00
sharkdp
c826c2a438 Better error handling 2018-05-16 22:55:37 +02:00
sharkdp
145b99f01c Include syntaxes and themes in repository
This changes a few things:

- All syntaxes and themes are now stored (as submodules) under
  assets/syntaxes and assets/themes

- The default directories for syntaxes and themes are "syntaxes"
  and "themes" (used to be "syntax" and "themes")

- The "bat cache" command can now take a `--source <dir>` and
  `--target <dir>` option.

- The cached files have been renamed to "themes.bin" and "syntaxes.bin"
2018-05-16 22:04:12 +02:00
David Peter
2eee68599d
Merge pull request #102 from eth-p/master
Added text wrapping. (Fixes #54)
2018-05-16 08:41:49 +02:00
eth-p
d569693dab Formatted with newer cargo fmt.
It should pass all the checks now.
2018-05-16 08:29:41 +02:00
eth-p
900f61032d
Fix #117 2018-05-15 14:09:51 -07:00
eth-p
d0ca566979
Replace for_line and for_wrap with generate 2018-05-15 13:55:38 -07:00
eth-p
a5a7dc14e4
Fix \r character being printed with wrapping enabled. 2018-05-14 14:36:08 -07:00
rleungx
a5de77af4d address comment 2018-05-14 20:30:16 +02:00
rleungx
870ff7b538 sort the language listing 2018-05-14 20:30:16 +02:00
sharkdp
15b9acd12f Updates for new rustfmt 2018-05-14 19:04:13 +02:00
eth-p
b327127f37
Split decorations into a separate file and optimized them a bit. 2018-05-13 18:44:07 -07:00
eth-p
9214a4a4f0
PR #102 Followed @sharkdp's suggestions 2018-05-13 12:45:16 -07:00
sharkdp
fcecd97224 Add ansi_term import for Windows, see #107 2018-05-13 21:19:26 +02:00
eth-p
870b3c0daf
PR #102 Followed @BrainMaestro's suggestions
Also ran cargo fmt.
2018-05-13 03:26:23 -07:00
sharkdp
b9c780c8c8 Ignore errors when clearing cache, closes #91 2018-05-13 10:34:35 +02:00
sharkdp
ca865f9d26 Enable ANSI support on Windows 10 2018-05-13 09:58:16 +02:00
eth-p
b4cfc9633c
Fix double spaces when outputting without wrapping. 2018-05-12 14:02:47 -07:00
eth-p
d4b438b9d3
Fix padding, add --wrap argument, disable wrap for non-tty. (Fixed)
I'm not quite sure what was up with git on that last commit, but it's
all properly committed now.
2018-05-12 13:44:10 -07:00
eth-p
cd26d403a3
Fix padding, add --wrap argument, disable wrap for non-tty.
Now bat(1) can be used like cat(1) again!
2018-05-12 13:23:33 -07:00
eth-p
f95a23f948
Fix off-by-one error with text wrapping and --style grid 2018-05-12 12:07:41 -07:00
Ethan P
bdd10b8bec
Merge branch 'master' into master 2018-05-12 06:40:47 -07:00
eth-p
fc160b0dcd
PR #102 Review Changes
- Reformatted code.
- Removed leftover code.
- Removed leftover comments.
- Fixed compiling on Rust 1.24.0
2018-05-12 06:32:23 -07:00
sharkdp
cb7b158172 Add bold, italic and underline font styles 2018-05-12 13:23:39 +02:00
eth-p
fcc36b1f79
Forgot to add styling to the horizontal line. 2018-05-11 22:49:26 -07:00
eth-p
4e4110bf50
Added line wrapping. 2018-05-11 21:59:26 -07:00
Ryan Leung
22c8978fca add theme option (#95)
closes #89
2018-05-11 13:53:17 +02:00
Ezinwa Okpoechi
f711fb5006 Split style to separate module 2018-05-11 10:15:26 +02:00
Ezinwa Okpoechi
64a9341b73 Split app to separate module 2018-05-11 10:15:26 +02:00
sharkdp
ccf88fd5d8 Add and use --style=auto by default 2018-05-10 16:22:24 +02:00
sharkdp
e2ac6de783 Fix clippy warnings 2018-05-10 13:15:59 +02:00
Ezinwa Okpoechi
25cee002f9 Split modules (#86)
* Split diffing to separate module
* Split assets to separate module
2018-05-10 12:36:09 +02:00
sharkdp
ea27053a63 Remove unused lifetimes 2018-05-10 12:20:38 +02:00
Pit Kleyersburg
b2b932f3ed Fix header-line if grid is not requested 2018-05-10 12:20:38 +02:00
Pit Kleyersburg
747d074be1 Replace Cow by String 2018-05-10 12:20:38 +02:00
Pit Kleyersburg
61109ece15 Create OutputComponents struct, use HashSet 2018-05-10 12:20:38 +02:00
Pit Kleyersburg
389edd7239 Combine OutputComponents and PredefinedStyles
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.
2018-05-10 12:20:38 +02:00
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.)
2018-05-10 12:20:38 +02:00
sharkdp
8b9991d780 Append newline at the end of the file if necessary 2018-05-08 23:49:59 +02:00
sharkdp
f90b9d1acc Do not peek at FIFOs, closes #80 2018-05-08 23:23:41 +02:00
sharkdp
f7af537018 Filter out languages without extensions 2018-05-08 22:57:29 +02:00
sharkdp
fd68af8031 Paint file extensions in green 2018-05-08 22:57:29 +02:00
sharkdp
ebdef04c8f Compute 'longest' for non-hidden languages only 2018-05-08 22:57:29 +02:00
sharkdp
a4150600af Correctly update num_chars 2018-05-08 22:57:29 +02:00
Connor Kuehl
49223eed06 Remove term_width from Printer, its options owns it. 2018-05-08 22:57:29 +02:00