Commit Graph

483 Commits

Author SHA1 Message Date
sharkdp
ec908d5937 Run 'cargo fmt' 2019-08-31 13:46:48 +02:00
sharkdp
63d652dab5 Add 'dyn' keyword for trait references 2019-08-31 13:46:48 +02:00
Ethan P
7f2e61d579 Add new style component to separate multiple '--line-range's 2019-08-31 13:46:48 +02:00
sharkdp
e289a2c698 Add short '-L' option as an alias for --list-languages 2019-08-31 13:22:16 +02:00
Wild Kat
28266ee441 use explicit dyn with Write to appease compiler 2019-08-02 18:50:55 +02:00
Ethan P
772ce2e4fe Print a horizontal header line when 'grid' style without 'header' style 2019-07-26 06:51:33 +02:00
sharkdp
76c615a304 Allow leading minus in '--terminal-width <value>'
closes #611
2019-07-24 21:44:25 +02:00
Fernando Mendes
c9d7e3652b Enforce the creation of the full cache dir path
Fixes #576
2019-05-30 22:28:52 +02:00
sharkdp
9b1b3dda14 Only print the header for empty files
Instead of printing
```
───────┬─────────────────────────────────────────────────────────
       │ File: some-file
───────┼─────────────────────────────────────────────────────────
───────┴─────────────────────────────────────────────────────────
```
for empty files, bat will now print
```
───────┬─────────────────────────────────────────────────────────
       │ File: some-file   <EMPTY>
───────┴─────────────────────────────────────────────────────────
```
2019-05-15 22:37:03 +02:00
sharkdp
5b2b594919 Revert "Run 'cargo fmt'" (outdated rustfmt)
This reverts commit dd40f7545d.
2019-05-15 08:07:08 +02:00
sharkdp
9d53ce6be6 Fix warning 2019-05-14 23:42:23 +02:00
sharkdp
dd40f7545d Run 'cargo fmt' 2019-05-14 23:40:07 +02:00
sharkdp
c709bf2103 Print a warning message instead of just '<BINARY>' 2019-05-14 23:35:22 +02:00
Maksim Panfilov
f37dbb80a8 Added printing of "<BINARY>" for binary files in the interactive mode if header decorations are turned off 2019-05-14 23:35:22 +02:00
sharkdp
0a1e08da96 Extend help text for --terminal-width and --wrap, closes #535 2019-05-14 23:24:13 +02:00
Ethan P
493a4e719e Added non-interactive mode for --list-languages
This makes scripting it a lot easier and less hacky.
2019-05-14 22:50:42 +02:00
sharkdp
72152296c7 Fix accidental printing of files named 'cache'
This also adds two regression tests, so this will hopefully not pop up
again.

closes #557
2019-05-10 17:55:46 -05:00
Ethan P
2b9d25df05 Replace iterator with string starts_with and ends_with 2019-05-10 17:52:35 -05:00
Ethan P
cc8186103b Reformatted with cargo fmt. 2019-05-10 17:52:35 -05:00
Ethan P
0ad09df7ab Improved logic when encountering ANSI in character wrap mode
Fixes #551
2019-05-10 17:52:35 -05:00
Ethan P
7ef0fe091d Cleaned up terminal-width validation even more 2019-05-10 17:50:58 -05:00
Ethan P
89fcbb2b15 Cleaned up terminal-width validation slightly 2019-05-10 17:50:58 -05:00
Ethan P
a7e2bb86cb Add validation for --terminal-width option 2019-05-10 17:50:58 -05:00
sharkdp
1ce0bc8e0d Slightly modified help text 2019-05-10 11:04:46 -05:00
Ethan P
fde00eec98 Add -pp for plain styling and no pager 2019-05-10 11:01:02 -05:00
Mitchell Kember
bb6594e691 Add 3 new themes: ansi-light, ansi-dark, base16
Also, interpret transparent colors (#RRGGBB00) as specifying a terminal
color palette number with RR. The three new themes use this.
2019-05-08 07:35:43 -05:00
Daniele Esposti
f259ff2920 Formatted code 2019-03-09 07:43:41 +01:00
Daniele Esposti
82f14121bd Applied linter fixes 2019-03-09 07:43:41 +01:00
Daniele Esposti
a21ae614e6 Migrated to Rust 2018 2019-03-09 07:43:41 +01:00
sharkdp
f0771d6532 Do not replace arguments to pager when --pager is used, closes #509 2019-02-18 20:28:44 +01:00
Reid Wagner
76b7418e35 Only print contents if file wasn't empty, or EOF wasn't first thing received from stdin. 2019-02-11 20:33:16 +01:00
Reid Wagner
10c5f79640 Revert "Check result of read_until, and return Error if 0, which indicates EOF was found before delimeter."
This reverts commit 61e888de7f.
2019-02-11 20:33:16 +01:00
sharkdp
9e11d66979 Handle UTF-16 encoding errors with replacement characters 2019-02-10 10:18:07 +01:00
sharkdp
e09499b3df Move config-dir and cache-dir from 'bat cache' to 'bat' 2019-02-07 23:27:53 +01:00
sharkdp
cff01d81fa Rename 'bat cache --init' to 'bat cache --build' 2019-02-07 23:27:53 +01:00
sharkdp
6e8fca5bb2 Replace less command line arguments only for PAGER 2019-02-07 22:37:33 +01:00
Park Juhyung
63c77383ce Ignore flags from PAGER env var if the program is 'less' 2019-02-07 22:37:33 +01:00
sharkdp
4df22e617f Update documentation 2019-02-07 22:19:32 +01:00
sharkdp
6473e8c1be Remove import 2019-02-07 22:19:32 +01:00
sharkdp
972a764a74 Simplify Optional handling 2019-02-07 22:19:32 +01:00
sharkdp
54143d1403 Add --cache-dir option 2019-02-07 22:19:32 +01:00
sharkdp
6523bbf62f Replace 'is_absolute_path' with map and filter 2019-02-07 22:19:32 +01:00
Lavi
05e2c2c66b removed compile errors and warnings on non-macs 2019-02-07 22:19:32 +01:00
Lavi
69227222b5 config and cache now check XDG env vars first
`XDG_CACHE_HOME` and `XDG_CONFIG_HOME` are checked first and fall-back
to `~/.cache/` and `~/.config/`.
2019-02-07 22:19:32 +01:00
Lavi
49af3e854b Set cache_dir on MacOS to ~/.cache/bat/ 2019-02-07 22:19:32 +01:00
Lavi
6a8e4757b7 Updated bat config dir for MacOs
Removed directories crate and using dirs_rs
Changed bat config file and cache dir on MacOs:
config: ~/.config/bat/config
cache: ~/.config/bat/cache/
2019-02-07 22:19:32 +01:00
Reid Wagner
61e888de7f Check result of read_until, and return Error if 0, which indicates EOF was found before delimeter. 2019-02-07 07:32:28 +01:00
sharkdp
bd68684537 Fix the number of values to one 2018-12-16 22:35:22 +01:00
sharkdp
c2847f6a9f Short options for line-range and highlight-line 2018-12-16 22:17:39 +01:00
sharkdp
cf7ed042c1 Colorize the whole line 2018-12-16 21:53:15 +01:00
sharkdp
6b92814ea0 Allow for multiple highlighted lines 2018-12-16 21:00:18 +01:00
sharkdp
a236a9b195 Merge branch 'master' of https://github.com/tskinn/bat into tskinn-master 2018-12-16 20:43:36 +01:00
sharkdp
fee57d71d9 Print ANSI-reset code before newline
fixes #379
2018-12-14 23:34:13 +01:00
sharkdp
397def1320 Omit launching of pager if NO file exists
closes #387
2018-12-14 22:53:31 +01:00
ufuji1984
4ff360669f add quotes around filename
and make it more concise by using map_err
2018-12-11 22:24:52 +01:00
ufuji1984
549e5d7355 Report filename if File::open return Err
From issue #441
2018-12-11 22:24:52 +01:00
Ole Martin Ruud
348c9f3562 Enhance SyntaxMapping with impl Trait 2018-11-27 20:36:23 +01:00
Ole Martin Ruud
6b6a8f8e16 Fix doc comment typo 2018-11-27 20:34:32 +01:00
Arnav Borborah
532af6556d Use Rust inclusive range (stable in 1.26) 2018-11-11 14:42:22 +01:00
sharkdp
f98a96c1ed Update help text 2018-11-11 12:26:39 +01:00
sharkdp
7cac07d845 issue #383: Handle cases like PAGER=/usr/bin/bat 2018-11-06 19:53:32 +01:00
Rodrigo Orem
148caa1381 Fix code style 2018-11-06 19:35:41 +01:00
Rodrigo Orem
ab27cac0cc Remove args when change from bat to less 2018-11-06 19:35:41 +01:00
Rodrigo Orem
01fcbf2183 Better placement of bat detection 2018-11-06 19:35:41 +01:00
Rodrigo Orem
8a0c30b385 Avoid endless bat executions with PAGER="bat"
From issue #383
2018-11-06 19:35:41 +01:00
Nisheet Sinvhal
18d1a3b973 Changed italics to use-italic-text in config
Better placing of italics in help and also added long_help for it
2018-11-04 19:40:05 +01:00
Nisheet Sinvhal
dc10246bd2 Linting 2018-11-04 19:40:05 +01:00
Nisheet Sinvhal
44bdae0212 Linting 2018-11-04 19:40:05 +01:00
Nisheet Sinvhal
1ece38a4c4 Changed flag name 2018-11-04 19:40:05 +01:00
Nisheet Sinvhal
e90308e1f8 italics enable|disable working 2018-11-04 19:40:05 +01:00
Nisheet Sinvhal
d702d6740c Added args 2018-11-04 19:40:05 +01:00
Ricky
558134f6c8 Changed to unwrap methods, added integration tests 2018-11-04 11:19:49 +01:00
Ricky
1dd57e6d7e Ran rust fmt 2018-11-04 11:19:49 +01:00
Ricky
20ba84d1fa Added in environment variable and the result is a file check in config.rs 2018-11-04 11:19:49 +01:00
sharkdp
e81f9b23e6 Fix --show-all for UTF-16 encoding 2018-11-01 22:00:47 +01:00
sharkdp
50dc4a79b0 Display line-feed as instead of 2018-11-01 22:00:47 +01:00
sharkdp
8fa8f44706 Use character if tab-width == 1. 2018-11-01 22:00:47 +01:00
sharkdp
ecd862d9ff Feature: Highlight non-printable characters
Adds a new `-A`/`--show-all` option (in analogy to GNU Linux `cat`s option) that
highlights non-printable characters like space, tab or newline.

This works in two steps:
- **Preprocessing**: replace space by `•`, replace tab by `├──┤`, replace
newline by `␤`, etc.
- **Highlighting**: Use a newly written Sublime syntax to highlight
these special symbols.

Note: This feature is not technically a drop-in replacement for GNU `cat`s
`--show-all` but it has the same purpose.
2018-11-01 22:00:47 +01:00
sharkdp
4492d99556 Change default tab width to 4 2018-11-01 15:30:58 +01:00
sharkdp
dda27b253b Allow offset values in --terminal-width
Allows the `width` argument to `--terminal-width` to be an offset
instead of an absolute number. Examples:

    --terminal-width=80   # Set output width to 80 characters
    --terminal-width=-2   # Set output width to actual_width - 2

closes #376
2018-10-31 22:21:22 +01:00
David Peter
abcd09f869 Remove commented-out code 2018-10-21 22:52:26 +02:00
Sindre Johansen
41a5ff039b Only use the last argument of {style,plain,number} 2018-10-21 22:52:26 +02:00
Sindre Johansen
155bad3862 Rustfmt 2018-10-21 22:52:26 +02:00
Sindre Johansen
7c98a1c901 When specifying style multiple times the last occurence wins
Closes: #367
2018-10-21 22:52:26 +02:00
David Peter
c1246fcd53 Update help text 2018-10-21 22:42:11 +02:00
David Peter
9f401ea122 Update docstring 2018-10-21 22:42:11 +02:00
Park Juhyung
9c782fb692 Fix format error 2018-10-21 22:42:11 +02:00
Park Juhyung
154186a58d Add --pager option 2018-10-21 22:42:11 +02:00
sharkdp
496e0bc046 Allow for multiple line ranges
See #23
2018-10-20 10:44:13 +02:00
sharkdp
30b742e984 --map-syntax takes just one value 2018-10-17 23:27:44 +02:00
sharkdp
671deeef8c Update help text 2018-10-17 23:17:28 +02:00
sharkdp
8dc7e2efa3 Add --config-file option 2018-10-17 23:08:37 +02:00
sharkdp
10965a6122 Implement syntax mapping
This adds a `-m`/`--map-syntax` option that allows users to (re)map
certain file extensions or file names to an existing syntax.

For example:
```
bat --map-syntax .config:json
```

The option can be use multiple times. Note that you can easily make
these mappings permanent by using `bat`s new configuration file.

closes #169
2018-10-17 23:08:19 +02:00
sharkdp
e43d97dc15 Small cleanup 2018-10-17 21:12:23 +02:00
sharkdp
bb1f5aa841 Add proper handling of empty PAGER variables 2018-10-17 21:08:32 +02:00
sharkdp
2109a7830b Add error handling for parsing errors 2018-10-17 21:08:32 +02:00
sharkdp
ec27c78a8a Remove duplicate 'extern crate' 2018-10-17 21:08:32 +02:00
Morten Linderud
67fe833bc8 Add arguments from PAGER/BAT_PAGER
Solves #352

Signed-off-by: Morten Linderud <morten@linderud.pw>
2018-10-17 21:08:32 +02:00
sharkdp
25a6a55437 Revert "Fix for older version of Rust"
This reverts commit c530fadc44.
2018-10-16 22:09:15 +02:00
sharkdp
5bff4548be Add BAT_OPTS environment variable 2018-10-16 22:09:15 +02:00
sharkdp
866b9e16a8 Add error handling 2018-10-16 22:09:15 +02:00
sharkdp
5af176c94f Move transpose to util module 2018-10-16 22:09:15 +02:00
sharkdp
9e7da05459 Fix for older version of Rust 2018-10-16 22:09:15 +02:00
sharkdp
1ae02c65fb Fix include 2018-10-16 22:09:15 +02:00
sharkdp
495e7fd3b1 Add --no-config option 2018-10-16 22:09:15 +02:00
sharkdp
b48f0fe389 Fix tests 2018-10-16 22:09:15 +02:00
sharkdp
c19c704a43 Add more tests 2018-10-16 22:09:15 +02:00
sharkdp
693bd5929d Add possibility for spaces on a single line 2018-10-16 22:09:15 +02:00
sharkdp
8275b0436d Add simple configuration file
This allows users to create simple configuration file
(`~/.config/bat/config` on Linux) that has the following format:

    ```bash
    --flag1
    --flag2
    --option1=value1
    # lines beginning with '#' are ignored
    --option2=value2
    # empty lines and trailing whitespace are also ignored

    --option3=value3
    ```
2018-10-16 22:09:15 +02:00
sharkdp
278bde5cee Continue with output after "is directory"-error 2018-10-11 21:54:19 +02:00
Taylor
cea05e9f22 be consistent 2018-10-10 22:19:40 -06:00
sharkdp
2a7851530d Fix formatting 2018-10-10 20:45:10 +02:00
Taylor
1a6709c2cb add line highlight 2018-10-09 22:25:33 -06:00
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
e97095b724 Use first-line detection for STDIN 2018-10-07 15:34:37 +02:00
sharkdp
ce96df00b6 Do not display binary files in interactive mode
closes #248
2018-10-07 15:34:37 +02:00
sharkdp
f98fc5f06a Simplify access to first line 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
869cf6368c Add possibility to get first line 2018-10-07 15:34:37 +02:00
sharkdp
078228deac Add unit test for InputFileReader 2018-10-07 15:34:37 +02:00
sharkdp
6d1cc8c2c8 Move read_line functionality to inputfile module 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
d5b0502419 Move get_reader into inputfile module 2018-10-07 15:34:37 +02:00
sharkdp
860f3e9006 Move InputFile to separate module 2018-10-07 15:34:37 +02:00
sharkdp
f9fd5e4851 Simplify -h help text 2018-10-07 10:43:39 +02:00
sharkdp
da09f3877b Remove unnecessary scope 2018-10-07 10:09:10 +02:00
Richard Hozák
b39e28d2c8 Add support for wildcards in Windows CMD (#329)
Windows does not support wildcard expansion in cmd, this adds 'wild' crate (as discussed in #309) that handles everything transparently, so wildcards work everywhere.

Fixes #309
2018-10-03 22:59:11 +02:00
davideGiovannini
0d71968615 Generate shell completions with clap during build (#327)
* Generate shell completions with clap during build

* Updated ci release script, added SHELL_COMPLETIONS_DIR override to build.rs and fixed dependency version
2018-10-03 09:39:30 +02:00
sharkdp
80da0dc619 run cargo fmt 2018-09-26 19:16:03 +02:00
sharkdp
64903bb858 Typo 2018-09-26 19:13:32 +02:00
Michal Nazarewicz
79b960e17e Use ansi_colours package for better true-colour approximation 2018-09-23 10:19:19 +02:00
sharkdp
20b02e72b3 Disable wrapping when --style is plain
closes #289
2018-09-18 21:31:56 +02:00
sharkdp
e098eb43a2 Do not show file header for directories
This also adds a better error message.

closes #292
2018-09-12 21:53:41 +02:00
sharkdp
63d32bc818 Merge remote-tracking branch 'upstream/master' into bat_style 2018-09-12 21:40:41 +02:00
sharkdp
dccf8d8221 Use a more streamlined version of style-component collection 2018-09-12 21:35:23 +02:00
eth-p
d404139ff7
Added validation for --tabs.
Also added a comment to explain what 0 represents.
2018-09-12 10:08:58 -07: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
ms2300
7897260bf0 BAT_STYLE accounts for multiple styles (ie numbers,header) 2018-09-10 21:58:19 -06:00
eth-p
eb6e43b9a9
Disabled tab expansion when decorations and pager are not used. 2018-09-10 20:12:13 -07: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
ms2300
cf24986edb Run formatting for bat_style changes 2018-09-10 00:07:46 -06:00
ms2300
b9c556a0b6 Updated long help to reflect BAT_STYLE changes 2018-09-09 18:35:40 -06:00
ms2300
9d6bde48fa Added BAT_STYLE env variable functionality 2018-09-09 18:28:04 -06:00
sharkdp
8b4abb03db Run 'cargo fmt' 2018-09-08 09:52:21 +02:00
eth-p
375cf76e15 Formatted for newest rustfmt. 2018-09-08 09:52:21 +02:00
eth-p
1a4acc435e Typo 2018-09-08 09:52:21 +02:00
eth-p
d8030626f8 Automatically disable wrapping when style is plain. 2018-09-08 09:52:21 +02:00
eth-p
fb61aa4f60 Wrapping disabled when --plain is used. (#289) 2018-09-08 09:52:21 +02:00
Aankhen
76df41fa97 src/output.rs: Handle less in a portable way. 2018-09-07 21:47:31 +02:00
Shreyansh Chouhan
53d0c1deca Can read files named "cache" now, cache subcommand working too (#275)
Now if a cache file exists in the current directory, and the user passes
no arguments to the cache command, the cache file would be displayed.
If however the user uses cache command with arguments, the cache command
would be executed as normal regardless of whether the file cache exists
in the current directory or not.

Though now there won't be an error message displayed if the user uses the cache sub command without arguments in any directory that contains a file named cache.
2018-09-05 23:22:12 +02:00
sharkdp
1d9e7ac4c2 Support "(/usr)/bin/less" as PAGER too
closes #271
2018-09-05 21:10:11 +02:00
sharkdp
7b803a50af Ignore enable_ansi_support errors
- Call `enable_ansi_support` only once.
- Ignore errors that appear when trying to enable ANSI support. This
  will hopefully fix #252 and #264
2018-09-03 22:15:38 +02:00
sharkdp
026273a05c Enable ANSI support on Windows 2018-09-01 00:23:15 +02:00
sharkdp
8903b64830 Fix for Rust 1.26 2018-08-31 23:57:27 +02:00
sharkdp
194155f062 Fix relative-path computation for Windows 2018-08-31 23:57:27 +02:00
sharkdp
8a52bcf92d Add hidden --terminal-width option 2018-08-31 23:57:27 +02:00
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