Commit Graph

329 Commits

Author SHA1 Message Date
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