Commit Graph

506 Commits

Author SHA1 Message Date
sharkdp
f034be71e7 rename run => print 2020-04-22 23:55:28 +02:00
sharkdp
eee35e54e9 Update documentation 2020-04-22 23:55:28 +02:00
sharkdp
ec0ce05455 Better API for highlighting lines 2020-04-22 23:55:28 +02:00
sharkdp
13e6b3fac7 Reduce public API 2020-04-22 23:55:28 +02:00
sharkdp
26c951fec4 Fix warnings, sort imports, input from string 2020-04-22 23:55:28 +02:00
sharkdp
590960f7f5 Completely refactor 'input' module 2020-04-22 23:55:28 +02:00
sharkdp
b4d54106fe Fix comment 2020-04-22 23:55:28 +02:00
sharkdp
f3b90ddb38 Add InputDescription 2020-04-22 23:55:28 +02:00
sharkdp
3bacfc5184 Allow fluent style 2020-04-22 23:55:28 +02:00
sharkdp
f8d0956893 Rename InputFile => Input 2020-04-22 23:55:28 +02:00
sharkdp
1dc328ad49 Separate inputs from config 2020-04-22 23:55:28 +02:00
sharkdp
5e5cb89da6 Add all builder options 2020-04-22 23:55:28 +02:00
sharkdp
057e4eced1 Large refactoring towards a better builder structure 2020-04-22 23:55:28 +02:00
sharkdp
27974616bf Initial verison of PrettyPrinter builder 2020-04-22 23:55:28 +02:00
sharkdp
319ab779ee Use 4-bit ANSI codes for base16 theme
closes #865
2020-04-22 10:22:11 +02:00
sharkdp
864656bd11 Pass --no-init on Windows if less version < 559
We used to call `less` with
``` bash
less --RAW-CONTROL-CHARS --quit-if-one-screen --no-init
```
We only passed `--no-init` because there was a bug with previous versions
of `less` which required the use of `--no-init` in combination with
`--quit-if-one-screen` to prevent this "no output" issue from happening.

Since bat 0.13, [we omit the `--no-init` option](0ecc94956b/src/output.rs (L85-L97))
if we can detect that the version of `less` is higher than or equal to 530. We
did that because `--no-init` breaks mouse support and because [less 530 fixed
the above-mentioned bug](http://www.greenwoodsoftware.com/less/news.530.html).
However, it seems that this bug was *not* fixed on Windows!

According to @gwsw, the issue should be fixed with less 559 on Windows.

closes #887
2020-04-21 18:18:03 +02:00
sharkdp
2e9cf63a5f Fix compilation of library 2020-04-21 18:14:31 +02:00
sharkdp
72618db179 Add metadata information to cached assets
When saving/reading user-provided syntaxes or themes, `bat` will now maintain a
`metadata.yaml` file which includes information about the `bat` version which was
used to create the cached files. When loading cached files, we now print an error
if they have been created with an incompatible version

closes #882
2020-04-21 18:14:31 +02:00
sharkdp
c8273369cc Make get_cache_dir private 2020-04-21 18:14:31 +02:00
sharkdp
859ff50766 Update default config file, add comment about tmux mouse scrolling support 2020-04-21 17:45:14 +02:00
sharkdp
ce583eb9bf Revert "Pass '--mouse' to less versions >= 551"
This reverts commit cb21b74ecd.
2020-04-21 17:29:01 +02:00
sharkdp
3a195be14e Revert "Only enable --mouse when running from tmux, see #904"
This reverts commit 5f6e310152.
2020-04-21 17:28:37 +02:00
sharkdp
5f6e310152 Only enable --mouse when running from tmux, see #904 2020-04-21 16:15:02 +02:00
sharkdp
82e20bfe14 Fix bug for file with invalid-utf8 filenames 2020-04-21 14:09:18 +02:00
sharkdp
c386cb35fb Pass '--mouse' to less versions >= 551
When using `less` version 551 or newer, `bat` will now pass the `--mouse` argument, allowing
for (better) mouse scrolling support in some terminals.

closes #904
2020-04-21 10:00:32 +02:00
sharkdp
a6d9d1551f Improve error message 2020-04-21 08:57:15 +02:00
sharkdp
34619a2e89 Small refactoring, handle invalid UTF-8 filenames 2020-04-21 08:57:15 +02:00
Kyle Criddle
83d408bab3 Extract common syntax functionality to helper fns 2020-04-21 08:57:15 +02:00
sharkdp
8067fd9eda Fix build on 1.37 2020-04-21 08:57:15 +02:00
sharkdp
98ba9e0101 Use to_string_lossy 2020-04-21 08:57:15 +02:00
sharkdp
1b8ce60054 Pass stdin as a generic BufRead, fix stdin tests 2020-04-21 08:57:15 +02:00
sharkdp
d5a31dc2ec Remove commented-out code 2020-04-21 08:57:15 +02:00
sharkdp
051dd4ba87 Make filename method private 2020-04-21 08:57:15 +02:00
sharkdp
2ad1848859 Do not take optional as argument 2020-04-21 08:57:15 +02:00
sharkdp
90e7d2fe33 Rename field name, new constructors 2020-04-21 08:57:15 +02:00
Kyle Criddle
04fa84aea7 Moved user_provided_filename to be contained within OrdinaryFile struct 2020-04-21 08:57:15 +02:00
Kyle Criddle
a3f8140fbe Use --file-name to detect syntax highlighting
Closes #891
2020-04-21 08:57:15 +02:00
sharkdp
495fab24a5 cargo fmt 2020-04-11 19:40:04 +02:00
David Tolnay
42e3825daf Updates for review of PR 899 2020-03-31 09:27:56 +02:00
David Tolnay
014d754588 Move paging support behind a feature 2020-03-31 09:27:56 +02:00
David Tolnay
4e11abdf9b Move git changes support behind a feature 2020-03-31 09:27:56 +02:00
David Tolnay
570805bc98 Strip dependencies of bat-as-a-library 2020-03-31 09:27:56 +02:00
sharkdp
3e8d444c78 Fix for Rust 1.37 2020-03-26 10:01:02 +01:00
David Peter
37b3b8730d
Merge pull request #871 from neuronull/fix_654_stdin_filename
Implement --file-name<name> option
2020-03-26 09:35:01 +01:00
Josh Mickley
40a827ebcb Graceful handling of error conditions 2020-03-26 09:14:40 +01:00
Josh Mickley
376c556862 Add option to generate a default config file, fixes #870 2020-03-26 09:14:40 +01:00
Kyle Criddle
83772bd2cf Minor --file-name code hygeine 2020-03-25 18:58:05 -06:00
Kyle Criddle
131d113ff5 Merge branch 'fix_654_stdin_filename' of github.com:neuronull/bat into fix_654_stdin_filename 2020-03-24 19:14:07 -06:00
Kyle Criddle
38178fedf4 Merge branch 'master' into fix_654_stdin_filename 2020-03-24 19:08:43 -06:00
Kyle Criddle
59f2e2d58d Implemented --file-name for multiple files + tests 2020-03-24 18:26:00 -06:00
Kyle Criddle
fb3c775c8b --file-name for normal files. integration tests. 2020-03-22 11:10:27 +01:00
Kyle Criddle
8adce9fae8 Implement --file-name<name> option
- can specify filename to be displayed when printing.
- useful for when piping data from STDIN

Closes #654
2020-03-22 11:10:27 +01:00
sharkdp
eb2f3ddb7c Rename test methods 2020-03-22 11:02:51 +01:00
sharkdp
dfd3ef022e Add more default mappings, reverse traversal 2020-03-22 11:02:51 +01:00
sharkdp
978def2d40 Update documentation 2020-03-22 11:02:51 +01:00
sharkdp
57aed07814 Use absolute path for lookup in database 2020-03-22 11:02:51 +01:00
sharkdp
bd8a13dbc9 Initial implementation of glob-based syntax mapping 2020-03-22 11:02:51 +01:00
sharkdp
32346612b7 Move syntaxes, fixes #874 2020-03-21 23:53:53 +01:00
sharkdp
dfe5eb3e98 Add an even simple example 2020-03-21 22:21:23 +01:00
sharkdp
2c2861db6a Further simplify module structure 2020-03-21 22:21:23 +01:00
sharkdp
bb0a3d586e Simplify public API module structure 2020-03-21 22:21:23 +01:00
sharkdp
90397a8aac Hide SyntaxMapping::replace 2020-03-21 22:21:23 +01:00
sharkdp
84ba323b1c Rename output component to 'style compinent', move wrap to separate module 2020-03-21 22:21:23 +01:00
sharkdp
a8851e1307 Hide methods from line_range 2020-03-21 22:21:23 +01:00
sharkdp
d4a39f99d2 Hide API of InputFileReader 2020-03-21 22:21:23 +01:00
sharkdp
8c500a7e40 Hide get_syntax, move tests to module 2020-03-21 22:21:23 +01:00
sharkdp
acf51bd7b3 Rename methods and parameters 2020-03-21 22:21:23 +01:00
sharkdp
83dc13a86d Add fallback theme, remove BAT_THEME_DEFAULT 2020-03-21 22:21:23 +01:00
sharkdp
094c526a0e Hide some methods from HighlightingAssets 2020-03-21 22:21:23 +01:00
sharkdp
62f2d0c100 Do not export syntax_set and theme_set 2020-03-21 22:21:23 +01:00
sharkdp
fc1ca0875a Move error handling to a callback 2020-03-21 22:21:23 +01:00
sharkdp
a7338e2ea2 Run cargo fmt 2020-03-21 22:21:23 +01:00
sharkdp
9b8ddb24d1 move Config struct to separate file 2020-03-21 22:21:23 +01:00
sharkdp
7e0115641d Move error module to separate file 2020-03-21 22:21:23 +01:00
sharkdp
fedd32173e Restructure and fix bug in line range module 2020-03-21 19:19:15 +01:00
sharkdp
4855a47105 Rename enum field 2020-03-21 19:19:15 +01:00
sharkdp
06b7be7ee9 Major restructuring of theme/syntax handling 2020-03-21 19:19:15 +01:00
Kyle Criddle
cfa2cb6ec7 --file-name for normal files. integration tests. 2020-03-19 20:46:19 -06:00
Kyle Criddle
b1b8addf7e remove unnecessary Some() 2020-03-18 17:03:03 +01:00
Kyle Criddle
4be5adc6f5 remove absolute path restraint from BAT_CACHE_PATH 2020-03-18 17:03:03 +01:00
Kyle Criddle
a9a31dca7f Specify cache dir with BAT_CACHE_DIR
- if set, BAT_CACHE_DIR is used. otherwise use OS default.
2020-03-18 17:03:03 +01:00
Kyle Criddle
517be5c7bc Implement --file-name<name> option
- can specify filename to be displayed when printing.
- useful for when piping data from STDIN

Closes #654
2020-03-17 20:29:01 -06:00
Pavel Aslanov
4021cf8128 Support combination of multiple styles at the same time
Old version of the code did not allowed for `bold italic` or `bold underline` styles
2020-03-04 23:28:53 +01:00
sharkdp
ca066bf7cd Run 'cargo fmt' 2020-02-28 10:27:06 +01:00
Kogia-sima
25640a8a81 Fix bug where max_width is not initialized after line break 2020-02-28 09:06:51 +01:00
Kogia-sima
944866affd Fix wrapping method to support unicode text
Related issues:
- #787
- #811
2020-02-28 09:06:51 +01:00
Ethan P
1225e65299 Fix #798 2020-02-28 07:56:24 +01:00
sharkdp
7779d9f622 Allow for non-unicode filenames, closes #225 2020-02-13 08:25:04 +01:00
Liam Kalir
5ef1c6cce2 Grammar touch-ups, more descriptive error message for invalid line
ranges
2020-01-27 06:54:00 +01:00
Liam Kalir
93881d9a64 Adds range syntax for line highlights 2020-01-27 06:54:00 +01:00
sharkdp
8d0b8a227b Add test for less 529 2019-12-23 13:01:14 +01:00
sharkdp
e400ebd1bd Also pass '--no-init' if version could not be retrieved 2019-12-23 12:45:23 +01:00
sharkdp
67fe804256 Do not pass '--no-init' on newer less versions
With this change, we do not pass the `--no-init` option in newer
versions of less (530 or higher).

This fixes #749
2019-12-23 12:45:23 +01:00
sharkdp
20ba984c6d Update help text, closes #713 2019-12-22 16:05:00 +01:00
fusillicode
6311ca22f9 Add check for terminal-width in output_wrap config value in not interactive case
Co-authored-by: allevo <tomallevi@gmail.com>
Co-authored-by: gildo <gildo.fiorito@gmail.com>
2019-12-22 15:20:34 +01:00
sharkdp
40e5befdc7 Minor change 2019-12-15 20:55:48 +01:00
Franco Victorio
f94ff93953 Accept "default" as a theme 2019-12-15 20:55:48 +01:00
Mohamad Barbar
3523f60299 Leave blank lines blank terminal output.
Would add some ANSI colour codes previously.
2019-12-15 20:32:02 +01:00
sharkdp
850677f121 Remove 'advanced' example 2019-10-30 19:47:51 +01:00
sharkdp
c132e19e74 Make a few modules private 2019-10-30 19:47:51 +01:00