-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Please support .debdiff files #2940
Comments
If nobody is picking this up, I might have a go. Any hints on how it should be approached? |
Hi, I believe the way to go is to add a syntax mapping for it, which is done with TOML files - see https://github.com/sharkdp/bat/tree/master/src/syntax_mapping/builtins |
@bdrung Presumably you'd want |
@jacg I cannot remember seeing |
Are there any guidelines on what to use as a test case file? Curiously enough, if I copy However, if I use the the diff from the random NMU bug mentioned above, then In other words, for some diff files, |
Adding a file # .debdiff is the extension used for diffs in Debian packaging
[mappings]
"Diff" = ["*.debdiff"] seems to do the job. However:
This makes me wonder whether it could/should be done using the same mechanism that was used to recognize the |
It can be done, yes, you'd need to patch the
Presumably the |
Is either approach to be preferred over the other? (The toml file approach certainly looks simpler.) As for testing, I started off by trying to generate a test failure, as a sanity check, by modifying the contents of |
I would think it's generally easier to maintain the TOML mappings than a series of patches. The TOML mappings were something added fairly recently, for reference. Previously mappings were maintained in Rust code, which wasn't so fun to modify. If we want simple file extension globs to show up differently in I just tried changing
|
Thanks, I can see the tests picking up changes to the
|
As with any reasonably complex software, the language tooling's simple test suite often doesn't cover everything. Generally, one can look at the CI steps performed for an exhaustive list of what commands are executed for verification that everything is working as expected. The regression test for example is defined at bat/.github/workflows/CICD.yml Line 112 in 424c02d
I would personally say "yes" - it shouldn't have been possible to merge changes which would fail these tests. Indeed, the latest CI run on
As per the previous answer, "yes". What environment (OS etc.) are you running |
FWIW, that's why I try to stick a justfile at the root of my projects, with an obvious and easily-discoverable recipe that runs all the tests. Admittedly, this can diverge from what is executed in CI workflows, so it's not foolproof.
Linux (NixOS). Not sure what other environment details would be useful to mention. Tried it in a bare bones They seem to be mostly caused by the odd token having an unexpected colour. Anyway, for the time being I can work with this small number of tests failing locally, and rely on CI (which is working fine in my draft PR (#2947) to catch anything I miss. |
Ah, sorry, I see that the link to the draft PR in the previous comment was pointing at the issue that inspired it, rather than the PR itself. Here is the correct link: #2947 (now also fixed in the comment). |
* Add syntax mapping for `/etc/pacman.conf` * Write changelog * Bump git2 from 0.18.2 to 0.18.3 (sharkdp#2977) Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.18.2 to 0.18.3. - [Changelog](https://github.com/rust-lang/git2-rs/blob/master/CHANGELOG.md) - [Commits](rust-lang/git2-rs@git2-0.18.2...git2-0.18.3) --- updated-dependencies: - dependency-name: git2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump flate2 from 1.0.28 to 1.0.30 (sharkdp#2980) Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.28 to 1.0.30. - [Release notes](https://github.com/rust-lang/flate2-rs/releases) - [Commits](rust-lang/flate2-rs@1.0.28...1.0.30) --- updated-dependencies: - dependency-name: flate2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump itertools from 0.12.1 to 0.13.0 (sharkdp#2978) Bumps [itertools](https://github.com/rust-itertools/itertools) from 0.12.1 to 0.13.0. - [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md) - [Commits](rust-itertools/itertools@v0.12.1...v0.13.0) --- updated-dependencies: - dependency-name: itertools dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump thiserror from 1.0.53 to 1.0.61 (sharkdp#2979) Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.53 to 1.0.61. - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](dtolnay/thiserror@1.0.53...1.0.61) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump semver from 1.0.21 to 1.0.23 (sharkdp#2981) Bumps [semver](https://github.com/dtolnay/semver) from 1.0.21 to 1.0.23. - [Release notes](https://github.com/dtolnay/semver/releases) - [Commits](dtolnay/semver@1.0.21...1.0.23) --- updated-dependencies: - dependency-name: semver dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Make EscapeSequenceOffsetsIterator pub, add fns to get indices * Update expand_tabs to use bat's ANSI iterator * Update CHANGELOG.md * ci: support aarch64 statically-linked binary (sharkdp#2992) * Add `--strip-ansi` option * Add `--strip-ansi=auto` option When using `auto`, escape sequences will be stripped unless printing plain text. * Add ANSI stripping to bat-as-a-library * Update CHANGELOG.md * Update README.md to mention `--strip-ansi` * Add flox install * Fix cmder link * Bump walkdir from 2.4.0 to 2.5.0 (sharkdp#3018) Bumps [walkdir](https://github.com/BurntSushi/walkdir) from 2.4.0 to 2.5.0. - [Commits](BurntSushi/walkdir@2.4.0...2.5.0) --- updated-dependencies: - dependency-name: walkdir dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump encoding_rs from 0.8.33 to 0.8.34 (sharkdp#3020) Bumps [encoding_rs](https://github.com/hsivonen/encoding_rs) from 0.8.33 to 0.8.34. - [Commits](hsivonen/encoding_rs@v0.8.33...v0.8.34) --- updated-dependencies: - dependency-name: encoding_rs dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump unicode-width from 0.1.11 to 0.1.13 (sharkdp#3019) Bumps [unicode-width](https://github.com/unicode-rs/unicode-width) from 0.1.11 to 0.1.13. - [Commits](unicode-rs/unicode-width@v0.1.11...v0.1.13) --- updated-dependencies: - dependency-name: unicode-width dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump anyhow from 1.0.78 to 1.0.86 (sharkdp#3021) Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.78 to 1.0.86. - [Release notes](https://github.com/dtolnay/anyhow/releases) - [Commits](dtolnay/anyhow@1.0.78...1.0.86) --- updated-dependencies: - dependency-name: anyhow dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add CFML syntax * update CHANGELOG * Update the Protobuf sobmodule (fixes sharkdp#2542) * Bump time to 0.3.36 (fixes sharkdp#3043) * Write changelog * Add syntax mapping for kubernetes config files * Write changelog * Associate JSON-LD `.jsonld` files with `json` syntax (fixes sharkdp#3036) Use PR instead of Issue # number in CHANGELOG. Clean up (unify) CHANGELOG. * Add options present in --help to the man page * Add options present in --help to Bash completion * Add --cache-dir to Fish completion * Add --no-* options to Bash/Zsh completions * Add options generated by completions to the man page * Update CHANGELOG * Support merging `--style` arguments The `overrides_with` clap builder option was removed because it interfered with the matcher's ability to retain all occurrences of `--style`. The behavior it covered is expressed within the new `forced_style_components` function. * Update clap/docs for merging `--style` arguments * Join env var options with "=" instead of " " Joining them with a space was causing certain styles (e.g. `-grid`) to be misinterpreted as a separate option. * Add integration tests for merging styles A huge thanks to @einfachIrgendwer0815 for helping me make sure these tests work under the MSRV CI job. * First StyleComponentList should remove from 'auto' style. This happens when there are no `--style` arguments other than the one passed in as a command line argument. Prior to this change, removing a style component (e.g. `--style=-numbers`) would remove the component from an empty style component set, resulting in no styles at all. That behaviour was less intuitive than the new behaviour, which starts out with the default components and removes the line numbers. * Update changelog * Bump expect-test from 1.4.1 to 1.5.0 (sharkdp#3055) Bumps [expect-test](https://github.com/rust-analyzer/expect-test) from 1.4.1 to 1.5.0. - [Changelog](https://github.com/rust-analyzer/expect-test/blob/master/CHANGELOG.md) - [Commits](rust-analyzer/expect-test@v1.4.1...v1.5.0) --- updated-dependencies: - dependency-name: expect-test dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump indexmap from 2.2.6 to 2.3.0 (sharkdp#3057) Bumps [indexmap](https://github.com/indexmap-rs/indexmap) from 2.2.6 to 2.3.0. - [Changelog](https://github.com/indexmap-rs/indexmap/blob/master/RELEASES.md) - [Commits](indexmap-rs/indexmap@2.2.6...2.3.0) --- updated-dependencies: - dependency-name: indexmap dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump ansi_colours from 1.2.2 to 1.2.3 (sharkdp#3058) Bumps [ansi_colours](https://github.com/mina86/ansi_colours) from 1.2.2 to 1.2.3. - [Commits](https://github.com/mina86/ansi_colours/commits) --- updated-dependencies: - dependency-name: ansi_colours dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Add option `--binary` `--binary` allows to specify how to deal with binary content. Current options are not printing anything or treating the binary data as text. * Test `--binary=as-text` * Update CHANGELOG * Run syntax highlighting when `--binary=as-text` * Don't output default theme info to piped stdout * Reinforce tests for `--list-themes` * Bump plist from 1.6.0 to 1.7.0 (sharkdp#3076) Bumps [plist](https://github.com/ebarnard/rust-plist) from 1.6.0 to 1.7.0. - [Release notes](https://github.com/ebarnard/rust-plist/releases) - [Commits](ebarnard/rust-plist@v1.6.0...v1.7.0) --- updated-dependencies: - dependency-name: plist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump serde from 1.0.199 to 1.0.209 (sharkdp#3077) Bumps [serde](https://github.com/serde-rs/serde) from 1.0.199 to 1.0.209. - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](serde-rs/serde@v1.0.199...v1.0.209) --- updated-dependencies: - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Associate GeoJSON `.geojson` files with `json` syntax (fixes sharkdp#3083) * Update Chinese version translation of README.md * Map `*.mkd` files to `Markdown` syntax (sharkdp#3061) * Bump globset from 0.4.14 to 0.4.15 (sharkdp#3090) Bumps [globset](https://github.com/BurntSushi/ripgrep) from 0.4.14 to 0.4.15. - [Release notes](https://github.com/BurntSushi/ripgrep/releases) - [Changelog](https://github.com/BurntSushi/ripgrep/blob/master/CHANGELOG.md) - [Commits](BurntSushi/ripgrep@globset-0.4.14...ignore-0.4.15) --- updated-dependencies: - dependency-name: globset dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump once_cell from 1.19.0 to 1.20.1 (sharkdp#3091) Bumps [once_cell](https://github.com/matklad/once_cell) from 1.19.0 to 1.20.1. - [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md) - [Commits](matklad/once_cell@v1.19.0...v1.20.1) --- updated-dependencies: - dependency-name: once_cell dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump git2 from 0.18.3 to 0.19.0 (sharkdp#3092) Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.18.3 to 0.19.0. - [Changelog](https://github.com/rust-lang/git2-rs/blob/master/CHANGELOG.md) - [Commits](rust-lang/git2-rs@git2-0.18.3...git2-0.19.0) --- updated-dependencies: - dependency-name: git2 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump flate2 from 1.0.30 to 1.0.34 (sharkdp#3093) Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.30 to 1.0.34. - [Release notes](https://github.com/rust-lang/flate2-rs/releases) - [Changelog](https://github.com/rust-lang/flate2-rs/blob/main/CHANGELOG.md) - [Commits](rust-lang/flate2-rs@1.0.30...1.0.34) --- updated-dependencies: - dependency-name: flate2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Partially revert "Make -pp override --paging and vice versa when passed as a later argument. (sharkdp#2660)" This partially reverts commit e2bf85e. * Add tests against issue sharkdp#2731 * Add partial override of -pp and --paging * Update changelog * Bump nix from 0.26.4 to 0.29 * Make .debdiff imply .diff using syntax_mapping toml Closes sharkdp#2940 * Add CHANGELOG entry for .debdiff => diff * Move from unix-family to common * Bump clircle from 0.5.0 to 0.6.0 (sharkdp#3117) Bumps [clircle](https://github.com/niklasmohrin/clircle) from 0.5.0 to 0.6.0. - [Release notes](https://github.com/niklasmohrin/clircle/releases) - [Commits](niklasmohrin/clircle@v0.5.0...v0.6.0) --- updated-dependencies: - dependency-name: clircle dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump encoding_rs from 0.8.34 to 0.8.35 (sharkdp#3119) Bumps [encoding_rs](https://github.com/hsivonen/encoding_rs) from 0.8.34 to 0.8.35. - [Commits](hsivonen/encoding_rs@v0.8.34...v0.8.35) --- updated-dependencies: - dependency-name: encoding_rs dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump toml from 0.8.9 to 0.8.19 (sharkdp#3121) Bumps [toml](https://github.com/toml-rs/toml) from 0.8.9 to 0.8.19. - [Commits](toml-rs/toml@toml-v0.8.9...toml-v0.8.19) --- updated-dependencies: - dependency-name: toml dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump grep-cli from 0.1.10 to 0.1.11 (sharkdp#3120) Bumps [grep-cli](https://github.com/BurntSushi/ripgrep) from 0.1.10 to 0.1.11. - [Release notes](https://github.com/BurntSushi/ripgrep/releases) - [Changelog](https://github.com/BurntSushi/ripgrep/blob/master/CHANGELOG.md) - [Commits](BurntSushi/ripgrep@grep-cli-0.1.10...0.1.11) --- updated-dependencies: - dependency-name: grep-cli dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: cyqsimon <28627918+cyqsimon@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ethan P. <eth-p+git@hidden.email> Co-authored-by: Tong Zhaoqi <1661610563@qq.com> Co-authored-by: Bryan Honof <bryanhonof@gmail.com> Co-authored-by: Driss Boumlik <drissboumlik.dev@gmail.com> Co-authored-by: Brenton Bostick <brenton@pieces.app> Co-authored-by: Michael Vorburger <mike@vorburger.ch> Co-authored-by: Keith Hall <keith-hall@users.noreply.github.com> Co-authored-by: Koichi Murase <myoga.murase@gmail.com> Co-authored-by: einfachIrgendwer0815 <85333734+einfachIrgendwer0815@users.noreply.github.com> Co-authored-by: Mikael Vaaltola <mikael.vaaltola@mapbox.com> Co-authored-by: flytam <tanjiahui2015@foxmail.com> Co-authored-by: Keith Hall <kingkeith+git@gmail.com> Co-authored-by: Fabio Valentini <decathorpe@gmail.com> Co-authored-by: Jacek Generowicz <jacg@my-post-office.net>
Debian source diff files are often named
.debdiff
. They are normal diff files. Please support coloring them by just treating them as diff files.The text was updated successfully, but these errors were encountered: