sharkdp
5842d58c01
Updates for syntect 3.0
2018-10-09 22:04:51 +02:00
sharkdp
fc8fd1e63f
cargo fmt
2018-10-07 17:49:38 +02:00
sharkdp
25d96da4a2
Add support for UTF-16LE and UTF-16BE
2018-10-07 17:49:38 +02:00
sharkdp
ce96df00b6
Do not display binary files in interactive mode
...
closes #248
2018-10-07 15:34:37 +02:00
sharkdp
0502a3bd4a
Add first-line detection for all input types
...
closes #205
2018-10-07 15:34:37 +02:00
sharkdp
87f021078e
Use dyn Trait for trait objects
2018-10-07 15:34:37 +02:00
sharkdp
860f3e9006
Move InputFile to separate module
2018-10-07 15:34:37 +02:00
sharkdp
80da0dc619
run cargo fmt
2018-09-26 19:16:03 +02:00
eth-p
1807f9653c
Merge remote-tracking branch 'upstream/master' into feature-tabs
...
# Conflicts:
# src/printer.rs
2018-09-11 14:03:47 -07:00
eth-p
1e74f0e2a9
Ran cargo fmt
.
2018-09-11 13:47:35 -07:00
eth-p
d90797f8e9
Fixed tab expansion not working in --wrap=never mode.
2018-09-11 13:45:49 -07:00
eth-p
b4096e5627
Moved tab expansion to happen after syntax highlighting.
2018-09-11 13:02:22 -07:00
shik Chen
4e3ab4d399
Query git diff only when needed
...
In large git repo like chromium, it takes too long time to query git
diff.
2018-09-11 21:09:38 +02:00
eth-p
b23ff24ebc
Added tab expansion preprocessing step.
2018-09-10 18:11:59 -07:00
Rogach
e1ecc17f69
print additional newline if last line in input file was not terminated with a newline ( fixes #299 )
2018-09-10 22:18:16 +02:00
sharkdp
8cacd9b432
Include theme_preview file in binary
2018-08-28 20:24:13 +02:00
sharkdp
627181bcb6
Always call the syntax highlighter
2018-08-23 23:35:57 +02:00
sharkdp
226d9a573a
Add simple loop-through mode
...
Use a loop-through mode that simply copies input to output if a
non-interactive terminal is detected.
see #150
2018-08-23 23:13:24 +02:00
sharkdp
246cf79dbd
Split into Controller and Printer
2018-08-23 22:37:27 +02:00
sharkdp
ea955c734d
Refactoring, introduce Printer trait
2018-08-23 19:44:14 +02:00
sharkdp
9316f2a758
Major refactoring and cleanup
2018-08-22 22:29:12 +02:00
sharkdp
2508323264
Extract grid and line-number color from theme
...
This changes the output color of the grid and the line numbers to use
the "gutter" foreground color defined in the Sublime `.tmTheme` files.
Sublime Text does the same.
Note: we could go one step further and also extract the "GitGutter"
colors from the themes. These could be used instead of red/green/yellow
to signify Git modifications. The problem is that they are quite a bit
harder to extract from the syntect `Theme` object.
closes #178
2018-08-19 12:32:35 +02:00
sharkdp
268577c6f9
Run 'cargo fmt'
2018-08-18 17:54:26 +02:00
sharkdp
6b57f4eebc
Style changes
2018-07-18 00:06:24 +02:00
eth-p
0ddd388a29
Improve logic for SGR sequence passthrough
2018-07-18 00:06:24 +02:00
eth-p
34811b8161
Fix #182
2018-07-18 00:06:24 +02:00
Taylor Skinner
6691786d82
add line-range
2018-06-12 08:18:44 +02:00
sharkdp
e27bdfc7d6
Fix clippy warnings
2018-05-31 15:27:55 +02:00
Ezinwa Okpoechi
a452467e06
Remove unnecessary space if there are no decorations
2018-05-24 19:10:24 +02:00
Ezinwa Okpoechi
2ea3758c4b
Justify header when there are decorations but no grid
2018-05-24 19:10:24 +02:00
Ezinwa Okpoechi
ee43377a9c
Move colors to printer module
2018-05-21 19:24:02 +02:00
sharkdp
a0ae089c4a
Reset line number to 0 for new files
2018-05-19 12:25:07 +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
12cb438aa4
Handle line with invalid UTF-8
2018-05-18 16:44:34 +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
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
eth-p
870b3c0daf
PR #102 Followed @BrainMaestro's suggestions
...
Also ran cargo fmt.
2018-05-13 03:26:23 -07: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
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
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
Ezinwa Okpoechi
64a9341b73
Split app to separate module
2018-05-11 10:15:26 +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
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
Connor Kuehl
49223eed06
Remove term_width from Printer, its options owns it.
2018-05-08 22:57:29 +02:00
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.
2018-05-08 22:57:29 +02:00
Connor Kuehl
e5e47716b0
Add term_width to options struct, move getting term_width to run()
2018-05-08 22:57:29 +02:00
sharkdp
9a0e444e09
Simplify stdout handling
2018-05-07 23:27:38 +02:00
sharkdp
438f3df345
Paint STDOUT bold, unify writeln statement
2018-05-07 23:27:38 +02:00
sharkdp
7e2e0c82ac
Add support for reading from stdin, closes #2
2018-05-07 23:27:38 +02:00
Ezinwa Okpoechi
53d67e2b6e
Add printer
...
This adds a separate struct that handles printing of the different
tokens.
2018-05-07 08:57:21 +02:00