Commit Graph

220 Commits

Author SHA1 Message Date
sharkdp
e3c990f11e Respect color settings for list-themes and list-languages 2018-08-31 21:57:18 +02:00
sharkdp
90c7d0c365 Use stdout locks 2018-08-31 21:48:26 +02:00
mchlrhw
56002267d2 Fix panic when running bat --list-languages | head
Fixes: https://github.com/sharkdp/bat/issues/232
2018-08-31 21:43:49 +02:00
sharkdp
acdea97e71 Add --plain 2018-08-28 23:37:49 +02:00
sharkdp
c7afcdebf8 Move theme_preview file to constant 2018-08-28 22:16:42 +02:00
sharkdp
8cacd9b432 Include theme_preview file in binary 2018-08-28 20:24:13 +02:00
sharkdp
6f67444c99 Run cargo fmt 2018-08-28 20:24:13 +02:00
sharkdp
fd2b376ea0 Small style changes to --list-themes 2018-08-28 20:24:13 +02:00
sharkdp
cda54e4f61 Fix build for Rust 1.26 2018-08-28 20:24:13 +02:00
ms2300
3b90ada735 Mutation done correctly 2018-08-28 20:24:13 +02:00
ms2300
1837d364fe Added bold to theme titles 2018-08-28 20:24:13 +02:00
ms2300
4ea3e6bbb7 Changed preview code 2018-08-28 20:24:13 +02:00
ms2300
38544ed735 Changed to plain style 2018-08-28 20:24:13 +02:00
ms2300
5444b0dfed Fixes mut issue 2018-08-28 20:24:13 +02:00
ms2300
f3dde0185d Modifying changing config for efficiency 2018-08-28 20:24:13 +02:00
ms2300
2e3784aa30 #213 : output hello world for each theme when --list-theme is flagged 2018-08-28 20:24:13 +02:00
ms2300
81771432fb #212 : added -p as an alias for --style=plain 2018-08-27 17:56:50 +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
6223ad6d52 Document Config struct 2018-08-22 22:36:59 +02:00
sharkdp
31a9335bd5 Document Config struct 2018-08-22 22:36:37 +02:00
sharkdp
9316f2a758 Major refactoring and cleanup 2018-08-22 22:29:12 +02:00
sharkdp
c884c3cc12 Re-order options in help texts 2018-08-22 19:34:30 +02:00
sharkdp
08850f0474 Update the --help text 2018-08-22 19:27:11 +02:00
Tim Sampson
8e6c5bc562 doc: mention BAT_THEME in help output 2018-08-22 18:14:01 +02:00
sharkdp
052425b12f Load customized themes in addition to defaults
- New themes in `$BAT_CONFIG_DIR/themes` are now loaded *in addition* to
  the default themes (they may also override).
- The `Default.tmTheme` symlink is not necessary anymore.

This relates to #172
2018-08-20 21:39:21 +02:00
sharkdp
2df3305b94 Add new '--blank' option for 'bat cache --init'
closes #206
2018-08-20 21:34:08 +02:00
sharkdp
6882fc1512 Clean up help messages 2018-08-20 21:34:08 +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
1dddce3aa1 Separate syntax set and theme set
This commit separates the handling of syntax sets and theme sets. It
also changes the way how new syntax definitions are loaded from `bat`'s
configuration folder. New syntax definitions are now loaded *in
addition* to the ones that are stored in the `bat` binary by default.

This fixes #172
2018-08-19 11:08:23 +02:00
sharkdp
b191691767 Revert "replace trait object BufRead by generic"
This reverts commit 037861e588.
2018-08-18 21:25:58 +02:00
Michal Nazarewicz
5c95b8803b Avoid floating point arithmetic in RGB→8-bit ANSI approximation 2018-08-18 20:58:03 +02:00
sharkdp
5b421b455d Update dependencies 2018-08-18 20:44:25 +02:00
sharkdp
d179693d1d Use BAT_PAGER and PAGER environment variables, closes #158 2018-08-18 18:48:22 +02:00
sharkdp
268577c6f9 Run 'cargo fmt' 2018-08-18 17:54:26 +02:00
TA Thanh Dinh
037861e588 replace trait object BufRead by generic 2018-08-18 17:54:26 +02:00
sharkdp
28397b8f78 Always show a warning when theme is unknown 2018-07-23 21:51:49 +02:00
sharkdp
c899849101 Use map instead of and_then(..Some(..)) 2018-07-23 21:51:49 +02:00
sharkdp
bf53b64125 Small style fix 2018-07-23 21:51:49 +02:00
Armando Perez
c68aa0f424 Allow specifying the theme via the BAT_THEME environment variable
The `--theme` command line option stills takes precedence and this
change preserves how errors are handled when it's used: If a theme name
that doesn't exist is specified using the argument, this error is fatal.
However, if a theme that doesn't exist is specified using the environment
variable, the error is logged to `stderr` and the "Default" theme is
loaded as a fallback.
2018-07-23 21:51:49 +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
Stéphane Campinas
8c6a74a6c5 typo 2018-07-06 19:09:53 +02:00
sharkdp
65e6970907 Change help text for --line-range 2018-06-12 08:18:44 +02:00
sharkdp
90cc019482 Run 'cargo fmt' 2018-06-12 08:18:44 +02:00
Taylor
eaf0b99d25 update 2018-06-12 08:18:44 +02:00
Taylor Skinner
3b1dcca5d0 use map() 2018-06-12 08:18:44 +02:00
Taylor Skinner
26dbdf4fa0 update line-ranges 2018-06-12 08:18:44 +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
sharkdp
a348a9f68e Handle syntax-set loading errors 2018-05-25 22:42:06 +02:00
TA Thanh Dinh
a13eb60df3 Using slice notation instead of as_ref 2018-05-25 17:38:54 +02:00
sharkdp
9342d0bb24 Explicitly specify which args override themselves 2018-05-24 22:53:23 +02:00
sharkdp
36d7250af2 Allow arguments to override themselves 2018-05-24 22:53:23 +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
Gert Hulselmans
65bb4c7ee6 Print themes directory in error message if no themes could be loaded from it.
Before this patch:
    $ bat cache --init
    [bat error]: Could not load themes from '{}'

After:
    $ bat cache --init
    [bat error]: Could not load themes from '/home/user/.config/bat/themes'
2018-05-24 09:09:23 +02:00
Gert Hulselmans
33bbf25468 Fix launching of pager so text is interpreted as UTF-8 by default.
This fixes issue https://github.com/sharkdp/bat/issues/98
2018-05-22 22:41:58 +02:00
Ezinwa Okpoechi
2712d63a4b Move asset clearing to assets module 2018-05-21 23:20:45 +02:00
Ezinwa Okpoechi
b21fb6bca8 Extract features to separate module 2018-05-21 23:20:45 +02:00
Ezinwa Okpoechi
ee43377a9c Move colors to printer module 2018-05-21 19:24:02 +02:00
Ezinwa Okpoechi
120b33a9db Move output to separate module 2018-05-21 19:24:02 +02:00
sharkdp
be0a2d6048 Extended help texts for '--help' 2018-05-19 17:54:05 +02:00
sharkdp
d1a1943998 Add -u and -n options, see #134 2018-05-19 16:58:45 +02:00
sharkdp
2a9f5a24ed Permissive error handling, closes #17 2018-05-19 12:50:41 +02:00
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