Commit Graph

536 Commits (master)

Author SHA1 Message Date
Martin Nordholts 9ed9a6fc3d
Simplify HighlightingAssets::get_syntax() first_line logic (#1852)
And make self.get_first_line_syntax() be called lazily.
3 years ago
David Peter 27f046ec03 Consolidate environment variable lists
We want to make sure that all of our test environments are clean from
possible outside modification. This consolidates the list of used
environment variables in Rust-based and Python-based integration tests.

Note that there is also a similar list in `src/bin/bat/main.rs` which
is even more exhaustive (for bug report collection). However, some
of these variables can not possibly have an effect on test environments.
3 years ago
Martin Nordholts d935ea1cda
Add regression testing for the custom assets functionality (#1829)
The test is following the same steps regular users are instructed to follow:
https://github.com/sharkdp/bat/blob/master/README.md#adding-new-syntaxes--language-definitions
3 years ago
Ville Skyttä 7c41bd72da assets: add Debian ucf backups to ignored suffixes
Refs https://manpages.debian.org/bullseye/ucf/ucf.1.en.html
3 years ago
a1346054 51edacb5eb style: trim excess whitespace 3 years ago
a1346054 5197ef9048 fix: spelling 3 years ago
a1346054 19678527e5 chore(find-slow-to-highlight-files.py): be explicit about using python3
In many distros, `python` no longer leads to anything, and instead
`python2` or `python3` need to be explicitly run.
3 years ago
Martin Nordholts f5c1cb2dff Run 'cargo fmt' 3 years ago
Keith Hall 133b06e945 Fix syslog syntax highlighting when no colon after "process" 3 years ago
Mario Finelli 699f1e65cc Add slim syntax test 3 years ago
Bill Risher 6c62ed5608 revamped integration test, made CHANGELOG changes 3 years ago
Bill Risher bf78288e9e feat(config): added recognition of $BAT_CONFIG_DIR 3 years ago
Ville Skyttä 2d92a4dbb3 Allow colon in syslog loghost
Makes it work with IPv6 addresses.
3 years ago
Ville Skyttä f508ddf66d Allow period in syslog loghost
Makes it work with FQDN's and IPv4 addresses.
3 years ago
Ville Skyttä 02218c916c Allow period in syslog process name 3 years ago
Martin Nordholts 89217e0d58 Make --no-paging and --no-pager work again 3 years ago
Martin Nordholts bd797c75a4 integration_tests: Add diagnostic_sanity_check() 3 years ago
Layle | Luca 51c7eb7ac1
Included LLVM syntax highlighting submodule and added regression tests 3 years ago
Keith Hall 6d5ff671e7 Add HTTP Request/Response syntax as a git submodule 3 years ago
Martin Nordholts b040efff79 Support a hidden arg --no-custom-assets that skips loading assets from the cache 3 years ago
Martin Nordholts a81009607a HighlightingAssets: Make .syntaxes() and syntax_for_file_name() failable
Or rather, introduce new versions of these methods and deprecate the old ones.

This is preparation to enable robust and user-friendly support for lazy-loading.
With lazy-loading, we don't know if the SyntaxSet is valid until after we try to
use it, so wherever we try to use it, we need to return a Result. See discussion
about panics in #1747.
3 years ago
Sarvesh MD f464b1ba39 Update battest.py
Add decorator test `@classmethod` and fixed spellings.
3 years ago
Ville Skyttä 7537e309d8 Add groff syntax
The syntax is named "Man Page" upstream, but our man page syntax is
different, it's for rendered man pages. Rename to Groff and remove
`.man` from extensions.
3 years ago
David Peter 64763eafbe Update Julia syntax test 3 years ago
Ville Skyttä ddb39ef2f6 Add syntax tests for ignored filename suffixes 3 years ago
Mohamed Abdelnour 12ecb325c9 Modify Linguist overrides 3 years ago
Mohamed Abdelnour c18afcb01a Add Verilog syntax test file 3 years ago
Mohamed Abdelnour 63043d4a60 Add varlink syntax test file 3 years ago
Mohamed Abdelnour 76034880ae Add TypeScriptReact syntax test file 3 years ago
Mohamed Abdelnour 768189859a Add Stylus syntax test file 3 years ago
Mohamed Abdelnour 6e5a2a5c51 Add Strace syntax test file 3 years ago
Mohamed Abdelnour 9935c4984c Add Robot Framework syntax test file 3 years ago
Mohamed Abdelnour a0a5e30c39 Add Rego syntax test file 3 years ago
Mohamed Abdelnour 4126bbeead Add Puppet syntax test file 3 years ago
Mohamed Abdelnour a5b79295d7 Add NAnt Build File syntax test file 3 years ago
Mohamed Abdelnour e917784932 Add Literate Haskell syntax test file 3 years ago
Mohamed Abdelnour f46b90d28d Add jsonnet syntax test file 3 years ago
Mohamed Abdelnour 64cbfbed47 Add Java Server Page (JSP) syntax test file 3 years ago
Mohamed Abdelnour 1ced35ec76 Add 'NOTICE' to list of file names to skip 3 years ago
Mohamed Abdelnour 16d346773b Add Fortran Namelist syntax test file 3 years ago
Mohamed Abdelnour b02120cf66 Add Fortran (Fixed Form) syntax test file 3 years ago
Mohamed Abdelnour 702b5caf2d Add Fortran (Modern) syntax test file 3 years ago
Mohamed Abdelnour d395f64f58 Add F# syntax test file 3 years ago
Mohamed Abdelnour c9627040cc Add CoffeeScript syntax test file 3 years ago
Mohamed Abdelnour b1f69434f9 Add Cabal syntax test file 3 years ago
Mohamed Abdelnour 8435cad602 Merge master 3 years ago
Mohamed Abdelnour 8b6341458b Add XAML test file 3 years ago
Mohamed Abdelnour 8b787b4f70 Add dash test file 3 years ago
David Peter bfa9c3bef6
Merge branch 'master' into feature/dark_plus_theme 3 years ago
David Peter 2904f24ea8
Merge pull request #1606 from sharkdp/syslog
Improve Syslog and general log file highlighting
3 years ago
Ersikan e219c8fc03 Update SublimeEthereum version
A fix I submitted upstream was merged, and this commit bumps the submodule
to include it.
3 years ago
Ersikan 9eb26b702c Add syntax test for Vyper language 3 years ago
Ersikan c933be926d Add syntax tests for Solidity language. 3 years ago
David Peter 5db3c93057
Merge branch 'master' into syslog 3 years ago
David Peter aa442b5795
Merge branch 'master' into feature/dark_plus_theme 3 years ago
Keith Hall 848ceb6f10 Remove variable.other from CSV highlighting 3 years ago
Keith Hall 3559079de0 Improvements to CSV highlighting 3 years ago
Keith Hall 7c4edacb2b Add independent log syntax 3 years ago
Keith Hall 782ede5db5 improve syslog syntax 3 years ago
Keith Hall 1537733e6b replace Syslog dependency with a custom syntax 3 years ago
Keith Hall ba0d43672b add example syslog file for highlighting tests 3 years ago
PatriotRossii 0cd52e5be1
Add "Visual Studio Dark+" theme to vec of themes 3 years ago
Sean McLoughlin d89fa3ebc2 Add SystemVerilog support 3 years ago
Niklas Mohrin b8a18d3ebb Use tempfiles for clircle tests 3 years ago
Martin Nordholts 3af3549232 integration_tests: Use tempdir() in config_location_when_generating
For cleaner code.

Use the tempdir() function since that is recommended by the crate docs:
https://docs.rs/tempfile/3.2.0/tempfile/index.html
3 years ago
Martin Nordholts 643f0bcbe3 integration_tests.rs: Add test config_location_when_generating
As a complement to #1556 to prevent #1550 from coming back.

The test purposefully fails if ca60937c2e is reverted.
3 years ago
David Peter ca60937c2e Do not ignore non-existent BAT_CONFIG_PATH
Do not ignore `BAT_CONFIG_PATH` if it doesn't exist. Both when
generating a new config file with `--generate-config-file` and
when attempting to read the config.

Also, provide a better error message in case the file can not
be created.

closes #1550
3 years ago
Keith Hall 7768433d09 Improve Monokai Extended JSON key color with a patch 3 years ago
David Peter 94496df3b0 Fix broken resolv.conf highlighting
closes #1510

The change in `create_highlighted_versions.py` fixes a "unknown theme
"'1337'" warning. The single quotes were wrong. `bat` was always falling
back to the default theme, so let's use that for now.
3 years ago
Caden Haustein 573f34d757
Update dependencies; replace unmaintained (#1522)
* Update dependencies; replace unmaintained

* Fix errors

* Revert dependency changes

* Revert git2 to 0.13.15

Co-authored-by: David Peter <mail@david-peter.de>
3 years ago
Martin Nordholts dd0d44bbb3 Fix #1413 Can't use `bat` at all! (Error: Use of bat as a pager is disallowed...)
Fixed by implementing the proposal by sharkdp:

* Allow PAGER=bat, but ignore the setting in bat and simply default to
  less. Unless of course, BAT_PAGER or --pager is used to overwrite the
  value of PAGER.

* Disallow the usage of bat within BAT_PAGER and --pager.
3 years ago
Martin Nordholts eda72c31b2 tests: Move 'mocked pagers' utils to separate file 3 years ago
Martin Nordholts c2c2b0211a fn mocked_pager: Simplify with format! 3 years ago
Martin Nordholts dd6f57e107 pager.rs: Some comment fixups 3 years ago
Martin Nordholts 02e6ff4183 Merge remote-tracking branch 'origin/master' into fix-1063 3 years ago
sharkdp 4c523af1ab Add gnuplot syntax
closes #1431
3 years ago
sharkdp 6d27df3b77 Use unstable sort for theme test 3 years ago
sharkdp 73d14f4655 Use BatTester::default instead of BatTester::new 3 years ago
Martin Nordholts da10166625 Merge remote-tracking branch 'origin/master' into fix-1063 3 years ago
sharkdp 35e3c51b75 Fix unused import warning 3 years ago
sharkdp 59c9105c25 Fix clippy warnings in tests on Windows 3 years ago
Martin Nordholts 46487b201f Merge remote-tracking branch 'origin/master' into fix-1063 3 years ago
Martin Nordholts 9ccb667653 Add integration test for unparsable pager
Right now all tests pass even if we e.g. return

    Ok(OutputType::stdout())

instead of doing

    .chain_err(|| "Could not parse pager command.")?

so add a test to make sure this functionality don't break.
3 years ago
Niklas Mohrin b600f62ab6 Add unix specific integration test about running bat without any arguments 3 years ago
Niklas Mohrin ace655e164 Add integration tests for clircle cycle detection 3 years ago
Martin Nordholts 478233f795 Merge remote-tracking branch 'origin/master' into fix-1063 3 years ago
Martin Nordholts e87c554ccd tests: Make mocked pagers work on Windows 3 years ago
Martin Nordholts df33ed05dd Run PATH-dependent tests serially
Since PATH is a shared resource.
3 years ago
Martin Nordholts c9efdd68ed Add integration tests for 'more' and 'most' used as pagers 3 years ago
Ethan P 1b549ecc66
Merge branch 'master' into improved-benchmark 3 years ago
sharkdp b5bdba8b16 Svelte syntax test: rename license file 3 years ago
sharkdp 522c97f5ad DotEnv syntax test: add missing newline 3 years ago
sharkdp b3f34529b5 Update Zig syntax test output 3 years ago
Paul Smith c76e27851c Add support for Zig
Adds syntax support for source code for the Zig programming
language. https://ziglang.org/
3 years ago
Julian Berman af8a8035e8 Add a Lean highlighting test file. 3 years ago
Martin Nordholts 22bdc7c20f When PAGER=most, don't print a warning to stderr, silently use less instead 4 years ago
Ethan P 3ed0081f1f
Improve benchmark script to support cargo/config target-dir 4 years ago
Martin Nordholts dcfe883f4b Simplify and polish pager.rs and related code 4 years ago
Martin Nordholts cc0f8ca813 Merge remote-tracking branch 'origin/master' into fix-1063 4 years ago
Ensar Sarajčić 29ea396c31 Improve VimL regex highlighting
**NOTES:**
- PR is not yet merged in upstream repository (https://github.com/SalGnt/Sublime-VimL/pull/12),
but sublime-syntax file is already updated with changes.
- Updated syntax test files are added as well

This fixes #1064
4 years ago
Ensar Sarajčić 171d215f91 Add case from #1604 to VimL syntax-test source 4 years ago
Ensar Sarajčić cc6109a751 Add syntax highlighting tests for VimL
Adds a syntax highlighting test for VimL
with source file based on parts of my own configuration
changed to cover as much of syntax as possible.

**NOTES:**
Last line of source (`syntax enable`) does not get highlighted,
since `syntax` keyword is not part of highlighting rules.

Related to #1213
4 years ago
John Meow 3d07dec8fd Use Briles/gruvbox .tmTheme files instead of peaceant's port 4 years ago
Martin Nordholts a63bb08eda Add test 'grid_for_file_without_newline' (for issue #299 fix)
This is a regression test for the fix for issue #299. If that fix is
reverted, currently only one test ('header_padding') fails. But that
test is for a different use case, so add a dedicated regression test for
the particular use case issue #299 is about.
4 years ago
sharkdp e0207f8167 Fix test 4 years ago
David Peter cc7b89faf8
Merge pull request #1440 from Enselic/fix-1438-newline-can-be-added-even-if-style-plain
Don't add artificial newline to last line if --style=plain
4 years ago
VeryTastyTomato 973ea984c8 fix: warnings of ShellCheck
SC2155: Declare and assign separately to avoid masking return values.
SC2164: Use cd ... || exit in case cd fails.
SC2230: which is non-standard. Use builtin 'command -v' instead.
4 years ago
sharkdp 3e9afe2974 Add integration test for nonexisting newline 4 years ago
David Peter 73c16574e6
Merge branch 'master' into fix-1438-newline-can-be-added-even-if-style-plain 4 years ago
Martin Nordholts 60e00d49a9
Fix #1443 macOS: regression_test.sh: mktemp: illegal option (#1444)
The macOS version of mktemp does not recognize the --suffix option.
Using pure -d should work since, it seems [1], macOS 10.11 however.

So to make the script work on macOS, stop using the --suffix option.

The downside is of course that the temporary dir will have an anonymous
name, but I see no risk of confusion given how short-lived the usage of
the dir is, and given the context it is used.

[1] https://unix.stackexchange.com/questions/30091/fix-or-alternative-for-mktemp-in-os-x
4 years ago
Martin Nordholts 68d525cd8b Don't add artificial newline to last line if --style=plain
This fixes #1438.

Note however, that using a pager such as less will add a newline itself.
So to actually not print a newline for such files, you need to either
disable paging:

  bat --style=plain --paging=never no-newline-at-end-of-file.txt

or use a "pager" that does not add a newline:

  bat --style=plain --pager=cat no-newline-at-end-of-file.txt

Note that we also update syntax tests file since a bunch of them had
missing newlines on the last lines.
4 years ago
Martin Nordholts 986d0e9777 Ignore PAGER=most by default with a warning to stderr
closes #1063
4 years ago
sharkdp bd2e9917da Revert "Add cycle detection integration tests"
This reverts commit ec60d84265.
4 years ago
henil 591eba66a3 add new syntax test files 4 years ago
Niklas Mohrin 4f0116bee7 Add cycle detection integration tests 4 years ago
Byron Alley 3dc5fc54df Import syntax regression test for Ruby Haml 4 years ago
Byron Alley bac84b4c8b Add sshd_config syntax highlighting test 4 years ago
Ethan P 61f947a580
Merge pull request #1276 from tommilligan/style-rule
style: add component 'rule' for horizontal file delimiter
4 years ago
David Peter 3a612f063e
Merge branch 'master' into master 4 years ago
Ján Priner 9daea73bba Add Ninja highlight test 4 years ago
Adrian Rivera 9837948c3a Throws an error when `bat` is being user as pager.
As mentioned on #1334 `bat` should not be used as a value for `pager`,
this change checks both the balue of `bat` provided as a parameter or
as an environment variable.
4 years ago
Kyle Hubert 072fb380d8
Add Svelte as a syntax 4 years ago
Horki cc6cf48256 1213: org mode highlight testing 4 years ago
Horki e571cb553b 1213: nix; added trailing new line 4 years ago
Horki bf9f6e872d 1312: nix; fixed src 4 years ago
Horki 8348c1b746 1213: nix; fix buildInputs arr 4 years ago
Horki 0a9744ac95 add nix highligh 4 years ago
sharkdp 9dd807344c Ignore 'all_themes_are_present' unit test by default 4 years ago
Armand Philippot 2ecebf8ff2 Add Coldark themes to unit test 4 years ago
Dobe Peter ec8072d51f Add PowerShell syntax test
Part of the work for issue #1213.

A short PowerShell script and the corresponding syntax-highlighted output
has been added. The script exhibits many of the peculiarities of the
PowerShell syntax.
4 years ago
Stefano Probst 7a7bb80e23 Add Git Config syntax test file
cc sharkdp/bat#1213
4 years ago
Alan Berndt 99ac5c3045 Add fairly complex nginx config.
This is to contribute to issue #1213.  I took some of the more
complicated servers I am running as examples.  Everything looks to be
correctly highlighted compared to vim's syntax highlighting.
4 years ago
R1tschY efab00a9de Add Git Attributes syntax test 4 years ago
Keith Hall cfdb853ea6 End highlighting of C code in man pages when no longer relevant 4 years ago
Keith Hall 41e857ea16 Highlight C code in all man pages sections 4 years ago
Frank Schmitt 5b2da2b08d #1213 expanded D test file 4 years ago
Frank Schmitt 5e0a608ea6 #1213 added very basic test file for D 4 years ago
R1tschY 3729aefb6f Add QML syntax test 4 years ago
henil 8a2122b4a4 Add test file for `/etc/group` 4 years ago
Tommaso Pifferi cc6f6fdb1d Add tests for Vue component syntax 4 years ago
Stefano Probst 5ec4936a4f Add Graphviz DOT example files
cc sharkdp/bat#1213
4 years ago
Stefano Probst be84682bcb Add MATLAB syntax test file
cc sharkdp/bat#1213
4 years ago
ubaumann b07f3b4e74 Add Salt State (SLS) test file 4 years ago
Zachary J. Rollyson a3f037773a feat: include dotfiles (.) in create_highlighted_versions.py search 4 years ago
Zachary J. Rollyson c71c8980cf feat: add syntax sample for dotEnv files 4 years ago
Keith Hall 575888d81b Fix Manpage C highlighting regression 4 years ago
sharkdp 3539d3e72d Add Manpage syntax regression test for select(2) 4 years ago
Keith Hall bb25111ca9 Improve Manpage syntax 4 years ago
Zachary J. Rollyson 3c756a65a6 feat: add syntax tests for sass 4 years ago
Matthieu Vion 8d574826c9 Added reStructuredText reference for syntax tests 4 years ago
Matthieu Vion 7c7eebbe83 Changed Makefile syntax test source
Now using Makefile from the Redis project
4 years ago
Matthieu Vion 57ad85814b Added Makefile to syntax tests
Make progress in #1213
4 years ago
Benjamin Sinkula 4b2b419400 Add Common Lisp syntax highlighting test files 4 years ago
Celeo b83716f0eb feat: add Nim syntax test file 4 years ago
sharkdp 4d6b2fec13 Add PureScript syntax test 4 years ago
Benjamin Sinkula 5650624822 Add ActionScript 3 syntax test 4 years ago
Saul Blanco Tejero bf07b0be58 Add Perl test file 4 years ago
Sebastian Andersson eeea53759b Add apache httpd.conf example 4 years ago
okezieuc a39f1e0f9b added new syntax highlighting files
I added a sample etc/hosts file and a sample requirements.txt file. I didn't know there was already a sample YAML file because it wasn't ticked in the issue so I added some extra syntax that I had in my own to the previous  example.yaml file.
4 years ago
Tom Milligan 1614f80366
add integration test for grid overriding rule 4 years ago
Tom Milligan c1af6ff2e6
Add integration test for style rule 4 years ago
Tom Milligan aa4000cb0d
style: add component 'rule' for horizontal file delimiter 4 years ago
sharkdp 33128d75f2 Use list.extend(…) 4 years ago
sharkdp bf87f37039 Better ask forgiveness than permission 4 years ago
sharkdp 62e715ff5b Formatting 4 years ago
Logan Saso de47bd2323 Added newline to multicharacter line of plaintext generation script 4 years ago
Logan Saso 19b55706ee Fixed file location in creation script 4 years ago
Logan Saso 6c68198d19 Updated creation script and README to match generation script 4 years ago
Logan Saso f3c760c25f #1244 Use [].copy and path.exists instead of more cumbersome solutions
#1244 Slightly optimized create_highlighted_versions.py so that it won't walk the source path when it should be skipping the file

#1244 Updated README.md in plaintext source folder

#1244 Added extra option loading from `bat_options` file in directory and significantly reduced size of plaintext source

#1244 Updated create_highlighted_versions.py to ignore README.md files and use the --show-all option for manually-defined binary files

#1244 Updated plaintext file with command

bat -A --no-config --style=plain --color=always --theme='1337' --italic-text=always src/Plaintext/plaintext.txt > highlighted/Plaintext/plaintext.txt

#1244 Added example plaintext file
4 years ago
Ethan P 24fe946c06
Merge pull request #1308 from okezieuc/add-php-file
added php test file
4 years ago
Ethan P a838ff47b5
Merge pull request #1307 from molcay/master
Add syntax tests for CpuInfo and MemInfo filetype
4 years ago
okezieuc 8bd078caeb updated the php commit
I reverted the commit and prevented the vue submodules from being affected
4 years ago
okezieuc b7271a2a6d Revert "added php test file"
This reverts commit ecde418abb.
4 years ago
okezieuc ecde418abb added php test file
I added a sample test.php file that covers a lot of python syntax
4 years ago
M. Olcay TERCANLI 51036ced9d Add MemInfo syntax test 4 years ago
M. Olcay TERCANLI b6c1ec3a24 Add CpuInfo syntax test 4 years ago
Felipe Garcia 46004001cb Add Clojure syntax test. 4 years ago
Zachary J. Rollyson f10c8ce25e Add GraphQl syntax test sample 4 years ago
grg121 457ab84065
Add basic Dockerfile syntax highlighting test files 4 years ago
Zachary J. Rollyson 3bcb5452aa Add HTML syntax test sample 4 years ago
venky 1f0e53a44d Added BibTeX syntax tests 4 years ago
Benjamin Neff 2d5cf1d3cf Remove gitattributes for .bat/.cmd files to make all testfiles eol=lf 4 years ago
sharkdp a81254ed2a Fix line endings 4 years ago
Akshat Gadhwal fdef133d3d Update test.swift 4 years ago
Akshat Gadhwal fd01f0a0ee ADDED swift test file for syntax highlighting 4 years ago
sharkdp 5b095ed6f3 Fix line endings 4 years ago
Akshat Gadhwal e7a3f34959 ADDED test file for R 4 years ago
Daniel Wolbach 06d0c8f056 add CMake syntax highlighting test 4 years ago
Jacky Hui 4064b8ff14 Added test file for Erlang. 4 years ago
Benjamin Neff b6e729abeb Add Diff syntax highlight test 4 years ago
Filip Czaplicki 5fe98689d4 test: x86-64 Assembly NASM syntax test 4 years ago
Daniel Wolbach 8832a96e82 add GLSL syntax highlighting test 4 years ago
R1tschY 09631ed119 Add Batch syntax test 4 years ago
Spencer Williams 9257c7ce20 Regenerate using a fresh latest build of bat 4 years ago
Spencer Williams b30f9a1677 Add sample Crystal file 4 years ago
Felipe Garcia e6c3f96931 Add Groovy syntax test. 4 years ago
Felipe Garcia 85ff81f238 Add Lua syntax test. 4 years ago
Thiago Arrais aa205c6a9f Add CSV syntax hightlighting test 4 years ago
scott.eppler 44bfad24a1 Add Terraform example file for Syntax Highlighting 4 years ago
Gede Wahyu 13e01841ca pascal: add syntax highlight file 4 years ago