mirror of
				https://github.com/sharkdp/bat.git
				synced 2025-10-31 07:04:04 +00:00 
			
		
		
		
	Compare commits
	
		
			73 Commits
		
	
	
		
			v0.24.0
			...
			dependabot
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 15178bca3f | ||
|  | 05ccdcd27b | ||
|  | f76f905771 | ||
|  | c963e80343 | ||
|  | c76ed99db2 | ||
|  | 06aef22943 | ||
|  | 128b0d6dd3 | ||
|  | 15dc20109f | ||
|  | 5c4bcd6611 | ||
|  | ecf4029dc7 | ||
|  | ea1fbacf76 | ||
|  | 497342fabb | ||
|  | bf56cd90f0 | ||
|  | 0acb979e9e | ||
|  | b89dc15be1 | ||
|  | 28990bc451 | ||
|  | 748e2a681f | ||
|  | bfa0b5241f | ||
|  | 4af4bfc0f1 | ||
|  | 51203ff750 | ||
|  | 96cef9a24e | ||
|  | b43d31b75a | ||
|  | ad3ff26960 | ||
|  | 86b40993c3 | ||
|  | 31bed250ba | ||
|  | 7658334645 | ||
|  | 491ae70aa9 | ||
|  | d64c568196 | ||
|  | b5982a6174 | ||
|  | 04e7d2a313 | ||
|  | bcc2de86b4 | ||
|  | 1296aea836 | ||
|  | 5498c24c33 | ||
|  | 79a03b4299 | ||
|  | f3a5e9a73c | ||
|  | 2710a19ecb | ||
|  | 6d0ef259f6 | ||
|  | b1577cc083 | ||
|  | 28d947fd8b | ||
|  | b000db8f32 | ||
|  | 116a6cc9a8 | ||
|  | c8291a36b7 | ||
|  | 8180c76890 | ||
|  | a0f33b1cdc | ||
|  | 8b60dae81c | ||
|  | 4b33093f9e | ||
|  | 3d87b25b19 | ||
|  | f2f6902279 | ||
|  | c0b17e73e1 | ||
|  | 94544d963b | ||
|  | 72abbd22de | ||
|  | 64e10ffb21 | ||
|  | 35d8146bba | ||
|  | a5a7ede698 | ||
|  | b551049706 | ||
|  | 99cfc13eab | ||
|  | 4b0b5afa13 | ||
|  | d343428441 | ||
|  | 16e409ec87 | ||
|  | 94d059f258 | ||
|  | c8b9de889d | ||
|  | 75340d54f9 | ||
|  | b28383e0fa | ||
|  | 8e866db281 | ||
|  | 0eb157e090 | ||
|  | 85636c28bc | ||
|  | a70e5c6c65 | ||
|  | 32e01f740b | ||
|  | 7b20f8fc7b | ||
|  | 86ac48d68e | ||
|  | c42fc810ea | ||
|  | 6baebd79fa | ||
|  | c6cae09f99 | 
							
								
								
									
										23
									
								
								.github/workflows/Auto-merge-dependabot-PRs.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								.github/workflows/Auto-merge-dependabot-PRs.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| # This workflow triggers auto-merge of any PR that dependabot creates so that | ||||
| # PRs will be merged automatically without maintainer intervention if CI passes | ||||
| name: Auto-merge dependabot PRs | ||||
|  | ||||
| on: | ||||
|   pull_request_target: | ||||
|     types: [opened] | ||||
|  | ||||
| jobs: | ||||
|   auto-merge: | ||||
|     if: github.repository == 'sharkdp/bat' && startsWith(github.head_ref, 'dependabot/') | ||||
|     runs-on: ubuntu-latest | ||||
|     environment: | ||||
|       name: auto-merge | ||||
|       url: https://github.com/sharkdp/bat/blob/main/.github/workflows/Auto-merge-dependabot-PRs.yml | ||||
|     env: | ||||
|       GITHUB_TOKEN: ${{ secrets.AUTO_MERGE_GITHUB_TOKEN }} | ||||
|     steps: | ||||
|       - uses: actions/checkout@v4 | ||||
|       - run: | | ||||
|           gh pr review ${{ github.event.pull_request.number }} --comment --body "If CI passes, this dependabot PR will be [auto-merged](https://github.com/sharkdp/bat/blob/main/.github/workflows/Auto-merge-dependabot-PRs.yml) 🚀" | ||||
|       - run: | | ||||
|           gh pr merge --auto --squash ${{ github.event.pull_request.number }} | ||||
							
								
								
									
										33
									
								
								.github/workflows/CICD.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										33
									
								
								.github/workflows/CICD.yml
									
									
									
									
										vendored
									
									
								
							| @@ -163,17 +163,17 @@ jobs: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         job: | ||||
|           - { target: aarch64-unknown-linux-gnu   , os: ubuntu-20.04, use-cross: true } | ||||
|           - { target: arm-unknown-linux-gnueabihf , os: ubuntu-20.04, use-cross: true } | ||||
|           - { target: arm-unknown-linux-musleabihf, os: ubuntu-20.04, use-cross: true } | ||||
|           - { target: i686-pc-windows-msvc        , os: windows-2019                  } | ||||
|           - { target: i686-unknown-linux-gnu      , os: ubuntu-20.04, use-cross: true } | ||||
|           - { target: i686-unknown-linux-musl     , os: ubuntu-20.04, use-cross: true } | ||||
|           - { target: x86_64-apple-darwin         , os: macos-12                      } | ||||
|           - { target: x86_64-pc-windows-gnu       , os: windows-2019                  } | ||||
|           - { target: x86_64-pc-windows-msvc      , os: windows-2019                  } | ||||
|           - { target: x86_64-unknown-linux-gnu    , os: ubuntu-20.04, use-cross: true } | ||||
|           - { target: x86_64-unknown-linux-musl   , os: ubuntu-20.04, use-cross: true } | ||||
|           - { target: aarch64-unknown-linux-gnu   , os: ubuntu-20.04, dpkg_arch: arm64,            use-cross: true } | ||||
|           - { target: arm-unknown-linux-gnueabihf , os: ubuntu-20.04, dpkg_arch: armhf,            use-cross: true } | ||||
|           - { target: arm-unknown-linux-musleabihf, os: ubuntu-20.04, dpkg_arch: musl-linux-armhf, use-cross: true } | ||||
|           - { target: i686-pc-windows-msvc        , os: windows-2019,                                              } | ||||
|           - { target: i686-unknown-linux-gnu      , os: ubuntu-20.04, dpkg_arch: i686,             use-cross: true } | ||||
|           - { target: i686-unknown-linux-musl     , os: ubuntu-20.04, dpkg_arch: musl-linux-i686,  use-cross: true } | ||||
|           - { target: x86_64-apple-darwin         , os: macos-12,                                                  } | ||||
|           - { target: x86_64-pc-windows-gnu       , os: windows-2019,                                              } | ||||
|           - { target: x86_64-pc-windows-msvc      , os: windows-2019,                                              } | ||||
|           - { target: x86_64-unknown-linux-gnu    , os: ubuntu-20.04, dpkg_arch: amd64,            use-cross: true } | ||||
|           - { target: x86_64-unknown-linux-musl   , os: ubuntu-20.04, dpkg_arch: musl-linux-amd64, use-cross: true } | ||||
|     env: | ||||
|       BUILD_CMD: cargo | ||||
|     steps: | ||||
| @@ -337,16 +337,7 @@ jobs: | ||||
|         DPKG_CONFLICTS=${{ needs.crate_metadata.outputs.name }}-musl | ||||
|         case ${{ matrix.job.target }} in *-musl) DPKG_BASENAME=${{ needs.crate_metadata.outputs.name }}-musl ; DPKG_CONFLICTS=${{ needs.crate_metadata.outputs.name }} ;; esac; | ||||
|         DPKG_VERSION=${{ needs.crate_metadata.outputs.version }} | ||||
|  | ||||
|         unset DPKG_ARCH | ||||
|         case ${{ matrix.job.target }} in | ||||
|           aarch64-*-linux-*) DPKG_ARCH=arm64 ;; | ||||
|           arm-*-linux-*hf) DPKG_ARCH=armhf ;; | ||||
|           i686-*-linux-*) DPKG_ARCH=i686 ;; | ||||
|           x86_64-*-linux-*) DPKG_ARCH=amd64 ;; | ||||
|           *) DPKG_ARCH=notset ;; | ||||
|         esac; | ||||
|  | ||||
|         DPKG_ARCH="${{ matrix.job.dpkg_arch }}" | ||||
|         DPKG_NAME="${DPKG_BASENAME}_${DPKG_VERSION}_${DPKG_ARCH}.deb" | ||||
|         echo "DPKG_NAME=${DPKG_NAME}" >> $GITHUB_OUTPUT | ||||
|  | ||||
|   | ||||
							
								
								
									
										43
									
								
								.github/workflows/require-changelog-for-PRs.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								.github/workflows/require-changelog-for-PRs.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,43 @@ | ||||
| name: Changelog | ||||
|  | ||||
| on: | ||||
|   pull_request: | ||||
|  | ||||
| jobs: | ||||
|   check-changelog: | ||||
|     name: Check for changelog entry | ||||
|     runs-on: ubuntu-latest | ||||
|     # dependabot PRs are automerged if CI passes; we shouldn't block these | ||||
|     if: github.actor != 'dependabot[bot]' | ||||
|     env: | ||||
|       PR_NUMBER: ${{ github.event.number }} | ||||
|       PR_BASE: ${{ github.base_ref }} | ||||
|     steps: | ||||
|       - uses: actions/checkout@v4 | ||||
|       - name: Fetch PR base | ||||
|         run: git fetch --no-tags --prune --depth=1 origin | ||||
|  | ||||
|       # cannot use `github.actor`: the triggering commit may be authored by a maintainer | ||||
|       - name: Get PR submitter | ||||
|         id: get-submitter | ||||
|         run: curl -sSfL https://api.github.com/repos/sharkdp/bat/pulls/${PR_NUMBER} | jq -r '"submitter=" + .user.login' | tee -a $GITHUB_OUTPUT | ||||
|  | ||||
|       - name: Search for added line in changelog | ||||
|         env: | ||||
|           PR_SUBMITTER: ${{ steps.get-submitter.outputs.submitter }} | ||||
|         run: | | ||||
|           ADDED=$(git diff -U0 "origin/${PR_BASE}" HEAD -- CHANGELOG.md | grep -P '^\+[^\+].+$') | ||||
|           echo "Added lines in CHANGELOG.md:" | ||||
|           echo "$ADDED" | ||||
|  | ||||
|           escape_regex_meta_chars() { | ||||
|             # https://stackoverflow.com/a/16951928/4473405 | ||||
|             sed 's/[][\.|$(){}?+*^]/\\&/g' <<< "$*" | ||||
|           } | ||||
|  | ||||
|           double_escape_slash_for_bash() { | ||||
|             sed 's/\\/\\\\/g' <<< "$*" | ||||
|           } | ||||
|  | ||||
|           echo "Grepping for PR info:" | ||||
|           grep "#${PR_NUMBER}\\b.*[(]@$(quote ${PR_SUBMITTER})[)]" <<< "$ADDED" | ||||
							
								
								
									
										31
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								CHANGELOG.md
									
									
									
									
									
								
							| @@ -1,3 +1,34 @@ | ||||
| # unreleased | ||||
|  | ||||
| ## Features | ||||
|  | ||||
| ## Bugfixes | ||||
|  | ||||
| - Fix `NO_COLOR` support, see #2767 (@acuteenvy) | ||||
|  | ||||
| ## Other | ||||
|  | ||||
| - Upgrade to Rust 2021 edition #2748 (@cyqsimon) | ||||
| - Refactor and cleanup build script #2756 (@cyqsimon) | ||||
| - Checks changelog has been written to for PRs in CI #2766 (@cyqsimon) | ||||
|   - Use GitHub API to get correct PR submitter #2791 (@cyqsimon) | ||||
| - Minor benchmark script improvements #2768 (@cyqsimon) | ||||
| - Update Arch Linux package URL in README files #2779 (@brunobell) | ||||
| - Update and improve `zsh` completion, see #2772 (@okapia) | ||||
| - Use proper Architecture for Debian packages built for musl, see #2811 (@Enselic) | ||||
| - Pull in fix for unsafe-libyaml security advisory, see #2812 (@dtolnay) | ||||
| - Update git-version dependency to use Syn v2, see #2816 (@dtolnay) | ||||
|  | ||||
| ## Syntaxes | ||||
|  | ||||
| - `cmd-help`: scope subcommands followed by other terms, and other misc improvements, see #2819 (@victor-gp) | ||||
| - Upgrade JQ syntax, see #2820 (@dependabot[bot]) | ||||
|  | ||||
| ## Themes | ||||
|  | ||||
| ## `bat` as a library | ||||
|  | ||||
|  | ||||
| # v0.24.0 | ||||
|  | ||||
| ## Features | ||||
|   | ||||
							
								
								
									
										386
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										386
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							| @@ -10,27 +10,18 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" | ||||
|  | ||||
| [[package]] | ||||
| name = "aho-corasick" | ||||
| version = "0.7.19" | ||||
| version = "1.1.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e" | ||||
| dependencies = [ | ||||
|  "memchr", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "aho-corasick" | ||||
| version = "1.0.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "67fc08ce920c31afb70f013dcce1bfc3a3195de6a228474e45e1f145b36f8d04" | ||||
| checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" | ||||
| dependencies = [ | ||||
|  "memchr", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "ansi_colours" | ||||
| version = "1.2.1" | ||||
| version = "1.2.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "7db9d9767fde724f83933a716ee182539788f293828244e9d999695ce0f7ba1e" | ||||
| checksum = "6a1558bd2075d341b9ca698ec8eb6fcc55a746b1fc4255585aad5b141d918a80" | ||||
| dependencies = [ | ||||
|  "rgb", | ||||
| ] | ||||
| @@ -41,7 +32,7 @@ version = "0.6.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" | ||||
| dependencies = [ | ||||
|  "anstyle 1.0.0", | ||||
|  "anstyle", | ||||
|  "anstyle-parse", | ||||
|  "anstyle-query", | ||||
|  "anstyle-wincon", | ||||
| @@ -49,12 +40,6 @@ dependencies = [ | ||||
|  "utf8parse", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "anstyle" | ||||
| version = "0.3.5" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2" | ||||
|  | ||||
| [[package]] | ||||
| name = "anstyle" | ||||
| version = "1.0.0" | ||||
| @@ -85,17 +70,23 @@ version = "3.0.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" | ||||
| dependencies = [ | ||||
|  "anstyle 1.0.0", | ||||
|  "anstyle", | ||||
|  "windows-sys 0.48.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "assert_cmd" | ||||
| version = "2.0.10" | ||||
| name = "anyhow" | ||||
| version = "1.0.78" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "ec0b2340f55d9661d76793b2bfc2eb0e62689bd79d067a95707ea762afd5e9dd" | ||||
| checksum = "ca87830a3e3fb156dc96cfbd31cb620265dd053be734723f22b760d6cc3c3051" | ||||
|  | ||||
| [[package]] | ||||
| name = "assert_cmd" | ||||
| version = "2.0.12" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "88903cb14723e4d4003335bb7f8a14f27691649105346a0f0957466c096adfe6" | ||||
| dependencies = [ | ||||
|  "anstyle 0.3.5", | ||||
|  "anstyle", | ||||
|  "bstr", | ||||
|  "doc-comment", | ||||
|  "predicates", | ||||
| @@ -121,6 +112,7 @@ name = "bat" | ||||
| version = "0.24.0" | ||||
| dependencies = [ | ||||
|  "ansi_colours", | ||||
|  "anyhow", | ||||
|  "assert_cmd", | ||||
|  "bincode", | ||||
|  "bugreport", | ||||
| @@ -198,9 +190,9 @@ checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" | ||||
|  | ||||
| [[package]] | ||||
| name = "bstr" | ||||
| version = "1.6.0" | ||||
| version = "1.8.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05" | ||||
| checksum = "542f33a8835a0884b006a0c3df3dadd99c0c3f296ed26c2fdc8028e01ad6230c" | ||||
| dependencies = [ | ||||
|  "memchr", | ||||
|  "regex-automata", | ||||
| @@ -247,21 +239,21 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" | ||||
|  | ||||
| [[package]] | ||||
| name = "clap" | ||||
| version = "4.4.6" | ||||
| version = "4.4.12" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "d04704f56c2cde07f43e8e2c154b43f216dc5c92fc98ada720177362f953b956" | ||||
| checksum = "dcfab8ba68f3668e89f6ff60f5b205cea56aa7b769451a59f34b8682f51c056d" | ||||
| dependencies = [ | ||||
|  "clap_builder", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "clap_builder" | ||||
| version = "4.4.6" | ||||
| version = "4.4.12" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "0e231faeaca65ebd1ea3c737966bf858971cd38c3849107aa3ea7de90a804e45" | ||||
| checksum = "fb7fb5e4e979aec3be7791562fcba452f94ad85e954da024396433e0e25a79e9" | ||||
| dependencies = [ | ||||
|  "anstream", | ||||
|  "anstyle 1.0.0", | ||||
|  "anstyle", | ||||
|  "clap_lex", | ||||
|  "strsim", | ||||
|  "terminal_size", | ||||
| @@ -269,9 +261,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "clap_lex" | ||||
| version = "0.5.0" | ||||
| version = "0.6.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" | ||||
| checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" | ||||
|  | ||||
| [[package]] | ||||
| name = "clircle" | ||||
| @@ -293,15 +285,15 @@ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" | ||||
|  | ||||
| [[package]] | ||||
| name = "console" | ||||
| version = "0.15.5" | ||||
| version = "0.15.7" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "c3d79fbe8970a77e3e34151cc13d3b3e248aa0faaecb9f6091fa07ebefe5ad60" | ||||
| checksum = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8" | ||||
| dependencies = [ | ||||
|  "encode_unicode", | ||||
|  "lazy_static", | ||||
|  "libc", | ||||
|  "unicode-width", | ||||
|  "windows-sys 0.42.0", | ||||
|  "windows-sys 0.45.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| @@ -430,9 +422,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "fancy-regex" | ||||
| version = "0.7.1" | ||||
| version = "0.11.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "9d6b8560a05112eb52f04b00e5d3790c0dd75d9d980eb8a122fb23b92a623ccf" | ||||
| checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2" | ||||
| dependencies = [ | ||||
|  "bit-set", | ||||
|  "regex", | ||||
| @@ -446,9 +438,9 @@ checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" | ||||
|  | ||||
| [[package]] | ||||
| name = "flate2" | ||||
| version = "1.0.27" | ||||
| version = "1.0.28" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" | ||||
| checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" | ||||
| dependencies = [ | ||||
|  "crc32fast", | ||||
|  "miniz_oxide", | ||||
| @@ -501,31 +493,29 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "git-version" | ||||
| version = "0.3.5" | ||||
| version = "0.3.9" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "f6b0decc02f4636b9ccad390dcbe77b722a77efedfa393caf8379a51d5c61899" | ||||
| checksum = "1ad568aa3db0fcbc81f2f116137f263d7304f512a1209b35b85150d3ef88ad19" | ||||
| dependencies = [ | ||||
|  "git-version-macro", | ||||
|  "proc-macro-hack", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "git-version-macro" | ||||
| version = "0.3.5" | ||||
| version = "0.3.9" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "fe69f1cbdb6e28af2bac214e943b99ce8a0a06b447d15d3e61161b0423139f3f" | ||||
| checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0" | ||||
| dependencies = [ | ||||
|  "proc-macro-hack", | ||||
|  "proc-macro2", | ||||
|  "quote", | ||||
|  "syn 1.0.104", | ||||
|  "syn", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "git2" | ||||
| version = "0.18.0" | ||||
| version = "0.18.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "12ef350ba88a33b4d524b1d1c79096c9ade5ef8c59395df0e60d1e1889414c0e" | ||||
| checksum = "fbf97ba92db08df386e10c8ede66a2a0369bd277090afd8710e19e38de9ec0cd" | ||||
| dependencies = [ | ||||
|  "bitflags 2.4.0", | ||||
|  "libc", | ||||
| @@ -536,35 +526,33 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "glob" | ||||
| version = "0.3.0" | ||||
| version = "0.3.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" | ||||
| checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" | ||||
|  | ||||
| [[package]] | ||||
| name = "globset" | ||||
| version = "0.4.10" | ||||
| version = "0.4.14" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc" | ||||
| checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1" | ||||
| dependencies = [ | ||||
|  "aho-corasick 0.7.19", | ||||
|  "aho-corasick", | ||||
|  "bstr", | ||||
|  "fnv", | ||||
|  "log", | ||||
|  "regex", | ||||
|  "regex-automata", | ||||
|  "regex-syntax 0.8.2", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "grep-cli" | ||||
| version = "0.1.9" | ||||
| version = "0.1.10" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "8fe4bdbf4300c8b039f5d7eec7fbc6760d2c85bb15ac7499c4d235667f6d747a" | ||||
| checksum = "ea40788c059ab8b622c4d074732750bfb3bd2912e2dd58eabc11798a4d5ad725" | ||||
| dependencies = [ | ||||
|  "bstr", | ||||
|  "globset", | ||||
|  "lazy_static", | ||||
|  "libc", | ||||
|  "log", | ||||
|  "regex", | ||||
|  "same-file", | ||||
|  "termcolor", | ||||
|  "winapi-util", | ||||
| ] | ||||
| @@ -583,11 +571,11 @@ checksum = "7dfda62a12f55daeae5015f81b0baea145391cb4520f86c248fc615d72640d12" | ||||
|  | ||||
| [[package]] | ||||
| name = "home" | ||||
| version = "0.5.5" | ||||
| version = "0.5.9" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb" | ||||
| checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" | ||||
| dependencies = [ | ||||
|  "windows-sys 0.48.0", | ||||
|  "windows-sys 0.52.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| @@ -622,9 +610,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "itertools" | ||||
| version = "0.10.5" | ||||
| version = "0.11.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" | ||||
| checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" | ||||
| dependencies = [ | ||||
|  "either", | ||||
| ] | ||||
| @@ -652,9 +640,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" | ||||
|  | ||||
| [[package]] | ||||
| name = "libc" | ||||
| version = "0.2.147" | ||||
| version = "0.2.149" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" | ||||
| checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" | ||||
|  | ||||
| [[package]] | ||||
| name = "libgit2-sys" | ||||
| @@ -697,9 +685,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" | ||||
|  | ||||
| [[package]] | ||||
| name = "linux-raw-sys" | ||||
| version = "0.4.5" | ||||
| version = "0.4.10" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" | ||||
| checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" | ||||
|  | ||||
| [[package]] | ||||
| name = "lock_api" | ||||
| @@ -713,18 +701,15 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "log" | ||||
| version = "0.4.17" | ||||
| version = "0.4.20" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" | ||||
| dependencies = [ | ||||
|  "cfg-if", | ||||
| ] | ||||
| checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" | ||||
|  | ||||
| [[package]] | ||||
| name = "memchr" | ||||
| version = "2.5.0" | ||||
| version = "2.6.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" | ||||
| checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" | ||||
|  | ||||
| [[package]] | ||||
| name = "miniz_oxide" | ||||
| @@ -737,14 +722,13 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "nix" | ||||
| version = "0.26.2" | ||||
| version = "0.26.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" | ||||
| checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" | ||||
| dependencies = [ | ||||
|  "bitflags 1.3.2", | ||||
|  "cfg-if", | ||||
|  "libc", | ||||
|  "static_assertions", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| @@ -782,9 +766,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "once_cell" | ||||
| version = "1.18.0" | ||||
| version = "1.19.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" | ||||
| checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" | ||||
|  | ||||
| [[package]] | ||||
| name = "onig" | ||||
| @@ -810,9 +794,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "os_str_bytes" | ||||
| version = "6.4.1" | ||||
| version = "6.6.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee" | ||||
| checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1" | ||||
| dependencies = [ | ||||
|  "memchr", | ||||
| ] | ||||
| @@ -863,9 +847,9 @@ checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" | ||||
|  | ||||
| [[package]] | ||||
| name = "plist" | ||||
| version = "1.4.3" | ||||
| version = "1.5.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "9bd9647b268a3d3e14ff09c23201133a62589c658db02bb7388c7246aafe0590" | ||||
| checksum = "9a4a0cfc5fb21a09dc6af4bf834cf10d4a32fccd9e2ea468c4b1751a097487aa" | ||||
| dependencies = [ | ||||
|  "base64", | ||||
|  "indexmap 1.9.1", | ||||
| @@ -883,11 +867,11 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" | ||||
|  | ||||
| [[package]] | ||||
| name = "predicates" | ||||
| version = "3.0.3" | ||||
| version = "3.0.4" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "09963355b9f467184c04017ced4a2ba2d75cbcb4e7462690d388233253d4b1a9" | ||||
| checksum = "6dfc28575c2e3f19cb3c73b93af36460ae898d426eba6fc15b9bd2a5220758a0" | ||||
| dependencies = [ | ||||
|  "anstyle 1.0.0", | ||||
|  "anstyle", | ||||
|  "difflib", | ||||
|  "float-cmp", | ||||
|  "itertools", | ||||
| @@ -912,12 +896,6 @@ dependencies = [ | ||||
|  "termtree", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "proc-macro-hack" | ||||
| version = "0.5.19" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" | ||||
|  | ||||
| [[package]] | ||||
| name = "proc-macro2" | ||||
| version = "1.0.66" | ||||
| @@ -929,18 +907,18 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "quick-xml" | ||||
| version = "0.28.1" | ||||
| version = "0.30.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "e5c1a97b1bc42b1d550bfb48d4262153fe400a12bab1511821736f7eac76d7e2" | ||||
| checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956" | ||||
| dependencies = [ | ||||
|  "memchr", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "quote" | ||||
| version = "1.0.26" | ||||
| version = "1.0.33" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" | ||||
| checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" | ||||
| dependencies = [ | ||||
|  "proc-macro2", | ||||
| ] | ||||
| @@ -986,41 +964,47 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "redox_syscall" | ||||
| version = "0.3.5" | ||||
| version = "0.4.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" | ||||
| checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" | ||||
| dependencies = [ | ||||
|  "bitflags 1.3.2", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "regex" | ||||
| version = "1.8.3" | ||||
| version = "1.10.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "81ca098a9821bd52d6b24fd8b10bd081f47d39c22778cafaa75a2857a62c6390" | ||||
| checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" | ||||
| dependencies = [ | ||||
|  "aho-corasick 1.0.1", | ||||
|  "aho-corasick", | ||||
|  "memchr", | ||||
|  "regex-syntax 0.7.2", | ||||
|  "regex-automata", | ||||
|  "regex-syntax 0.8.2", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "regex-automata" | ||||
| version = "0.3.7" | ||||
| version = "0.4.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629" | ||||
| checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" | ||||
| dependencies = [ | ||||
|  "aho-corasick", | ||||
|  "memchr", | ||||
|  "regex-syntax 0.8.2", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "regex-syntax" | ||||
| version = "0.6.27" | ||||
| version = "0.7.5" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" | ||||
| checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" | ||||
|  | ||||
| [[package]] | ||||
| name = "regex-syntax" | ||||
| version = "0.7.2" | ||||
| version = "0.8.2" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78" | ||||
| checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" | ||||
|  | ||||
| [[package]] | ||||
| name = "rgb" | ||||
| @@ -1033,18 +1017,18 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "run_script" | ||||
| version = "0.10.0" | ||||
| version = "0.10.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "7fdc55b3a7ad58e02de47eaf7a854c6791c8421da48ff296c152317d3beaf230" | ||||
| checksum = "829f98fdc58d78989dd9af83be28bc15c94a7d77f9ecdb54abbbc0b1829ba9c7" | ||||
| dependencies = [ | ||||
|  "fsio", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "rustix" | ||||
| version = "0.38.11" | ||||
| version = "0.38.21" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "c0c3dde1fc030af041adc40e79c0e7fbcf431dd24870053d187d7c66e4b87453" | ||||
| checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3" | ||||
| dependencies = [ | ||||
|  "bitflags 2.4.0", | ||||
|  "errno", | ||||
| @@ -1082,28 +1066,28 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" | ||||
|  | ||||
| [[package]] | ||||
| name = "semver" | ||||
| version = "1.0.17" | ||||
| version = "1.0.20" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" | ||||
| checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" | ||||
|  | ||||
| [[package]] | ||||
| name = "serde" | ||||
| version = "1.0.163" | ||||
| version = "1.0.193" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2" | ||||
| checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" | ||||
| dependencies = [ | ||||
|  "serde_derive", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "serde_derive" | ||||
| version = "1.0.163" | ||||
| version = "1.0.193" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e" | ||||
| checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" | ||||
| dependencies = [ | ||||
|  "proc-macro2", | ||||
|  "quote", | ||||
|  "syn 2.0.12", | ||||
|  "syn", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| @@ -1119,9 +1103,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "serde_yaml" | ||||
| version = "0.9.25" | ||||
| version = "0.9.29" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "1a49e178e4452f45cb61d0cd8cebc1b0fafd3e41929e996cef79aa3aca91f574" | ||||
| checksum = "a15e0ef66bf939a7c890a0bf6d5a733c70202225f9888a89ed5c62298b019129" | ||||
| dependencies = [ | ||||
|  "indexmap 2.0.2", | ||||
|  "itoa", | ||||
| @@ -1150,7 +1134,7 @@ checksum = "91d129178576168c589c9ec973feedf7d3126c01ac2bf08795109aa35b69fb8f" | ||||
| dependencies = [ | ||||
|  "proc-macro2", | ||||
|  "quote", | ||||
|  "syn 2.0.12", | ||||
|  "syn", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| @@ -1171,12 +1155,6 @@ version = "1.10.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" | ||||
|  | ||||
| [[package]] | ||||
| name = "static_assertions" | ||||
| version = "1.1.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" | ||||
|  | ||||
| [[package]] | ||||
| name = "std_prelude" | ||||
| version = "0.2.12" | ||||
| @@ -1191,20 +1169,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" | ||||
|  | ||||
| [[package]] | ||||
| name = "syn" | ||||
| version = "1.0.104" | ||||
| version = "2.0.32" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "4ae548ec36cf198c0ef7710d3c230987c2d6d7bd98ad6edc0274462724c585ce" | ||||
| dependencies = [ | ||||
|  "proc-macro2", | ||||
|  "quote", | ||||
|  "unicode-ident", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "syn" | ||||
| version = "2.0.12" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "79d9531f94112cfc3e4c8f5f02cb2b58f72c97b7efd85f70203cc6d8efda5927" | ||||
| checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2" | ||||
| dependencies = [ | ||||
|  "proc-macro2", | ||||
|  "quote", | ||||
| @@ -1213,22 +1180,20 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "syntect" | ||||
| version = "5.0.0" | ||||
| version = "5.1.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "c6c454c27d9d7d9a84c7803aaa3c50cd088d2906fe3c6e42da3209aa623576a8" | ||||
| checksum = "e02b4b303bf8d08bfeb0445cba5068a3d306b6baece1d5582171a9bf49188f91" | ||||
| dependencies = [ | ||||
|  "bincode", | ||||
|  "bitflags 1.3.2", | ||||
|  "fancy-regex", | ||||
|  "flate2", | ||||
|  "fnv", | ||||
|  "lazy_static", | ||||
|  "once_cell", | ||||
|  "onig", | ||||
|  "plist", | ||||
|  "regex-syntax 0.6.27", | ||||
|  "regex-syntax 0.7.5", | ||||
|  "serde", | ||||
|  "serde_derive", | ||||
|  "serde_json", | ||||
|  "thiserror", | ||||
|  "walkdir", | ||||
| @@ -1247,22 +1212,22 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "tempfile" | ||||
| version = "3.8.0" | ||||
| version = "3.8.1" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" | ||||
| checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" | ||||
| dependencies = [ | ||||
|  "cfg-if", | ||||
|  "fastrand", | ||||
|  "redox_syscall 0.3.5", | ||||
|  "redox_syscall 0.4.1", | ||||
|  "rustix", | ||||
|  "windows-sys 0.48.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "termcolor" | ||||
| version = "1.1.3" | ||||
| version = "1.4.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" | ||||
| checksum = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449" | ||||
| dependencies = [ | ||||
|  "winapi-util", | ||||
| ] | ||||
| @@ -1285,22 +1250,22 @@ checksum = "507e9898683b6c43a9aa55b64259b721b52ba226e0f3779137e50ad114a4c90b" | ||||
|  | ||||
| [[package]] | ||||
| name = "thiserror" | ||||
| version = "1.0.40" | ||||
| version = "1.0.53" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" | ||||
| checksum = "b2cd5904763bad08ad5513ddbb12cf2ae273ca53fa9f68e843e236ec6dfccc09" | ||||
| dependencies = [ | ||||
|  "thiserror-impl", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "thiserror-impl" | ||||
| version = "1.0.40" | ||||
| version = "1.0.53" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" | ||||
| checksum = "3dcf4a824cce0aeacd6f38ae6f24234c8e80d68632338ebaa1443b5df9e29e19" | ||||
| dependencies = [ | ||||
|  "proc-macro2", | ||||
|  "quote", | ||||
|  "syn 2.0.12", | ||||
|  "syn", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| @@ -1352,15 +1317,15 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "unicode-width" | ||||
| version = "0.1.10" | ||||
| version = "0.1.11" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" | ||||
| checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" | ||||
|  | ||||
| [[package]] | ||||
| name = "unsafe-libyaml" | ||||
| version = "0.2.9" | ||||
| version = "0.2.10" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "f28467d3e1d3c6586d8f25fa243f544f5800fec42d97032474e17222c2b75cfa" | ||||
| checksum = "ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b" | ||||
|  | ||||
| [[package]] | ||||
| name = "url" | ||||
| @@ -1396,9 +1361,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "walkdir" | ||||
| version = "2.3.3" | ||||
| version = "2.4.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" | ||||
| checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" | ||||
| dependencies = [ | ||||
|  "same-file", | ||||
|  "winapi-util", | ||||
| @@ -1412,9 +1377,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" | ||||
|  | ||||
| [[package]] | ||||
| name = "wild" | ||||
| version = "2.1.0" | ||||
| version = "2.2.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "05b116685a6be0c52f5a103334cbff26db643826c7b3735fc0a3ba9871310a74" | ||||
| checksum = "10d01931a94d5a115a53f95292f51d316856b68a035618eb831bbba593a30b67" | ||||
| dependencies = [ | ||||
|  "glob", | ||||
| ] | ||||
| @@ -1437,9 +1402,9 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" | ||||
|  | ||||
| [[package]] | ||||
| name = "winapi-util" | ||||
| version = "0.1.5" | ||||
| version = "0.1.6" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" | ||||
| checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" | ||||
| dependencies = [ | ||||
|  "winapi", | ||||
| ] | ||||
| @@ -1450,21 +1415,6 @@ version = "0.4.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows-sys" | ||||
| version = "0.42.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" | ||||
| dependencies = [ | ||||
|  "windows_aarch64_gnullvm 0.42.1", | ||||
|  "windows_aarch64_msvc 0.42.1", | ||||
|  "windows_i686_gnu 0.42.1", | ||||
|  "windows_i686_msvc 0.42.1", | ||||
|  "windows_x86_64_gnu 0.42.1", | ||||
|  "windows_x86_64_gnullvm 0.42.1", | ||||
|  "windows_x86_64_msvc 0.42.1", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "windows-sys" | ||||
| version = "0.45.0" | ||||
| @@ -1483,6 +1433,15 @@ dependencies = [ | ||||
|  "windows-targets 0.48.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "windows-sys" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" | ||||
| dependencies = [ | ||||
|  "windows-targets 0.52.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "windows-targets" | ||||
| version = "0.42.1" | ||||
| @@ -1513,6 +1472,21 @@ dependencies = [ | ||||
|  "windows_x86_64_msvc 0.48.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "windows-targets" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" | ||||
| dependencies = [ | ||||
|  "windows_aarch64_gnullvm 0.52.0", | ||||
|  "windows_aarch64_msvc 0.52.0", | ||||
|  "windows_i686_gnu 0.52.0", | ||||
|  "windows_i686_msvc 0.52.0", | ||||
|  "windows_x86_64_gnu 0.52.0", | ||||
|  "windows_x86_64_gnullvm 0.52.0", | ||||
|  "windows_x86_64_msvc 0.52.0", | ||||
| ] | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_aarch64_gnullvm" | ||||
| version = "0.42.1" | ||||
| @@ -1525,6 +1499,12 @@ version = "0.48.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_aarch64_gnullvm" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_aarch64_msvc" | ||||
| version = "0.42.1" | ||||
| @@ -1537,6 +1517,12 @@ version = "0.48.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_aarch64_msvc" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_i686_gnu" | ||||
| version = "0.42.1" | ||||
| @@ -1549,6 +1535,12 @@ version = "0.48.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_i686_gnu" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_i686_msvc" | ||||
| version = "0.42.1" | ||||
| @@ -1561,6 +1553,12 @@ version = "0.48.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_i686_msvc" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_x86_64_gnu" | ||||
| version = "0.42.1" | ||||
| @@ -1573,6 +1571,12 @@ version = "0.48.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_x86_64_gnu" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_x86_64_gnullvm" | ||||
| version = "0.42.1" | ||||
| @@ -1585,6 +1589,12 @@ version = "0.48.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_x86_64_gnullvm" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_x86_64_msvc" | ||||
| version = "0.42.1" | ||||
| @@ -1597,6 +1607,12 @@ version = "0.48.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" | ||||
|  | ||||
| [[package]] | ||||
| name = "windows_x86_64_msvc" | ||||
| version = "0.52.0" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" | ||||
|  | ||||
| [[package]] | ||||
| name = "yaml-rust" | ||||
| version = "0.4.5" | ||||
|   | ||||
							
								
								
									
										45
									
								
								Cargo.toml
									
									
									
									
									
								
							
							
						
						
									
										45
									
								
								Cargo.toml
									
									
									
									
									
								
							| @@ -8,8 +8,8 @@ name = "bat" | ||||
| repository = "https://github.com/sharkdp/bat" | ||||
| version = "0.24.0" | ||||
| exclude = ["assets/syntaxes/*", "assets/themes/*"] | ||||
| build = "build.rs" | ||||
| edition = '2018' | ||||
| build = "build/main.rs" | ||||
| edition = '2021' | ||||
| rust-version = "1.70" | ||||
|  | ||||
| [features] | ||||
| @@ -44,29 +44,29 @@ regex-fancy = ["syntect/regex-fancy"] # Use the rust-only "fancy-regex" engine | ||||
| nu-ansi-term = "0.49.0" | ||||
| ansi_colours = "^1.2" | ||||
| bincode = "1.0" | ||||
| console = "0.15.5" | ||||
| console = "0.15.7" | ||||
| flate2 = "1.0" | ||||
| once_cell = "1.18" | ||||
| once_cell = "1.19" | ||||
| thiserror = "1.0" | ||||
| wild = { version = "2.1", optional = true } | ||||
| wild = { version = "2.2", optional = true } | ||||
| content_inspector = "0.2.4" | ||||
| shell-words = { version = "1.1.0", optional = true } | ||||
| unicode-width = "0.1.10" | ||||
| unicode-width = "0.1.11" | ||||
| globset = "0.4" | ||||
| serde = { version = "1.0", features = ["derive"] } | ||||
| serde_yaml = "0.9" | ||||
| serde_yaml = "0.9.28" | ||||
| semver = "1.0" | ||||
| path_abs = { version = "0.5", default-features = false } | ||||
| clircle = "0.4" | ||||
| bugreport = { version = "0.5.0", optional = true } | ||||
| etcetera = { version = "0.8.0", optional = true } | ||||
| grep-cli = { version = "0.1.9", optional = true } | ||||
| regex = { version = "1.8.3", optional = true } | ||||
| walkdir = { version = "2.3", optional = true } | ||||
| grep-cli = { version = "0.1.10", optional = true } | ||||
| regex = { version = "1.10.2", optional = true } | ||||
| walkdir = { version = "2.4", optional = true } | ||||
| bytesize = { version = "1.3.0" } | ||||
| encoding_rs = "0.8.33" | ||||
| os_str_bytes = { version = "~6.4", optional = true } | ||||
| run_script = { version = "^0.10.0", optional = true} | ||||
| os_str_bytes = { version = "~6.6", optional = true } | ||||
| run_script = { version = "^0.10.1", optional = true} | ||||
|  | ||||
| [dependencies.git2] | ||||
| version = "0.18" | ||||
| @@ -74,32 +74,35 @@ optional = true | ||||
| default-features = false | ||||
|  | ||||
| [dependencies.syntect] | ||||
| version = "5.0.0" | ||||
| version = "5.1.0" | ||||
| default-features = false | ||||
| features = ["parsing"] | ||||
|  | ||||
| [dependencies.clap] | ||||
| version = "4.4.6" | ||||
| version = "4.4.12" | ||||
| optional = true | ||||
| features = ["wrap_help", "cargo"] | ||||
|  | ||||
| [target.'cfg(target_os = "macos")'.dependencies] | ||||
| home = "0.5.4" | ||||
| plist = "1.4.3" | ||||
| home = "0.5.9" | ||||
| plist = "1.5.1" | ||||
|  | ||||
| [dev-dependencies] | ||||
| assert_cmd = "2.0.10" | ||||
| assert_cmd = "2.0.12" | ||||
| expect-test = "1.4.1" | ||||
| serial_test = { version = "2.0.0", default-features = false } | ||||
| predicates = "3.0.3" | ||||
| predicates = "3.0.4" | ||||
| wait-timeout = "0.2.0" | ||||
| tempfile = "3.8.0" | ||||
| tempfile = "3.8.1" | ||||
|  | ||||
| [target.'cfg(unix)'.dev-dependencies] | ||||
| nix = { version = "0.26.2", default-features = false, features = ["term"] } | ||||
| nix = { version = "0.26.4", default-features = false, features = ["term"] } | ||||
|  | ||||
| [build-dependencies] | ||||
| anyhow = "1.0.78" | ||||
|  | ||||
| [build-dependencies.clap] | ||||
| version = "4.4.6" | ||||
| version = "4.4.12" | ||||
| optional = true | ||||
| features = ["wrap_help", "cargo"] | ||||
|  | ||||
|   | ||||
| @@ -254,7 +254,7 @@ Please report any issues with the help syntax in [this repository](https://githu | ||||
|  | ||||
| ## Installation | ||||
|  | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
|  | ||||
| ### On Ubuntu (using `apt`) | ||||
| *... and other Debian-based Linux distributions.* | ||||
| @@ -296,7 +296,7 @@ apk add bat | ||||
|  | ||||
| ### On Arch Linux | ||||
|  | ||||
| You can install [the `bat` package](https://www.archlinux.org/packages/community/x86_64/bat/) | ||||
| You can install [the `bat` package](https://www.archlinux.org/packages/extra/x86_64/bat/) | ||||
| from the official sources: | ||||
|  | ||||
| ```bash | ||||
|   | ||||
							
								
								
									
										8
									
								
								assets/completions/bat.fish.in
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								assets/completions/bat.fish.in
									
									
									
									
										vendored
									
									
								
							| @@ -147,6 +147,8 @@ complete -c $bat -s d -l diff -d "Only show lines with Git changes" -n __bat_no_ | ||||
|  | ||||
| complete -c $bat -l diff-context -x -d "Show N context lines around Git changes" -n "__fish_seen_argument -s d -l diff" | ||||
|  | ||||
| complete -c $bat -l generate-config-file -f -d "Generates a default configuration file" -n __fish_is_first_arg | ||||
|  | ||||
| complete -c $bat -l file-name -x -d "Specify the display name" -n __bat_no_excl_args | ||||
|  | ||||
| complete -c $bat -s f -l force-colorization -d "Force color and decorations" -n __bat_no_excl_args | ||||
| @@ -173,6 +175,12 @@ complete -c $bat -l list-themes -f -d "List syntax highlighting themes" -n __fis | ||||
|  | ||||
| complete -c $bat -s m -l map-syntax -x -a "(__bat_complete_map_syntax)" -d "Map <glob pattern>:<language syntax>" -n __bat_no_excl_args | ||||
|  | ||||
| complete -c $bat -l no-config -d "Do not use the configuration file" | ||||
|  | ||||
| complete -c $bat -l no-custom-assets -d "Do not load custom assets" | ||||
|  | ||||
| complete -c $bat -l no-lessopen -d "Disable the $LESSOPEN preprocessor if enabled (overrides --lessopen)" | ||||
|  | ||||
| complete -c $bat -s n -l number -d "Only show line numbers, no other decorations" -n __bat_no_excl_args | ||||
|  | ||||
| complete -c $bat -l pager -x -a "$pager_opts" -d "Which pager to use" -n __bat_no_excl_args | ||||
|   | ||||
							
								
								
									
										115
									
								
								assets/completions/bat.zsh.in
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										115
									
								
								assets/completions/bat.zsh.in
									
									
									
									
										vendored
									
									
								
							| @@ -1,19 +1,20 @@ | ||||
| #compdef {{PROJECT_EXECUTABLE}} | ||||
|  | ||||
| local context state state_descr line | ||||
| local curcontext="$curcontext" ret=1 | ||||
| local -a state state_descr line | ||||
| typeset -A opt_args | ||||
|  | ||||
| (( $+functions[_{{PROJECT_EXECUTABLE}}_cache_subcommand] )) || | ||||
| _{{PROJECT_EXECUTABLE}}_cache_subcommand() { | ||||
|     local -a args | ||||
|     args=( | ||||
|         '(-b --build -c --clear)'{-b,--build}'[Initialize or update the syntax/theme cache]' | ||||
|         '(-b --build -c --clear)'{-c,--clear}'[Remove the cached syntax definitions and themes]' | ||||
|         '(--source)'--source='[Use a different directory to load syntaxes and themes from]:directory:_files -/' | ||||
|         '(--target)'--target='[Use a different directory to store the cached syntax and theme set]:directory:_files -/' | ||||
|         '(--blank)'--blank'[Create completely new syntax and theme sets]' | ||||
|         '(: -)'{-h,--help}'[Prints help information]' | ||||
|         '*: :' | ||||
|         '(-b --build -c --clear)'{-b,--build}'[initialize or update the syntax/theme cache]' | ||||
|         '(-b --build -c --clear)'{-c,--clear}'[remove the cached syntax definitions and themes]' | ||||
|         --source='[specify directory to load syntaxes and themes from]:directory:_files -/' | ||||
|         --target='[specify directory to store the cached syntax and theme set in]:directory:_files -/' | ||||
|         --blank'[create completely new syntax and theme sets]' | ||||
|         --acknowledgements'[build acknowledgements.bin]' | ||||
|         '(: -)'{-h,--help}'[show help information]' | ||||
|     ) | ||||
|  | ||||
|     _arguments -S -s $args | ||||
| @@ -23,69 +24,79 @@ _{{PROJECT_EXECUTABLE}}_cache_subcommand() { | ||||
| _{{PROJECT_EXECUTABLE}}_main() { | ||||
|     local -a args | ||||
|     args=( | ||||
|         '(-A --show-all)'{-A,--show-all}'[Show non-printable characters (space, tab, newline, ..)]' | ||||
|         '*'{-p,--plain}'[Show plain style (alias for `--style=plain`), repeat twice to disable disable automatic paging (alias for `--paging=never`)]' | ||||
|         '(-l --language)'{-l+,--language=}'[Set the language for syntax highlighting]:<language>:->language' | ||||
|         '(-H --highlight-line)'{-H,--highlight-line}'[Highlight lines N through M]:<N\:M>...' | ||||
|         '(--file-name)'--file-name'[Specify the name to display for a file]:<name>...:_files' | ||||
|         '(-d --diff)'--diff'[Only show lines that have been added/removed/modified]' | ||||
|         '(--diff-context)'--diff-context'[Include N lines of context around added/removed/modified lines when using `--diff`]:<N> (lines):()' | ||||
|         '(--tabs)'--tabs'[Set the tab width to T spaces]:<T> (tab width):()' | ||||
|         '(--wrap)'--wrap='[Specify the text-wrapping mode]:<when>:(auto never character)' | ||||
|         '(--terminal-width)'--terminal-width'[Explicitly set the width of the terminal instead of determining it automatically]:<width>' | ||||
|         '(-n --number)'{-n,--number}'[Show line numbers]' | ||||
|         '(--color)'--color='[When to use colors]:<when>:(auto never always)' | ||||
|         '(--italic-text)'--italic-text='[Use italics in output]:<when>:(always never)' | ||||
|         '(--decorations)'--decorations='[When to show the decorations]:<when>:(auto never always)' | ||||
|         '(--paging)'--paging='[Specify when to use the pager]:<when>:(auto never always)' | ||||
|         '(-m --map-syntax)'{-m+,--map-syntax=}'[Use the specified syntax for files matching the glob pattern]:<glob\:syntax>...' | ||||
|         '(--theme)'--theme='[Set the color theme for syntax highlighting]:<theme>:->theme' | ||||
|         '(: --list-themes --list-languages -L)'--list-themes'[Display all supported highlighting themes]' | ||||
|         '(--style)'--style='[Comma-separated list of style elements to display]:<components>:->style' | ||||
|         '(-r --line-range)'{-r+,--line-range=}'[Only print the lines from N to M]:<N\:M>...' | ||||
|         '(: --list-themes --list-languages -L)'{-L,--list-languages}'[Display all supported languages]' | ||||
|         '(: --no-config)'--no-config'[Do not use the configuration file]' | ||||
|         '(: --no-custom-assets)'--no-custom-assets'[Do not load custom assets]' | ||||
|         '(: --lessopen)'--lessopen'[Enable the $LESSOPEN preprocessor]' | ||||
|         '(: --no-lessopen)'--no-lessopen'[Disable the $LESSOPEN preprocessor if enabled (overrides --lessopen)]' | ||||
|         '(: --config-dir)'--config-dir'[Show bat'"'"'s configuration directory]' | ||||
|         '(: --config-file)'--config-file'[Show path to the configuration file]' | ||||
|         '(: --generate-config-file)'--generate-config-file'[Generates a default configuration file]' | ||||
|         '(: --cache-dir)'--cache-dir'[Show bat'"'"'s cache directory]' | ||||
|         '(: -)'{-h,--help}'[Print this help message]' | ||||
|         '(: -)'{-V,--version}'[Show version information]' | ||||
|         '*: :_files' | ||||
|         '(-A --show-all)'{-A,--show-all}'[show non-printable characters (space, tab, newline, ..)]' | ||||
|         --nonprintable-notation='[specify how to display non-printable characters when using --show-all]:notation:(caret unicode)' | ||||
|         \*{-p,--plain}'[show plain style (alias for `--style=plain`), repeat twice to disable disable automatic paging (alias for `--paging=never`)]' | ||||
|         '(-l --language)'{-l+,--language=}'[set the language for syntax highlighting]:language:->languages' | ||||
|         \*{-H+,--highlight-line=}'[highlight specified block of lines]:start\:end' | ||||
|         \*--file-name='[specify the name to display for a file]:name:_files' | ||||
|         '(-d --diff)'--diff'[only show lines that have been added/removed/modified]' | ||||
|         --diff-context='[specify lines of context around added/removed/modified lines when using `--diff`]:lines' | ||||
|         --tabs='[set the tab width]:tab width [4]' | ||||
|         --wrap='[specify the text-wrapping mode]:mode [auto]:(auto never character)' | ||||
|         '!(--wrap)'{-S,--chop-long-lines} | ||||
|         --terminal-width='[explicitly set the width of the terminal instead of determining it automatically]:width' | ||||
|         '(-n --number --diff --diff-context)'{-n,--number}'[show line numbers]' | ||||
|         --color='[specify when to use colors]:when:(auto never always)' | ||||
|         --italic-text='[use italics in output]:when:(always never)' | ||||
|         --decorations='[specify when to show the decorations]:when:(auto never always)' | ||||
|         --paging='[specify when to use the pager]:when:(auto never always)' | ||||
|         '(-m --map-syntax)'{-m+,--map-syntax=}'[map a glob pattern to an existing syntax name]: :->syntax-maps' | ||||
|         '(--theme)'--theme='[set the color theme for syntax highlighting]:theme:->themes' | ||||
|         '(: --list-themes --list-languages -L)'--list-themes'[show all supported highlighting themes]' | ||||
|         --style='[comma-separated list of style elements to display]: : _values "style [default]" | ||||
|             default auto full plain changes header header-filename header-filesize grid rule numbers snip' | ||||
|         \*{-r+,--line-range=}'[only print the specified line range]:start\:end' | ||||
|         '(* -)'{-L,--list-languages}'[display all supported languages]' | ||||
|         "--no-config[don't use the configuration file]" | ||||
|         "--no-custom-assets[don't load custom assets]" | ||||
|         '(--no-lessopen)'--lessopen'[enable the $LESSOPEN preprocessor]' | ||||
|         '(--lessopen)'--no-lessopen'[disable the $LESSOPEN preprocessor if enabled (overrides --lessopen)]' | ||||
|         '(* -)'--config-dir"[show bat's configuration directory]" | ||||
|         '(* -)'--config-file'[show path to the configuration file]' | ||||
|         '(* -)'--generate-config-file'[generate a default configuration file]' | ||||
|         '(* -)'--cache-dir"[show bat's cache directory]" | ||||
|         '(* -)'{-h,--help}'[show help information]' | ||||
|         '(* -)'{-V,--version}'[show version information]' | ||||
|         '*: :{ _files || compadd cache }' | ||||
|     ) | ||||
|  | ||||
|     _arguments -S -s $args | ||||
|     _arguments -S -s $args && ret=0 | ||||
|  | ||||
|     case "$state" in | ||||
|         language) | ||||
|         syntax-maps) | ||||
|           if ! compset -P '*:'; then | ||||
|             _message -e patterns 'glob pattern:language' | ||||
|             return | ||||
|           fi | ||||
|         ;& # fall-through | ||||
|  | ||||
|         languages) | ||||
|             local IFS=$'\n' | ||||
|             local -a languages | ||||
|             languages=( $({{PROJECT_EXECUTABLE}} --list-languages | awk -F':|,' '{ for (i = 1; i <= NF; ++i) printf("%s:%s\n", $i, $1) }') ) | ||||
|  | ||||
|             _describe 'language' languages | ||||
|             _describe 'language' languages && ret=0 | ||||
|         ;; | ||||
|  | ||||
|         theme) | ||||
|             local IFS=$'\n' | ||||
|             local -a themes | ||||
|             themes=( $({{PROJECT_EXECUTABLE}} --list-themes | sort) ) | ||||
|         themes) | ||||
|             local -a themes expl | ||||
|             themes=( ${(f)"$(_call_program themes {{PROJECT_EXECUTABLE}} --list-themes)"} ) | ||||
|  | ||||
|             _values 'theme' $themes | ||||
|         ;; | ||||
|  | ||||
|         style) | ||||
|             _values -s , 'style' default auto full plain changes header header-filename header-filesize grid rule numbers snip | ||||
|             _wanted themes expl 'theme' compadd -a themes && ret=0 | ||||
|         ;; | ||||
|     esac | ||||
|  | ||||
|     return ret | ||||
| } | ||||
|  | ||||
| case $words[2] in | ||||
|     cache) | ||||
|         ## Completion of the 'cache' command itself is removed for better UX | ||||
|         ## See https://github.com/sharkdp/bat/issues/2085#issuecomment-1271646802 | ||||
|         shift words | ||||
|         (( CURRENT-- )) | ||||
|         curcontext="${curcontext%:*}-${words[1]}:" | ||||
|         _{{PROJECT_EXECUTABLE}}_cache_subcommand | ||||
|     ;; | ||||
|  | ||||
|   | ||||
							
								
								
									
										2
									
								
								assets/syntaxes/02_Extra/SublimeJQ
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								assets/syntaxes/02_Extra/SublimeJQ
									
									
									
									
										vendored
									
									
								
							 Submodule assets/syntaxes/02_Extra/SublimeJQ updated: 687058289c...b7e53e5d86
									
								
							
							
								
								
									
										2
									
								
								assets/syntaxes/02_Extra/cmd-help
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								assets/syntaxes/02_Extra/cmd-help
									
									
									
									
										vendored
									
									
								
							 Submodule assets/syntaxes/02_Extra/cmd-help updated: f41e5fc838...b150d84534
									
								
							
							
								
								
									
										2
									
								
								assets/themes/zenburn
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								assets/themes/zenburn
									
									
									
									
										vendored
									
									
								
							 Submodule assets/themes/zenburn updated: 43dc527731...e627f1cb22
									
								
							
							
								
								
									
										108
									
								
								build.rs
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								build.rs
									
									
									
									
									
								
							| @@ -1,108 +0,0 @@ | ||||
| // TODO: Re-enable generation of shell completion files (below) when clap 3 is out. | ||||
| // For more details, see https://github.com/sharkdp/bat/issues/372 | ||||
|  | ||||
| // For bat-as-a-library, no build script is required. The build script is for | ||||
| // the manpage and completions, which are only relevant to the bat application. | ||||
| #[cfg(not(feature = "application"))] | ||||
| fn main() {} | ||||
|  | ||||
| #[cfg(feature = "application")] | ||||
| fn main() -> Result<(), Box<dyn std::error::Error>> { | ||||
|     use std::collections::HashMap; | ||||
|     use std::error::Error; | ||||
|     use std::fs; | ||||
|     use std::path::Path; | ||||
|  | ||||
|     // Read environment variables. | ||||
|     let project_name = option_env!("PROJECT_NAME").unwrap_or("bat"); | ||||
|     let executable_name = option_env!("PROJECT_EXECUTABLE").unwrap_or(project_name); | ||||
|     let executable_name_uppercase = executable_name.to_uppercase(); | ||||
|     static PROJECT_VERSION: &str = env!("CARGO_PKG_VERSION"); | ||||
|  | ||||
|     /// Generates a file from a template. | ||||
|     fn template( | ||||
|         variables: &HashMap<&str, &str>, | ||||
|         in_file: &str, | ||||
|         out_file: impl AsRef<Path>, | ||||
|     ) -> Result<(), Box<dyn Error>> { | ||||
|         let mut content = fs::read_to_string(in_file)?; | ||||
|  | ||||
|         for (variable_name, value) in variables { | ||||
|             // Replace {{variable_name}} by the value | ||||
|             let pattern = format!("{{{{{variable_name}}}}}", variable_name = variable_name); | ||||
|             content = content.replace(&pattern, value); | ||||
|         } | ||||
|  | ||||
|         fs::write(out_file, content)?; | ||||
|         Ok(()) | ||||
|     } | ||||
|  | ||||
|     let mut variables = HashMap::new(); | ||||
|     variables.insert("PROJECT_NAME", project_name); | ||||
|     variables.insert("PROJECT_EXECUTABLE", executable_name); | ||||
|     variables.insert("PROJECT_EXECUTABLE_UPPERCASE", &executable_name_uppercase); | ||||
|     variables.insert("PROJECT_VERSION", PROJECT_VERSION); | ||||
|  | ||||
|     let out_dir_env = std::env::var_os("BAT_ASSETS_GEN_DIR") | ||||
|         .or_else(|| std::env::var_os("OUT_DIR")) | ||||
|         .expect("BAT_ASSETS_GEN_DIR or OUT_DIR to be set in build.rs"); | ||||
|     let out_dir = Path::new(&out_dir_env); | ||||
|  | ||||
|     fs::create_dir_all(out_dir.join("assets/manual")).unwrap(); | ||||
|     fs::create_dir_all(out_dir.join("assets/completions")).unwrap(); | ||||
|  | ||||
|     template( | ||||
|         &variables, | ||||
|         "assets/manual/bat.1.in", | ||||
|         out_dir.join("assets/manual/bat.1"), | ||||
|     )?; | ||||
|     template( | ||||
|         &variables, | ||||
|         "assets/completions/bat.bash.in", | ||||
|         out_dir.join("assets/completions/bat.bash"), | ||||
|     )?; | ||||
|     template( | ||||
|         &variables, | ||||
|         "assets/completions/bat.fish.in", | ||||
|         out_dir.join("assets/completions/bat.fish"), | ||||
|     )?; | ||||
|     template( | ||||
|         &variables, | ||||
|         "assets/completions/_bat.ps1.in", | ||||
|         out_dir.join("assets/completions/_bat.ps1"), | ||||
|     )?; | ||||
|     template( | ||||
|         &variables, | ||||
|         "assets/completions/bat.zsh.in", | ||||
|         out_dir.join("assets/completions/bat.zsh"), | ||||
|     )?; | ||||
|  | ||||
|     Ok(()) | ||||
| } | ||||
|  | ||||
| // #[macro_use] | ||||
| // extern crate clap; | ||||
|  | ||||
| // use clap::Shell; | ||||
| // use std::fs; | ||||
|  | ||||
| // include!("src/clap_app.rs"); | ||||
|  | ||||
| // const BIN_NAME: &str = "bat"; | ||||
|  | ||||
| // fn main() { | ||||
| //     let outdir = std::env::var_os("SHELL_COMPLETIONS_DIR").or(std::env::var_os("OUT_DIR")); | ||||
|  | ||||
| //     let outdir = match outdir { | ||||
| //         None => return, | ||||
| //         Some(outdir) => outdir, | ||||
| //     }; | ||||
|  | ||||
| //     fs::create_dir_all(&outdir).unwrap(); | ||||
|  | ||||
| //     let mut app = build_app(true); | ||||
| //     app.gen_completions(BIN_NAME, Shell::Bash, &outdir); | ||||
| //     app.gen_completions(BIN_NAME, Shell::Fish, &outdir); | ||||
| //     app.gen_completions(BIN_NAME, Shell::Zsh, &outdir); | ||||
| //     app.gen_completions(BIN_NAME, Shell::PowerShell, &outdir); | ||||
| // } | ||||
							
								
								
									
										67
									
								
								build/application.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								build/application.rs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | ||||
| use std::{env, fs, path::PathBuf}; | ||||
|  | ||||
| use crate::util::render_template; | ||||
|  | ||||
| /// Generate manpage and shell completions for the bat application. | ||||
| pub fn gen_man_and_comp() -> anyhow::Result<()> { | ||||
|     println!("cargo:rerun-if-changed=assets/manual/"); | ||||
|     println!("cargo:rerun-if-changed=assets/completions/"); | ||||
|  | ||||
|     println!("cargo:rerun-if-env-changed=PROJECT_NAME"); | ||||
|     println!("cargo:rerun-if-env-changed=PROJECT_EXECUTABLE"); | ||||
|     println!("cargo:rerun-if-env-changed=CARGO_PKG_VERSION"); | ||||
|     println!("cargo:rerun-if-env-changed=BAT_ASSETS_GEN_DIR"); | ||||
|  | ||||
|     // Read environment variables. | ||||
|     let project_name = env::var("PROJECT_NAME").unwrap_or("bat".into()); | ||||
|     let executable_name = env::var("PROJECT_EXECUTABLE").unwrap_or(project_name.clone()); | ||||
|     let executable_name_uppercase = executable_name.to_uppercase(); | ||||
|     let project_version = env::var("CARGO_PKG_VERSION")?; | ||||
|  | ||||
|     let variables = [ | ||||
|         ("PROJECT_NAME", project_name), | ||||
|         ("PROJECT_EXECUTABLE", executable_name), | ||||
|         ("PROJECT_EXECUTABLE_UPPERCASE", executable_name_uppercase), | ||||
|         ("PROJECT_VERSION", project_version), | ||||
|     ] | ||||
|     .into_iter() | ||||
|     .collect(); | ||||
|  | ||||
|     let Some(out_dir) = env::var_os("BAT_ASSETS_GEN_DIR") | ||||
|         .or_else(|| env::var_os("OUT_DIR")) | ||||
|         .map(PathBuf::from) | ||||
|     else { | ||||
|         anyhow::bail!("BAT_ASSETS_GEN_DIR or OUT_DIR should be set for build.rs"); | ||||
|     }; | ||||
|  | ||||
|     fs::create_dir_all(out_dir.join("assets/manual")).unwrap(); | ||||
|     fs::create_dir_all(out_dir.join("assets/completions")).unwrap(); | ||||
|  | ||||
|     render_template( | ||||
|         &variables, | ||||
|         "assets/manual/bat.1.in", | ||||
|         out_dir.join("assets/manual/bat.1"), | ||||
|     )?; | ||||
|     render_template( | ||||
|         &variables, | ||||
|         "assets/completions/bat.bash.in", | ||||
|         out_dir.join("assets/completions/bat.bash"), | ||||
|     )?; | ||||
|     render_template( | ||||
|         &variables, | ||||
|         "assets/completions/bat.fish.in", | ||||
|         out_dir.join("assets/completions/bat.fish"), | ||||
|     )?; | ||||
|     render_template( | ||||
|         &variables, | ||||
|         "assets/completions/_bat.ps1.in", | ||||
|         out_dir.join("assets/completions/_bat.ps1"), | ||||
|     )?; | ||||
|     render_template( | ||||
|         &variables, | ||||
|         "assets/completions/bat.zsh.in", | ||||
|         out_dir.join("assets/completions/bat.zsh"), | ||||
|     )?; | ||||
|  | ||||
|     Ok(()) | ||||
| } | ||||
							
								
								
									
										14
									
								
								build/main.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								build/main.rs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| #[cfg(feature = "application")] | ||||
| mod application; | ||||
| mod util; | ||||
|  | ||||
| fn main() -> anyhow::Result<()> { | ||||
|     // only watch manually-designated files | ||||
|     // see: https://doc.rust-lang.org/cargo/reference/build-scripts.html#rerun-if-changed | ||||
|     println!("cargo:rerun-if-changed=build/"); | ||||
|  | ||||
|     #[cfg(feature = "application")] | ||||
|     application::gen_man_and_comp()?; | ||||
|  | ||||
|     Ok(()) | ||||
| } | ||||
							
								
								
									
										21
									
								
								build/util.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								build/util.rs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| #![allow(dead_code)] | ||||
|  | ||||
| use std::{collections::HashMap, fs, path::Path}; | ||||
|  | ||||
| /// Generates a file from a template. | ||||
| pub fn render_template( | ||||
|     variables: &HashMap<&str, String>, | ||||
|     in_file: &str, | ||||
|     out_file: impl AsRef<Path>, | ||||
| ) -> anyhow::Result<()> { | ||||
|     let mut content = fs::read_to_string(in_file)?; | ||||
|  | ||||
|     for (variable_name, value) in variables { | ||||
|         // Replace {{variable_name}} by the value | ||||
|         let pattern = format!("{{{{{variable_name}}}}}"); | ||||
|         content = content.replace(&pattern, value); | ||||
|     } | ||||
|  | ||||
|     fs::write(out_file, content)?; | ||||
|     Ok(()) | ||||
| } | ||||
| @@ -181,7 +181,7 @@ man 2 select | ||||
|  | ||||
| ## インストール | ||||
|  | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
|  | ||||
| ###  On Ubuntu (`apt` を使用) | ||||
| *... や他のDebianベースのLinuxディストリビューション* | ||||
| @@ -219,7 +219,7 @@ apk add bat | ||||
|  | ||||
| ###  On Arch Linux | ||||
|  | ||||
| [Arch Linuxの公式リソース](https://www.archlinux.org/packages/community/x86_64/bat/) | ||||
| [Arch Linuxの公式リソース](https://www.archlinux.org/packages/extra/x86_64/bat/) | ||||
| からインストールできます。 | ||||
|  | ||||
| ```bash | ||||
|   | ||||
| @@ -214,7 +214,7 @@ man 2 select | ||||
|  | ||||
| ## 설치 | ||||
|  | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
|  | ||||
| ### Ubuntu에서 (`apt` 사용) | ||||
| *... 그리고 다른 Debian 기반의 Linux 배포판들에서.* | ||||
| @@ -264,7 +264,7 @@ apk add bat | ||||
| ### Arch Linux에서 | ||||
|  | ||||
| 공식 소스를 통해 | ||||
| [`bat` 패키지](https://www.archlinux.org/packages/community/x86_64/bat/)를 | ||||
| [`bat` 패키지](https://www.archlinux.org/packages/extra/x86_64/bat/)를 | ||||
| 설치할 수 있습니다: | ||||
|  | ||||
| ```bash | ||||
|   | ||||
| @@ -12,7 +12,7 @@ | ||||
|   <a href="#установка">Установка</a> • | ||||
|   <a href="#кастомизация">Кастомизация</a> • | ||||
|   <a href="#цели-и-альтернативы">Цели и альтернативы </a><br> | ||||
|   [<a href="../README.md">English] | ||||
|   [<a href="../README.md">English</a>] | ||||
|   [<a href="README-zh.md">中文</a>] | ||||
|   [<a href="README-ja.md">日本語</a>] | ||||
|   [<a href="README-ko.md">한국어</a>] | ||||
| @@ -160,7 +160,7 @@ man 2 select | ||||
|  | ||||
| ## Установка | ||||
|  | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
|  | ||||
| ### Ubuntu (с помощью `apt`) | ||||
| *... и другие дистрибутивы основанные на Debian.* | ||||
| @@ -201,7 +201,7 @@ apk add bat | ||||
|  | ||||
| ### Arch Linux | ||||
|  | ||||
| Вы можете установить [`bat`](https://www.archlinux.org/packages/community/x86_64/bat/) из официального источника: | ||||
| Вы можете установить [`bat`](https://www.archlinux.org/packages/extra/x86_64/bat/) из официального источника: | ||||
|  | ||||
| ```bash | ||||
| pacman -S bat | ||||
|   | ||||
| @@ -191,7 +191,7 @@ man 2 select | ||||
|  | ||||
| ## 安装 | ||||
|  | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
| [](https://repology.org/project/bat-cat/versions) | ||||
|  | ||||
| ### Ubuntu (使用 `apt`) | ||||
|  | ||||
| @@ -232,7 +232,7 @@ apk add bat | ||||
|  | ||||
| ### Arch Linux | ||||
|  | ||||
| 你可以用下面下列命令从官方源中安装[`bat`包](https://www.archlinux.org/packages/community/x86_64/bat/): | ||||
| 你可以用下面下列命令从官方源中安装[`bat`包](https://www.archlinux.org/packages/extra/x86_64/bat/): | ||||
|  | ||||
| ```bash | ||||
| pacman -S bat | ||||
|   | ||||
| @@ -9,7 +9,16 @@ | ||||
| - [ ] Update the version and the min. supported Rust version in `README.md` and | ||||
|       `doc/README-*.md`. Check with | ||||
|       `git grep -i -e 'rust.*1\.' -e '1\..*rust' | grep README | grep -v tests/`. | ||||
| - [ ] Update `CHANGELOG.md`. Introduce a section for the new release. | ||||
|  | ||||
| ## CHANGELOG.md updates | ||||
|  | ||||
| - [ ] Go to https://github.com/sharkdp/bat/releases/new, click "Choose a tag", | ||||
|   type the name of the tag that will be created later, click "Generate release | ||||
|   notes". DO NOT ACTUALLY CREATE ANY RELEASE IN THIS STEP. | ||||
| - [ ] Compare current `CHANGELOG.md` with auto-generated release notes and add | ||||
|   missing entries. Expect in particular dependabot PRs to not be in | ||||
|   `CHANGELOG.md` since they are [auto-merged] if CI passes. | ||||
| - [ ] Introduce a section for the new release and perform final touch-ups. | ||||
|  | ||||
| ## Update syntaxes and themes (build assets) | ||||
|  | ||||
| @@ -71,3 +80,5 @@ | ||||
|  | ||||
|  | ||||
| ``` | ||||
|  | ||||
| [auto-merged]: https://github.com/sharkdp/bat/blob/master/.github/workflows/Auto-merge-dependabot-PRs.yml | ||||
|   | ||||
| @@ -29,6 +29,10 @@ fn is_truecolor_terminal() -> bool { | ||||
|         .unwrap_or(false) | ||||
| } | ||||
|  | ||||
| pub fn env_no_color() -> bool { | ||||
|     env::var_os("NO_COLOR").is_some_and(|x| !x.is_empty()) | ||||
| } | ||||
|  | ||||
| pub struct App { | ||||
|     pub matches: ArgMatches, | ||||
|     interactive_output: bool, | ||||
| @@ -207,7 +211,7 @@ impl App { | ||||
|                 || match self.matches.get_one::<String>("color").map(|s| s.as_str()) { | ||||
|                     Some("always") => true, | ||||
|                     Some("never") => false, | ||||
|                     Some("auto") => env::var_os("NO_COLOR").is_none() && self.interactive_output, | ||||
|                     Some("auto") => !env_no_color() && self.interactive_output, | ||||
|                     _ => unreachable!("other values for --color are not allowed"), | ||||
|                 }, | ||||
|             paging_mode, | ||||
|   | ||||
| @@ -19,7 +19,7 @@ static VERSION: Lazy<String> = Lazy::new(|| { | ||||
| }); | ||||
|  | ||||
| pub fn build_app(interactive_output: bool) -> Command { | ||||
|     let color_when = if interactive_output && env::var_os("NO_COLOR").is_none() { | ||||
|     let color_when = if interactive_output && !crate::app::env_no_color() { | ||||
|         ColorChoice::Auto | ||||
|     } else { | ||||
|         ColorChoice::Never | ||||
|   | ||||
| @@ -91,31 +91,27 @@ pub fn replace_nonprintable( | ||||
|                     }); | ||||
|                     line_idx = 0; | ||||
|                 } | ||||
|                 // carriage return | ||||
|                 '\x0D' => output.push_str(match nonprintable_notation { | ||||
|                     NonprintableNotation::Caret => "^M", | ||||
|                     NonprintableNotation::Unicode => "␍", | ||||
|                 }), | ||||
|                 // null | ||||
|                 '\x00' => output.push_str(match nonprintable_notation { | ||||
|                     NonprintableNotation::Caret => "^@", | ||||
|                     NonprintableNotation::Unicode => "␀", | ||||
|                 }), | ||||
|                 // bell | ||||
|                 '\x07' => output.push_str(match nonprintable_notation { | ||||
|                     NonprintableNotation::Caret => "^G", | ||||
|                     NonprintableNotation::Unicode => "␇", | ||||
|                 }), | ||||
|                 // backspace | ||||
|                 '\x08' => output.push_str(match nonprintable_notation { | ||||
|                     NonprintableNotation::Caret => "^H", | ||||
|                     NonprintableNotation::Unicode => "␈", | ||||
|                 }), | ||||
|                 // escape | ||||
|                 '\x1B' => output.push_str(match nonprintable_notation { | ||||
|                     NonprintableNotation::Caret => "^[", | ||||
|                     NonprintableNotation::Unicode => "␛", | ||||
|                 }), | ||||
|                 // ASCII control characters | ||||
|                 '\x00'..='\x1F' => { | ||||
|                     let c = u32::from(chr); | ||||
|  | ||||
|                     match nonprintable_notation { | ||||
|                         NonprintableNotation::Caret => { | ||||
|                             let caret_character = char::from_u32(0x40 + c).unwrap(); | ||||
|                             write!(output, "^{caret_character}").ok(); | ||||
|                         } | ||||
|  | ||||
|                         NonprintableNotation::Unicode => { | ||||
|                             let replacement_symbol = char::from_u32(0x2400 + c).unwrap(); | ||||
|                             output.push(replacement_symbol) | ||||
|                         } | ||||
|                     } | ||||
|                 } | ||||
|                 // delete | ||||
|                 '\x7F' => match nonprintable_notation { | ||||
|                     NonprintableNotation::Caret => output.push_str("^?"), | ||||
|                     NonprintableNotation::Unicode => output.push('\u{2421}'), | ||||
|                 }, | ||||
|                 // printable ASCII | ||||
|                 c if c.is_ascii_alphanumeric() | ||||
|                     || c.is_ascii_punctuation() | ||||
|   | ||||
							
								
								
									
										9
									
								
								tests/benchmarks/run-benchmarks.sh
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								tests/benchmarks/run-benchmarks.sh
									
									
									
									
										vendored
									
									
								
							| @@ -49,7 +49,8 @@ REPORT="$RESULT_DIR/report.md" | ||||
| TARGET_DIR="$(get_cargo_target_dir)" | ||||
| TARGET_RELEASE="${TARGET_DIR}/release/bat" | ||||
|  | ||||
| WARMUP_COUNT=3 | ||||
| : ${WARMUP_COUNT:=3} | ||||
| : ${RUN_COUNT:=10} | ||||
|  | ||||
| # Determine which target to benchmark. | ||||
| BAT='' | ||||
| @@ -88,6 +89,7 @@ hyperfine \ | ||||
| 	"$(printf "%q" "$BAT") --no-config" \ | ||||
| 	--command-name "bat" \ | ||||
| 	--warmup "$WARMUP_COUNT" \ | ||||
|     --runs "$RUN_COUNT" \ | ||||
|     --export-markdown "$RESULT_DIR/startup-time.md" \ | ||||
|     --export-json "$RESULT_DIR/startup-time.json" | ||||
| cat "$RESULT_DIR/startup-time.md" >> "$REPORT" | ||||
| @@ -98,6 +100,7 @@ hyperfine \ | ||||
| 	"$(printf "%q" "$BAT") --no-config --color=always startup-time-src/small-CpuInfo-file.cpuinfo" \ | ||||
| 	--command-name "bat … small-CpuInfo-file.cpuinfo" \ | ||||
| 	--warmup "$WARMUP_COUNT" \ | ||||
|     --runs "$RUN_COUNT" \ | ||||
|     --export-markdown "$RESULT_DIR/startup-time-with-syntax-highlighting.md" \ | ||||
|     --export-json "$RESULT_DIR/startup-time-with-syntax-highlighting.json" | ||||
| cat "$RESULT_DIR/startup-time-with-syntax-highlighting.md" >> "$REPORT" | ||||
| @@ -108,6 +111,7 @@ hyperfine \ | ||||
| 	"$(printf "%q" "$BAT") --no-config --color=always startup-time-src/small-Markdown-file.md" \ | ||||
| 	--command-name "bat … small-Markdown-file.md" \ | ||||
| 	--warmup "$WARMUP_COUNT" \ | ||||
|     --runs "$RUN_COUNT" \ | ||||
|     --export-markdown "$RESULT_DIR/startup-time-with-syntax-with-dependencies.md" \ | ||||
|     --export-json "$RESULT_DIR/startup-time-with-syntax-with-dependencies.json" | ||||
| cat "$RESULT_DIR/startup-time-with-syntax-with-dependencies.md" >> "$REPORT" | ||||
| @@ -118,6 +122,7 @@ hyperfine \ | ||||
| 	"$(printf "%q" "$BAT") --no-config --language=txt --style=plain highlighting-speed-src/numpy_test_multiarray.py" \ | ||||
| 	--command-name 'bat … --language=txt numpy_test_multiarray.py' \ | ||||
| 	--warmup "$WARMUP_COUNT" \ | ||||
|     --runs "$RUN_COUNT" \ | ||||
|     --export-markdown "$RESULT_DIR/plain-text-speed.md" \ | ||||
|     --export-json "$RESULT_DIR/plain-text-speed.json" | ||||
| cat "$RESULT_DIR/plain-text-speed.md" >> "$REPORT" | ||||
| @@ -129,6 +134,7 @@ for wrap in character never; do | ||||
|  | ||||
| 		heading "Syntax highlighting speed --wrap=${wrap}: \`$filename\`" | ||||
| 		hyperfine --warmup "$WARMUP_COUNT" \ | ||||
|     		--runs "$RUN_COUNT" \ | ||||
| 			"$(printf "%q" "$BAT") --no-config --style=full --color=always --wrap=${wrap} --terminal-width=80 '$SRC'" \ | ||||
| 			--command-name "bat … ${filename}" \ | ||||
| 			--export-markdown "$RESULT_DIR/syntax-highlighting-speed-${filename}.md" \ | ||||
| @@ -143,6 +149,7 @@ hyperfine \ | ||||
| 	"$(printf "%q" "$BAT") --no-config --language=txt --style=plain many-small-files/*.txt" \ | ||||
| 	--command-name 'bat … --language=txt *.txt' \ | ||||
| 	--warmup "$WARMUP_COUNT" \ | ||||
|     --runs "$RUN_COUNT" \ | ||||
|     --export-markdown "$RESULT_DIR/many-small-files-speed.md" \ | ||||
|     --export-json "$RESULT_DIR/many-small-files-speed.json" | ||||
| cat "$RESULT_DIR/many-small-files-speed.md" >> "$REPORT" | ||||
|   | ||||
							
								
								
									
										
											BIN
										
									
								
								tests/examples/control_characters.txt
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								tests/examples/control_characters.txt
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										53
									
								
								tests/github-actions.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								tests/github-actions.rs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,53 @@ | ||||
| #[test] | ||||
| fn all_jobs_not_missing_any_jobs() { | ||||
|     let yaml: serde_yaml::Value = | ||||
|         serde_yaml::from_reader(std::fs::File::open(".github/workflows/CICD.yml").unwrap()) | ||||
|             .unwrap(); | ||||
|     let jobs = yaml.get("jobs").unwrap(); | ||||
|  | ||||
|     // Get all jobs that all-jobs depends on: | ||||
|     // | ||||
|     //   jobs: | ||||
|     //     all-jobs: | ||||
|     //       needs: | ||||
|     //         - this | ||||
|     //         - list | ||||
|     //         - ... | ||||
|     let actual = jobs | ||||
|         .get("all-jobs") | ||||
|         .unwrap() | ||||
|         .get("needs") | ||||
|         .unwrap() | ||||
|         .as_sequence() | ||||
|         .unwrap(); | ||||
|  | ||||
|     // Get all jobs used in CI, except the ones we want to ignore: | ||||
|     // | ||||
|     //   jobs: | ||||
|     //     this: ... | ||||
|     //     list: ... | ||||
|     //     ... | ||||
|     let exceptions = [ | ||||
|         "all-jobs", // 'all-jobs' should not reference itself | ||||
|         "winget",   // only used when publishing a release | ||||
|     ]; | ||||
|     let expected = jobs | ||||
|         .as_mapping() | ||||
|         .unwrap() | ||||
|         .keys() | ||||
|         .filter_map(|k| { | ||||
|             if exceptions.contains(&k.as_str().unwrap_or_default()) { | ||||
|                 None | ||||
|             } else { | ||||
|                 Some(k) | ||||
|             } | ||||
|         }) | ||||
|         .map(ToOwned::to_owned) | ||||
|         .collect::<Vec<_>>(); | ||||
|  | ||||
|     // Make sure they match | ||||
|     assert_eq!( | ||||
|         *actual, expected, | ||||
|         "`all-jobs` should depend on all other jobs" | ||||
|     ); | ||||
| } | ||||
| @@ -1728,6 +1728,25 @@ fn show_all_with_caret_notation() { | ||||
|         .assert() | ||||
|         .stdout("hello·world^J\n├──┤^M^@^G^H^[") | ||||
|         .stderr(""); | ||||
|  | ||||
|     bat() | ||||
|         .arg("--show-all") | ||||
|         .arg("--nonprintable-notation=caret") | ||||
|         .arg("control_characters.txt") | ||||
|         .assert() | ||||
|         .stdout("^@^A^B^C^D^E^F^G^H├─┤^J\n^K^L^M^N^O^P^Q^R^S^T^U^V^W^X^Y^Z^[^\\^]^^^_^?") | ||||
|         .stderr(""); | ||||
| } | ||||
|  | ||||
| #[test] | ||||
| fn show_all_with_unicode() { | ||||
|     bat() | ||||
|         .arg("--show-all") | ||||
|         .arg("--nonprintable-notation=unicode") | ||||
|         .arg("control_characters.txt") | ||||
|         .assert() | ||||
|         .stdout("␀␁␂␃␄␅␆␇␈├─┤␊\n␋␌␍␎␏␐␑␒␓␔␕␖␗␘␙␚␛␜␝␞␟␡") | ||||
|         .stderr(""); | ||||
| } | ||||
|  | ||||
| #[test] | ||||
|   | ||||
							
								
								
									
										32
									
								
								tests/syntax-tests/highlighted/JQ/sample.jq
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										32
									
								
								tests/syntax-tests/highlighted/JQ/sample.jq
									
									
									
									
										vendored
									
									
								
							| @@ -1,31 +1,31 @@ | ||||
| [38;2;249;38;114mimport[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116m../imported-file[0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242m;[0m | ||||
|  | ||||
| [38;2;117;113;94m#[0m[38;2;117;113;94m With Comments ![0m | ||||
| [38;2;249;38;114mdef[0m[38;2;248;248;242m [0m[38;2;166;226;46mweird[0m[38;2;248;248;242m([0m[3;38;2;253;151;31m$a[0m[38;2;248;248;242m; [0m[3;38;2;253;151;31m$b[0m[38;2;248;248;242m; [0m[3;38;2;253;151;31m$c[0m[38;2;248;248;242m)[0m[38;2;248;248;242m:[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m[ [0m[38;2;255;255;255m$a[0m[38;2;248;248;242m, [0m[38;2;255;255;255m$b[0m[38;2;248;248;242m, [0m[38;2;255;255;255m$c[0m[38;2;248;248;242m ][0m[38;2;248;248;242m | [0m[38;2;102;217;239mtranspose[0m[38;2;248;248;242m | [0m[38;2;249;38;114mreduce[0m[38;2;248;248;242m .[0m[38;2;248;248;242m[][0m[38;2;248;248;242m[][0m[38;2;248;248;242m [0m[38;2;249;38;114mas[0m[38;2;248;248;242m [0m[38;2;255;255;255m$item[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m | ||||
| [38;2;248;248;242m		[0m[38;2;248;248;242m[][0m[38;2;248;248;242m;[0m | ||||
| [38;2;248;248;242m		. + [0m[38;2;255;255;255m$item[0m[38;2;248;248;242m.property[0m | ||||
| [38;2;248;248;242m	)[0m | ||||
| [38;2;249;38;114mdef[0m[38;2;248;248;242m [0m[38;2;166;226;46mweird[0m[38;2;248;248;242m([0m[3;38;2;253;151;31m$a[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[3;38;2;253;151;31m$b[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[3;38;2;253;151;31m$c[0m[38;2;248;248;242m)[0m[38;2;248;248;242m:[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m[[0m[38;2;248;248;242m [0m[38;2;255;255;255m$[0m[38;2;255;255;255ma[0m[38;2;248;248;242m, [0m[38;2;255;255;255m$[0m[38;2;255;255;255mb[0m[38;2;248;248;242m, [0m[38;2;255;255;255m$[0m[38;2;255;255;255mc[0m[38;2;248;248;242m [0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m[38;2;248;248;242m [0m[38;2;102;217;239mtranspose[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m[38;2;248;248;242m [0m[38;2;249;38;114mreduce[0m[38;2;248;248;242m [0m[38;2;248;248;242m.[0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114mas[0m[38;2;248;248;242m [0m[38;2;255;255;255m$[0m[38;2;255;255;255mitem[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m | ||||
| [38;2;248;248;242m		[0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m;[0m | ||||
| [38;2;248;248;242m		[0m[38;2;248;248;242m.[0m[38;2;248;248;242m [0m[38;2;249;38;114m+[0m[38;2;248;248;242m [0m[38;2;255;255;255m$[0m[38;2;255;255;255mitem[0m[38;2;248;248;242m.[0m[38;2;248;248;242mproperty[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m)[0m | ||||
| [38;2;248;248;242m;[0m | ||||
|  | ||||
| [38;2;248;248;242m. | weird [0m[38;2;248;248;242m(.a; .b; .c)[0m[38;2;248;248;242m |[0m | ||||
| [38;2;248;248;242m.[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m[38;2;248;248;242m weird [0m[38;2;248;248;242m([0m[38;2;248;248;242m.[0m[38;2;248;248;242ma[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;248;248;242m.[0m[38;2;248;248;242mb[0m[38;2;248;248;242m;[0m[38;2;248;248;242m [0m[38;2;248;248;242m.[0m[38;2;248;248;242mc[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m | ||||
|  | ||||
| [38;2;248;248;242m([0m | ||||
|  | ||||
| [38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;248;248;242m(. | [0m[38;2;102;217;239mcontains[0m[38;2;248;248;242m([0m[38;2;230;219;116m"[0m[38;2;230;219;116mnever[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m[38;2;248;248;242m )[0m[38;2;248;248;242m [0m[38;2;249;38;114mthen[0m | ||||
| [38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242m.[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m[38;2;248;248;242m [0m[38;2;102;217;239mcontains[0m[38;2;248;248;242m([0m[38;2;230;219;116m"[0m[38;2;230;219;116mnever[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114mthen[0m | ||||
| [38;2;248;248;242m	[0m[38;2;230;219;116m"[0m[38;2;230;219;116mWhy yes[0m[38;2;230;219;116m"[0m | ||||
| [38;2;249;38;114melse[0m | ||||
| [38;2;248;248;242m	[0m[38;2;190;132;255m12.23[0m | ||||
| [38;2;249;38;114mend[0m | ||||
|  | ||||
| [38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114mas[0m[38;2;248;248;242m [0m[38;2;255;255;255m$never[0m[38;2;248;248;242m |[0m | ||||
| [38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114mas[0m[38;2;248;248;242m [0m[38;2;255;255;255m$[0m[38;2;255;255;255mnever[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m | ||||
|  | ||||
| [38;2;248;248;242m{[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mhello[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mwhy[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mbecause[0m[38;2;230;219;116m"[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mhello[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m( weird | [0m[38;2;102;217;239mascii_upcase[0m[38;2;248;248;242m )[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mformat_eg[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m( . | [0m[38;2;190;132;255m@json[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mMy json string [0m[38;2;190;132;255m\([0m[38;2;248;248;242m . | this | part | just | white | ascii_upcase | transpose[0m[38;2;190;132;255m)[0m[38;2;230;219;116m"[0m[38;2;248;248;242m )[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mnever[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;255;255;255m$never[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mhello[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242m weird [0m[38;2;249;38;114m|[0m[38;2;248;248;242m [0m[38;2;102;217;239mascii_upcase[0m[38;2;248;248;242m [0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mformat_eg[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242m [0m[38;2;248;248;242m.[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m[38;2;248;248;242m [0m[38;2;190;132;255m@json[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mMy json string [0m[38;2;190;132;255m\([0m[38;2;248;248;242m . | this | part | just | white | ascii_upcase | transpose[0m[38;2;190;132;255m)[0m[38;2;230;219;116m"[0m[38;2;248;248;242m [0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;166;226;46mnever[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;255;255;255m$[0m[38;2;255;255;255mnever[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;230;219;116m"[0m[38;2;230;219;116mliteral_key[0m[38;2;230;219;116m"[0m[38;2;248;248;242m:[0m[38;2;248;248;242m literal_value[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;230;219;116m"[0m[38;2;230;219;116mthis[0m[38;2;230;219;116m"[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m12.1e12[0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m	[0m[38;2;230;219;116m"[0m[38;2;230;219;116mpart[0m[38;2;230;219;116m"[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116malmost[0m[38;2;230;219;116m"[0m | ||||
| @@ -38,8 +38,8 @@ | ||||
| [38;2;248;248;242m				[0m[38;2;166;226;46msimilar[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mbut not quite[0m[38;2;230;219;116m"[0m | ||||
| [38;2;248;248;242m			[0m[38;2;248;248;242m}[0m | ||||
| [38;2;248;248;242m		[0m[38;2;248;248;242m}[0m | ||||
| [38;2;248;248;242m	][0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m}[0m[38;2;248;248;242m | [0m[38;2;248;248;242m([0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m][0m[38;2;248;248;242m,[0m | ||||
| [38;2;248;248;242m}[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m | ||||
| [38;2;248;248;242m	[0m | ||||
| [38;2;248;248;242m	[0m[38;2;117;113;94m#[0m[38;2;117;113;94m And with very basic brace matching[0m | ||||
| [38;2;248;248;242m	[0m | ||||
| @@ -47,13 +47,13 @@ | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;240m][0m[38;2;248;248;242m	[0m | ||||
| [38;2;248;248;242m	[0m | ||||
| [38;2;248;248;242m	[0m[38;2;117;113;94m#[0m[38;2;117;113;94m Other invalid ends[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m( [0m[38;2;248;248;242m[ [0m[38;2;248;248;240m}[0m[38;2;248;248;242m [0m[38;2;248;248;240m][0m[38;2;248;248;242m )[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m([0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;248;248;242m [0m[38;2;248;248;240m}[0m[38;2;248;248;242m [0m[38;2;248;248;240m][0m[38;2;248;248;242m )[0m | ||||
|  | ||||
| [38;2;248;248;242m	[0m[38;2;117;113;94m#[0m[38;2;117;113;94m A "valid" sequence[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m( [0m[38;2;248;248;242m[  [0m[38;2;248;248;242m{ [0m[38;2;166;226;46mkey[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m()[0m[38;2;248;248;242m [0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;166;226;46mother_key[0m[38;2;248;248;242m:[0m[38;2;248;248;242m( [0m[38;2;248;248;242m[ [0m[38;2;248;248;242m[][0m[38;2;248;248;242m  [0m[38;2;248;248;242m[[0m[38;2;248;248;242m[][0m[38;2;248;248;242m][0m[38;2;248;248;242m ][0m[38;2;248;248;242m  )[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;166;226;46mgaga[0m[38;2;248;248;242m }[0m[38;2;248;248;242m  ][0m[38;2;248;248;242m )[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m([0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;248;248;242m  [0m[38;2;248;248;242m{[0m[38;2;248;248;242m [0m[38;2;166;226;46mkey[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;166;226;46mother_key[0m[38;2;248;248;242m:[0m[38;2;248;248;242m([0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m  [0m[38;2;248;248;242m[[0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;248;248;242m][0m[38;2;248;248;242m  [0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;166;226;46mgaga[0m[38;2;248;248;242m [0m[38;2;248;248;242m}[0m[38;2;248;248;242m  [0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;248;248;242m)[0m | ||||
|  | ||||
| [38;2;248;248;242m	[0m[38;2;117;113;94m#[0m[38;2;117;113;94m A "invalid" sequence[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m( [0m[38;2;248;248;242m[  [0m[38;2;248;248;242m{ [0m[38;2;166;226;46mkey[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m()[0m[38;2;248;248;242m [0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;166;226;46mother_key[0m[38;2;248;248;242m:[0m[38;2;248;248;242m( [0m[38;2;248;248;242m[ [0m[38;2;248;248;242m[][0m[38;2;248;248;242m  [0m[38;2;248;248;242m[[0m[38;2;248;248;242m[][0m[38;2;248;248;242m ][0m[38;2;248;248;242m  [0m[38;2;248;248;240m)[0m[38;2;248;248;242m, gaga [0m[38;2;248;248;240m}[0m[38;2;248;248;242m  ] )[0m | ||||
| [38;2;248;248;242m	[0m[38;2;248;248;242m([0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;248;248;242m  [0m[38;2;248;248;242m{[0m[38;2;248;248;242m [0m[38;2;166;226;46mkey[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;166;226;46mother_key[0m[38;2;248;248;242m:[0m[38;2;248;248;242m([0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m  [0m[38;2;248;248;242m[[0m[38;2;248;248;242m[[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;248;248;242m][0m[38;2;248;248;242m  [0m[38;2;248;248;240m)[0m[38;2;248;248;242m, gaga [0m[38;2;248;248;240m}[0m[38;2;248;248;242m  ] )[0m | ||||
|  | ||||
| [38;2;248;248;242m	[0m[38;2;230;219;116m"[0m[38;2;230;219;116mA string[0m[38;2;190;132;255m\[0m[38;2;190;132;255mn[0m[38;2;230;219;116m whith escaped characters [0m[38;2;190;132;255m\[0m[38;2;190;132;255m"[0m[38;2;230;219;116m because we can[0m[38;2;230;219;116m"[0m | ||||
| [38;2;248;248;242m)[0m | ||||
|   | ||||
| @@ -1,36 +1,36 @@ | ||||
| [38;2;166;226;46m␀[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{1}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{2}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{3}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{4}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{5}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{6}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␁[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␂[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␃[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␄[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␅[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␆[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;166;226;46m␇[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;166;226;46m␈[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;190;132;255m├──┤[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;249;38;114m␊[0m | ||||
| [38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{b}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{c}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␋[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␌[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{e}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{f}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{10}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{11}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{12}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{13}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{14}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{15}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{16}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{17}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{18}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{19}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{1a}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␎[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␏[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␐[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␑[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␒[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␓[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␔[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␕[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␖[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␗[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␘[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␙[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␚[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;166;226;46m␛[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{1c}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{1d}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{1e}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{1f}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␜[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␝[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␞[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␟[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;102;217;239m·[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m![0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m"[0m[38;2;249;38;114m␊[0m | ||||
| @@ -126,7 +126,7 @@ | ||||
| [38;2;248;248;242m|[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m~[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{7f}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;248;248;242m␡[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{80}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{81}[0m[38;2;249;38;114m␊[0m | ||||
| [38;2;117;113;94m\u{82}[0m[38;2;249;38;114m␊[0m | ||||
|   | ||||
| @@ -4,8 +4,8 @@ | ||||
| [38;2;248;248;242mUse '--help' instead of '-h' to see a more detailed version of the help text.[0m | ||||
|  | ||||
| [38;2;246;170;17mUSAGE:[0m | ||||
| [38;2;248;248;242m    bat [OPTIONS] [FILE]...[0m | ||||
| [38;2;248;248;242m    bat <SUBCOMMAND>[0m | ||||
| [38;2;248;248;242m    [0m[38;2;190;132;255mbat[0m[38;2;248;248;242m [OPTIONS] [FILE]...[0m | ||||
| [38;2;248;248;242m    [0m[38;2;190;132;255mbat[0m[38;2;248;248;242m <SUBCOMMAND>[0m | ||||
|  | ||||
| [38;2;246;170;17mARGS:[0m | ||||
| [38;2;248;248;242m    [0m[38;2;249;38;114m<FILE>...[0m[38;2;248;248;242m    File(s) to print / concatenate. Use '-' for standard input.[0m | ||||
|   | ||||
		Reference in New Issue
	
	Block a user