1
0
mirror of https://github.com/sharkdp/bat synced 2026-08-04 19:01:44 +00:00

Compare commits

..

1001 Commits

Author SHA1 Message Date
David Peter 8244eb8ef8 Experiment: remove CARGO_TEST_OPTIONS
In principle, this *could* work. `cargo cross` runs the tests via QEMU.
For integration tests, the only difficulty is that we run `bat` from
within the tests. But maybe this is handled by assert_cmd.
2021-08-22 16:31:41 +02:00
David Peter ff70a80741 Add statically linked binaries for ARM 2021-08-22 15:52:23 +02:00
David Peter ecdb17148d Use Ubuntu 20.04 instead of 18.04 2021-08-22 15:52:23 +02:00
David Peter 11bd523f7e Remove post-release section 2021-08-22 09:38:35 +02:00
David Peter 01fbedc246 Formatting 2021-08-22 09:38:35 +02:00
David Peter 05e4e1f2f2 Add refined version of release checklist 2021-08-22 09:38:35 +02:00
David Peter 20223ad77c Add old release checklist 2021-08-22 09:38:35 +02:00
a1346054 51edacb5eb style: trim excess whitespace 2021-08-21 23:07:37 +02:00
a1346054 5197ef9048 fix: spelling 2021-08-21 23:07:37 +02:00
a1346054 19678527e5 chore(find-slow-to-highlight-files.py): be explicit about using python3
In many distros, `python` no longer leads to anything, and instead
`python2` or `python3` need to be explicitly run.
2021-08-21 23:07:37 +02:00
a1346054 5d319dee94 style(create.sh): remove non-POSIX keyword 2021-08-21 23:07:37 +02:00
Ville Skyttä 43e1a11ad8 Make Package Control reference a link 2021-08-19 07:21:32 +02:00
Martin Nordholts ed09f90e5e Fix all lints that are new with Rust 1.54
They are all of the following type:
https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
2021-08-19 07:19:12 +02:00
Martin Nordholts cbd96237fd CICD: Add 'cargo fmt' check 2021-08-19 07:18:05 +02:00
Martin Nordholts f5c1cb2dff Run 'cargo fmt' 2021-08-19 07:18:05 +02:00
Keith Hall 5eb93a6eae Merge pull request #1800 from sharkdp/syslog_no_colon_after_process
Fix syslog syntax highlighting when no colon after "process"
2021-08-17 21:22:52 +03:00
Martin Nordholts 25fa577cd0 Make 'build-assets' an optional capability for application
Also structure features a bit more clever to avoid duplication of
feature dependency declarations.
2021-08-17 10:58:21 +02:00
Martin Nordholts deddc81426 src/assets.rs: Use ThemeSet::new() instead of BTreeMap::new() 2021-08-17 10:58:21 +02:00
Keith Hall 133b06e945 Fix syslog syntax highlighting when no colon after "process" 2021-08-16 22:15:39 +03:00
Mario Finelli 699f1e65cc Add slim syntax test 2021-08-16 06:16:53 +02:00
Mario Finelli 9ef87dab27 Convert tmLanguage into sublime-syntax 2021-08-16 06:16:53 +02:00
Mario Finelli 5125e9c941 Add support for ruby-slim syntax 2021-08-16 06:16:53 +02:00
Bill Risher 6c62ed5608 revamped integration test, made CHANGELOG changes 2021-08-14 22:02:58 +02:00
Bill Risher bf78288e9e feat(config): added recognition of $BAT_CONFIG_DIR 2021-08-14 22:02:58 +02:00
Keith Hall f8498b260b Merge pull request #1793 from scop/syslog-improvements
Syslog highlight improvements
2021-08-12 09:49:33 +03:00
Ville Skyttä 79f08588c6 Mention syslog highlight improvements in change log 2021-08-11 23:03:33 +03:00
Ville Skyttä 2d92a4dbb3 Allow colon in syslog loghost
Makes it work with IPv6 addresses.
2021-08-11 21:36:43 +03:00
Ville Skyttä f508ddf66d Allow period in syslog loghost
Makes it work with FQDN's and IPv4 addresses.
2021-08-11 16:43:04 +03:00
Ville Skyttä 02218c916c Allow period in syslog process name 2021-08-11 16:41:56 +03:00
Martin Nordholts 89217e0d58 Make --no-paging and --no-pager work again 2021-08-09 13:37:56 +02:00
Martin Nordholts cb4973987b Cargo.toml: Introduce 'quick-build-application' feature
Use it like this:

  cargo build --no-default-features --features quick-build-application

It reduces dependencies to build from 154 to 125, allowing quicker iteration
when developing the app.
2021-08-08 11:18:26 +02:00
Martin Nordholts 905902d811 bin: Allow to build without bugreport 2021-08-08 11:18:26 +02:00
Martin Nordholts c83e382eac Cargo.toml: Only build bugreport with the app 2021-08-08 11:18:26 +02:00
Martin Nordholts f6975e2acd Bump bugreport to 0.4.1 2021-08-08 11:18:26 +02:00
Martin Nordholts d8b813c0bf When returning a SyntaxReference, also return the SyntaxSet that contains it (#1776)
To improve startup performance, we will later load smaller `SyntaxSet`s instead
of one giant one. However, the current API assumes only one `SyntaxSet` is ever used,
and that that implicitly is the `SyntaxSet` from which returned `SyntaxReference`s
comes.

This change changes the API to reflect that `SyntaxSet` and `SyntaxReference`
are tightly coupled, and enables the use of several `SyntaxSet`.
2021-08-08 08:26:17 +02:00
Martin Nordholts 5236ed135e Fix typo in unreachable!(..) message for --wrap 2021-08-08 06:40:18 +02:00
Martin Nordholts 47d955a2ab Add code for analyzing dependencies between syntaxes
And also to generate independent SyntaxSets. This will later be used
to improve bat startup time.
2021-08-07 22:38:39 +02:00
Martin Nordholts bd797c75a4 integration_tests: Add diagnostic_sanity_check() 2021-08-07 20:07:46 +02:00
Keith Hall 05c11964fc add patch for Python syntax to help improve performance 2021-08-07 17:54:08 +02:00
Martin Nordholts 8ecd23eab4 Make --style docs reflect that 'full' is default
Closes #1742
2021-08-07 09:51:36 +02:00
Martin Nordholts 1ef0206f24 CHANGELOG.md: Highlight for vimrc and gvimrc files 2021-08-06 09:26:56 +02:00
dependabot[bot] 6694aa369e Bump assets/syntaxes/02_Extra/VimL from 7ebcaa1 to c91fe3a
Bumps [assets/syntaxes/02_Extra/VimL](https://github.com/SalGnt/Sublime-VimL) from `7ebcaa1` to `c91fe3a`.
- [Release notes](https://github.com/SalGnt/Sublime-VimL/releases)
- [Commits](https://github.com/SalGnt/Sublime-VimL/compare/7ebcaa1d987be059213f06bfc0833dcaea9e0b91...c91fe3ab027e60fa42330b2c0143880514ec65ed)

---
updated-dependencies:
- dependency-name: assets/syntaxes/02_Extra/VimL
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-06 09:26:56 +02:00
Martin Nordholts 0331d28ee4 cargo fmt 2021-08-05 20:21:18 +02:00
Layle | Luca 51c7eb7ac1 Included LLVM syntax highlighting submodule and added regression tests 2021-08-05 20:20:33 +02:00
Keith Hall 5516bcb839 Merge pull request #1779 from sharkdp/http-request-response-syntax-update
Bump assets/syntaxes/02_Extra/http-request-response from f58bffe to 93b9326
2021-08-04 09:47:34 +03:00
Keith Hall 056b966501 Bump assets/syntaxes/02_Extra/http-request-response from f58bffe to 93b9326 2021-08-03 23:07:55 +03:00
Martin Nordholts 28eca6a2be Use assert!(..) instead of assert_eq!(true, ..)
This fixes all of these lint warnings:
https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison

They only appear in recent versions of clippy. Not on our MSRV.
2021-08-02 22:35:50 +02:00
dependabot[bot] b7fd55242e Bump assert_cmd from 1.0.5 to 1.0.8
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 1.0.5 to 1.0.8.
- [Release notes](https://github.com/assert-rs/assert_cmd/releases)
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/assert_cmd/compare/v1.0.5...v1.0.8)

---
updated-dependencies:
- dependency-name: assert_cmd
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-02 22:19:55 +02:00
dependabot[bot] 8161955cc7 Bump nix from 0.21.0 to 0.22.0
Bumps [nix](https://github.com/nix-rust/nix) from 0.21.0 to 0.22.0.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/commits)

---
updated-dependencies:
- dependency-name: nix
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-02 22:17:45 +02:00
Keith Hall 3b020fd95a Merge pull request #1771 from sharkdp/warn_when_missing_contexts
Warn when building assets from files if some referenced contexts are missing
2021-08-02 22:55:37 +03:00
Martin Nordholts 697d106bd4 CICD: Pass --locked to all cargo commands
To avoid that earlier cargo commands "fixes" Cargo.lock before cargo commands
with --locked has a chance to check if it is up to date.
2021-08-02 21:49:51 +02:00
Keith Hall 50e1c6074f Warn when building assets from files if some referenced contexts are missing 2021-08-02 21:22:01 +03:00
Martin Nordholts a610987ef7 assets::tests: Add get_syntax_name() helper
And instead of taking a get_syntax_set() detour to return a
name that represents "no syntax", return such a string directly.
2021-08-02 19:23:14 +02:00
dependabot[bot] a7fd9f4b1b Bump predicates from 1.0.8 to 2.0.1
Bumps [predicates](https://github.com/assert-rs/predicates-rs) from 1.0.8 to 2.0.1.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases)
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v1.0.8...v2.0.1)

---
updated-dependencies:
- dependency-name: predicates
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-01 23:18:16 +02:00
dependabot[bot] 5f5b77cdda Bump semver from 0.11.0 to 1.0.4
Bumps [semver](https://github.com/dtolnay/semver) from 0.11.0 to 1.0.4.
- [Release notes](https://github.com/dtolnay/semver/releases)
- [Commits](https://github.com/dtolnay/semver/compare/0.11.0...1.0.4)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-01 13:58:34 +02:00
dependabot[bot] 83808a63be Bump serde from 1.0.126 to 1.0.127
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.126 to 1.0.127.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.126...v1.0.127)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-01 13:56:19 +02:00
Keith Hall 6d5ff671e7 Add HTTP Request/Response syntax as a git submodule 2021-07-29 21:36:16 +02:00
Martin Nordholts ffdf349a96 HighlightingAssets: Encapsulate theme_set behind a getter
Mainly to prepare for potential lazy-loading in the future to
improve startup performance. Like we did for syntax_set.
2021-07-29 21:30:03 +02:00
David Peter f3d53b79a2 Update git2 dependency to fix incompatibility with Rust 1.54 2021-07-29 20:59:37 +02:00
Martin Nordholts 6acec2c074 Reduce startup time in loop-through mode with 80%-90%
Instead of 100 ms - 50 ms, startup takes 10 ms - 5 ms.

HighlightingAssets::get_syntax_set() is never called when e.g. piping the bat
output to a file (see Config::loop_through), so by loading the SyntaxSet only
when needed, we radically improve startup time when it is not needed.
2021-07-29 20:36:05 +02:00
Martin Nordholts 1bac3750df HighlightingAssets: Move out fn get_integrated_*set() to module scope
They are just a way to get access to data embedded in the binary, so they don't
conceptually belong inside HighlightingAssets.

This has the nice side effect of getting HighlightingAssets::from_cache() and
::from_binary(), that are highly related, next to each other.
2021-07-29 20:36:05 +02:00
Martin Nordholts b040efff79 Support a hidden arg --no-custom-assets that skips loading assets from the cache 2021-07-29 08:27:02 +02:00
Martin Nordholts a81009607a HighlightingAssets: Make .syntaxes() and syntax_for_file_name() failable
Or rather, introduce new versions of these methods and deprecate the old ones.

This is preparation to enable robust and user-friendly support for lazy-loading.
With lazy-loading, we don't know if the SyntaxSet is valid until after we try to
use it, so wherever we try to use it, we need to return a Result. See discussion
about panics in #1747.
2021-07-29 08:26:18 +02:00
Martin Nordholts c0e09662b4 HighlightingAssets::get_extension_syntax(): Split up into smaller methods
To make the code easier to understand and change.
2021-07-28 08:42:18 +02:00
Martin Nordholts ccf4563573 Make loading of cached assets closer in performance to integrated assets
Using BufReader makes sense for large files, but assets are never large enough
to require buffering. It is significantly faster to load the file contents in
one go, so let's do that instead.

Closes #1753
2021-07-27 14:53:59 +02:00
David Peter fb1ab09e3e Add Enselic in FUNDING.yml 2021-07-26 20:11:34 +02:00
Sarvesh MD f464b1ba39 Update battest.py
Add decorator test `@classmethod` and fixed spellings.
2021-07-26 08:44:05 +02:00
Frank Steffahn 2ea6348b85 Add rs identifier for Rust code blocks in Markdown 2021-07-25 15:11:23 +02:00
David Peter 6e536ab06d Update CHANGELOG 2021-07-25 13:28:43 +02:00
Ville Skyttä 7537e309d8 Add groff syntax
The syntax is named "Man Page" upstream, but our man page syntax is
different, it's for rendered man pages. Rename to Groff and remove
`.man` from extensions.
2021-07-25 13:27:30 +02:00
David Peter 84e2a2e5d1 Add custom FUNDING.yml 2021-07-25 12:30:40 +02:00
Martin Nordholts f6fc826dc6 HighlightingAssets: Introduce private fn new() helper
It already now reduces code duplication slightly, but will become even more
useful in the future when we add more complicated logic such as lazy-loading.
2021-07-20 06:34:32 +02:00
Martin Nordholts 375d55aa5d HighlightingAssets: Encapsulate syntax_set behind a getter
Since we only modify `pub(crate)` items, the stable bat-as-a-library API is not
affected.

This takes us one step closer to making SyntaxSet lazy-loaded, which in turn
takes us one step closer to solving #951.
2021-07-19 05:27:12 +02:00
Martin Nordholts 6ef2bb3283 De-duplicate some themes.bin and syntaxes.bin related code 2021-07-15 16:22:35 +02:00
bl-ue fc0794a83d Fix typo in README 2021-07-13 15:54:18 +02:00
David Peter 589df6792f Add note on vulnerability reporting, closes #1473 2021-07-13 11:00:36 +02:00
David Peter 945bba777b Upgrade CHANGELOG with security vulnerability notice 2021-07-13 10:56:51 +02:00
David Peter 64763eafbe Update Julia syntax test 2021-07-13 09:07:29 +02:00
David Peter 3da4651569 Update Julia syntax, closes #1692 2021-07-13 08:50:23 +02:00
David Peter 311ed2feca Update assets 2021-07-13 08:32:26 +02:00
David Peter 33c11d64f0 Run cargo fmt 2021-07-13 08:19:59 +02:00
David Peter a4b674902f Bump version to v0.18.2 2021-07-12 23:17:48 +02:00
David Peter 3fa09dbe2e Use resolved path for --diagnostic as well 2021-07-12 23:17:30 +02:00
David Peter bf2b2df9c9 Fix for Windows: do not run binaries from CWD
This fixes a bug on Windows where `Command::new` would also run
executables from the current working directory, possibly resulting in
accidental runs of programs called `less`.
2021-07-12 23:17:30 +02:00
dependabot[bot] 3617c98cf5 Bump assets/syntaxes/02_Extra/CMake from 7d6231c to ab6ef4e
Bumps [assets/syntaxes/02_Extra/CMake](https://github.com/zyxar/Sublime-CMakeLists) from `7d6231c` to `ab6ef4e`.
- [Release notes](https://github.com/zyxar/Sublime-CMakeLists/releases)
- [Commits](https://github.com/zyxar/Sublime-CMakeLists/compare/7d6231c934e097f51d329c900f9dd9dd9286e125...ab6ef4ef9f9b974806ea0788430a8c087ebe3761)

---
updated-dependencies:
- dependency-name: assets/syntaxes/02_Extra/CMake
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 21:19:05 +02:00
dependabot[bot] 774d36c989 Bump ansi_colours from 1.0.2 to 1.0.4
Bumps [ansi_colours](https://github.com/mina86/ansi_colours) from 1.0.2 to 1.0.4.
- [Release notes](https://github.com/mina86/ansi_colours/releases)
- [Commits](https://github.com/mina86/ansi_colours/commits)

---
updated-dependencies:
- dependency-name: ansi_colours
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 21:18:42 +02:00
dependabot[bot] 6abd61865f Bump globset from 0.4.6 to 0.4.8
Bumps [globset](https://github.com/BurntSushi/ripgrep) from 0.4.6 to 0.4.8.
- [Release notes](https://github.com/BurntSushi/ripgrep/releases)
- [Changelog](https://github.com/BurntSushi/ripgrep/blob/master/CHANGELOG.md)
- [Commits](https://github.com/BurntSushi/ripgrep/compare/globset-0.4.6...globset-0.4.8)

---
updated-dependencies:
- dependency-name: globset
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 21:18:21 +02:00
David Peter 3c59b98dc8 Add CHANGELOG entry for #1687 2021-07-09 06:36:06 +02:00
David Peter 21338ed789 Abort ignored filename suffix stripping early on unworkable filenames 2021-07-09 06:34:11 +02:00
David Peter dc8ab0b5ce Simplify ignored filename suffix stripping 2021-07-09 06:34:11 +02:00
Ville Skyttä ddb39ef2f6 Add syntax tests for ignored filename suffixes 2021-07-09 06:34:11 +02:00
Ville Skyttä 355e62efe9 Find syntax ignoring known backup/template filename suffixes
For example, fall back to `foo.extension` for `foo.extension~`,
`foo.extension.orig`, `foo.extension.in.in` etc.
2021-07-09 06:34:11 +02:00
David Peter fddd11a205 CICD: sync with pastel, minor changes 2021-07-05 17:24:59 +02:00
Ville Skyttä 8b37e62cf3 Add some more options to bash completion
https://github.com/sharkdp/bat/pull/1702#issuecomment-872452683
2021-07-01 22:47:00 +02:00
dependabot[bot] 4296d47dcb Bump assert_cmd from 1.0.4 to 1.0.5
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/assert-rs/assert_cmd/releases)
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/assert_cmd/compare/v1.0.4...v1.0.5)

---
updated-dependencies:
- dependency-name: assert_cmd
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 20:23:05 +02:00
Frederick Zhang 42f1ef019a Fix missing config/cache arguments in Zsh completion 2021-06-28 11:59:01 +02:00
Frederick Zhang fe8e526292 Document --generate-config-file in manual 2021-06-28 11:59:01 +02:00
Ville Skyttä 0e9d612173 Add change log entry for bash completion 2021-06-28 11:58:03 +02:00
Ville Skyttä 06c601bc7c Depend on scop/bash-completion
For = option/arg separator support, improved mid-word completion
behavior, code cleanliness.
2021-06-28 11:58:03 +02:00
Ville Skyttä 229fbc1a18 Add missing comment about --theme arg escaping 2021-06-28 11:58:03 +02:00
Ville Skyttä e05f5010da Add bash completion
Closes https://github.com/sharkdp/bat/issues/1010
2021-06-28 11:58:03 +02:00
Martin Nordholts 073b9968c0 pretty_printer.rs: Don't use a URL as an example Input title
Otherwise Rust 1.53.0 gets confused during `cargo doc` because it thinks
we want an actual URL:

    warning: this URL is not a hyperlink
    --> src/pretty_printer.rs:331:40
        |
    331 |     /// The title for the input (e.g. "http://example.com/example.txt")
        |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use an automatic link instead: `<http://example.com/example.txt>`
        |
        = note: `#[warn(rustdoc::bare_urls)]` on by default
        = note: bare URLs are not automatically turned into clickable links

It was perhaps also a bit confusing to give an URL as an example in the
first place, because according to our own API example
`examples/inputs.rs` it is meant to be more a free-text thing.
2021-06-28 07:10:30 +02:00
Rémi Ait-Younes d3aa17ae77 Update README.md 2021-06-27 21:08:59 +02:00
Rémi Ait-Younes 4187eed12b Update README.md 2021-06-27 21:08:59 +02:00
Mohamed Abdelnour 12ecb325c9 Modify Linguist overrides 2021-06-14 08:36:20 +02:00
Ville Skyttä 90e48e9b61 Spelling fixes 2021-06-13 22:08:56 +02:00
Kid 35f31270f3 Highlight mtab files with fstab highlighting 2021-06-10 14:46:36 +02:00
Martin Nordholts 2a71852070 README.md: List compatibility as another advantage to 3-bit themes
See discussion in #1681.
2021-06-10 13:54:24 +02:00
Martin Nordholts c8dd32802d README.md: Mention that PAGER is ignored if set to more or most
Fixes #1666
2021-06-08 07:13:46 +02:00
dependabot[bot] 71f04dc0e8 Bump nix from 0.20.0 to 0.21.0
Bumps [nix](https://github.com/nix-rust/nix) from 0.20.0 to 0.21.0.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.20.0...v0.21.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-05 16:50:41 +02:00
dependabot[bot] 49f8bbfee4 Bump assert_cmd from 1.0.3 to 1.0.4
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/assert-rs/assert_cmd/releases)
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/assert_cmd/compare/v1.0.3...v1.0.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-02 08:04:30 +02:00
Martin Nordholts f4217eba73 Merge pull request #1669 from sharkdp/dependabot/submodules/assets/syntaxes/02_Extra/DotENV-58201ba
Bump assets/syntaxes/02_Extra/DotENV from `a1c9176` to `58201ba`
2021-06-02 07:48:13 +02:00
Mohamed Abdelnour 14900f6ed8 Update CHANGELOG.md for #1668 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour c18afcb01a Add Verilog syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 63043d4a60 Add varlink syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 76034880ae Add TypeScriptReact syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 768189859a Add Stylus syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 6e5a2a5c51 Add Strace syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 9935c4984c Add Robot Framework syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour a0a5e30c39 Add Rego syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 4126bbeead Add Puppet syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour a5b79295d7 Add NAnt Build File syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour e917784932 Add Literate Haskell syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour f46b90d28d Add jsonnet syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 64cbfbed47 Add Java Server Page (JSP) syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 1ced35ec76 Add 'NOTICE' to list of file names to skip 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 16d346773b Add Fortran Namelist syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour b02120cf66 Add Fortran (Fixed Form) syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour 702b5caf2d Add Fortran (Modern) syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour d395f64f58 Add F# syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour c9627040cc Add CoffeeScript syntax test file 2021-06-01 22:36:56 +02:00
Mohamed Abdelnour b1f69434f9 Add Cabal syntax test file 2021-06-01 22:36:56 +02:00
Martin Nordholts bcca56e3b1 CHANGELOG.md: Apply DotENV syntax also for .env.default and .env.defaults 2021-06-01 18:45:17 +02:00
Martin Nordholts 2f98610929 DotENV.sublime-syntax: Re-exported after .tmLanguage update
Exported from licenced version of Sublime Text, Version 3.1.1, Build
3176.
2021-06-01 18:39:39 +02:00
dependabot[bot] 89539ff247 Bump assets/syntaxes/02_Extra/DotENV from a1c9176 to 58201ba
Bumps [assets/syntaxes/02_Extra/DotENV](https://github.com/zaynali53/DotENV) from `a1c9176` to `58201ba`.
- [Release notes](https://github.com/zaynali53/DotENV/releases)
- [Commits](https://github.com/zaynali53/DotENV/compare/a1c917633d3f3c4222cdcfac5b46831abff54d65...58201ba2abbbe6a12b2f6d0595efea3b388c1e38)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 02:01:58 +00:00
Mohamed Abdelnour aa74d19940 Refactor "Use matches macro" 2021-05-27 12:05:07 +02:00
Mohamed Abdelnour cf7d9ef962 Update CHANGELOG.md for #1661 2021-05-27 12:05:07 +02:00
Mohamed Abdelnour 425a0f90e9 Use the functional update syntax 2021-05-27 12:05:07 +02:00
Mohamed Abdelnour a27814db8e Implement From<..> instead of Into<..> 2021-05-27 12:05:07 +02:00
Mohamed Abdelnour 9702f5256c Use the functional update syntax 2021-05-27 12:05:07 +02:00
Mohamed Abdelnour 23fd11e806 Use matches macro 2021-05-27 12:05:07 +02:00
Mohamed Abdelnour 304ee1489c Use !theme.is_empty() 2021-05-27 12:05:07 +02:00
Ryooooooga 07d4179274 ja: add section about integration with fzf
ref: c569774e1a
2021-05-24 22:12:43 +02:00
Ryooooooga 1439dde265 ja: fix typo 2021-05-24 22:12:43 +02:00
Keith Hall bef0bf1654 Merge pull request #1654 from mohamed-abdelnour/support-dash-syntax
Add support for dash shebang
2021-05-15 11:33:23 +03:00
Mohamed Abdelnour 8435cad602 Merge master 2021-05-15 09:41:27 +02:00
Keith Hall 52c11fe23d Merge pull request #1655 from mohamed-abdelnour/support-xaml-files
Add support for XAML files
2021-05-15 10:02:11 +03:00
Mohamed Abdelnour 6fc9641f6a Update CHANGELOG for #1655 2021-05-15 00:13:42 +02:00
Mohamed Abdelnour 8b6341458b Add XAML test file 2021-05-14 23:59:11 +02:00
Mohamed Abdelnour 8b787b4f70 Add dash test file 2021-05-14 23:02:23 +02:00
Mohamed Abdelnour ef5154d5b3 Update CHANGELOG for #1654 2021-05-14 22:12:58 +02:00
Mohamed Abdelnour 7c49919297 Add support for XAML files 2021-05-14 18:43:06 +02:00
Mohamed Abdelnour 395a169104 Add support for dash shebang 2021-05-14 18:16:38 +02:00
David Peter 93f710bdff Merge pull request #1652 from Zeta611/master
Update the Korean version of the README
2021-05-14 17:15:06 +02:00
Jaeho Lee 170badfdd1 Fix broken img link 2021-05-14 14:15:14 +00:00
Jaeho Lee 978b9adc56 Update and polish Korean translation
- Fix Korean grammar
- Show original English words that can improve comprehensiveness side-by-side
- Reflect the updated README
- Fix broken links
- Other miscellaneous improvements
2021-05-14 13:52:12 +00:00
David Peter 3aea51455b Merge pull request #1649 from sharkdp/v0.18.1
bat 0.18.1
2021-05-13 10:06:50 +02:00
David Peter f827ed338b Update binary assets 2021-05-12 22:55:40 +02:00
David Peter 73dab51ad1 Bump version, update dependencies 2021-05-12 22:55:25 +02:00
David Peter 9328007d05 Updated CHANGELOG 2021-05-12 22:46:44 +02:00
David Peter 8d173cd960 Merge pull request #1598 from PatriotRossii/feature/dark_plus_theme
Add Dark+ theme
2021-05-12 22:45:53 +02:00
David Peter fb0f12a221 Merge pull request #1643 from sharkdp/dependabot/submodules/assets/syntaxes/02_Extra/Lean-29a03a8
Bump assets/syntaxes/02_Extra/Lean from `824213d` to `29a03a8`
2021-05-12 22:35:01 +02:00
David Peter 9866408b72 Merge pull request #1647 from sharkdp/dependabot/cargo/serde-1.0.125
Bump serde from 1.0.124 to 1.0.125
2021-05-12 22:34:36 +02:00
David Peter aaac56d895 Merge pull request #1648 from sharkdp/dependabot/cargo/console-0.14.1
Bump console from 0.14.0 to 0.14.1
2021-05-12 22:34:21 +02:00
David Peter 516da7719f Merge pull request #1646 from sharkdp/dependabot/cargo/bugreport-0.4.0
Bump bugreport from 0.3.0 to 0.4.0
2021-05-12 22:34:00 +02:00
David Peter d4df0b4405 Merge pull request #1645 from sharkdp/dependabot/submodules/assets/syntaxes/02_Extra/FSharp-9e4645c
Bump assets/syntaxes/02_Extra/FSharp from `c18616d` to `9e4645c`
2021-05-12 22:33:50 +02:00
David Peter bfa9c3bef6 Merge branch 'master' into feature/dark_plus_theme 2021-05-12 22:28:10 +02:00
David Peter 2904f24ea8 Merge pull request #1606 from sharkdp/syslog
Improve Syslog and general log file highlighting
2021-05-12 22:22:50 +02:00
Allen Wild 91a347bf6d Fix less version parsing for minor versions of less
Less 581.2 is here, and it has a ".2" in the version string, which can't
be parsed as a usize.

Update the check to find a non-digit character rather than a space. This
ignores the minor version, but parses the major version correctly.
2021-05-12 11:47:16 +02:00
Ersikan e219c8fc03 Update SublimeEthereum version
A fix I submitted upstream was merged, and this commit bumps the submodule
to include it.
2021-05-12 11:42:17 +02:00
Ersikan 9eb26b702c Add syntax test for Vyper language 2021-05-12 11:42:17 +02:00
Ersikan c933be926d Add syntax tests for Solidity language. 2021-05-12 11:42:17 +02:00
Ersikan fc88040b31 Add Solidity and Vyper syntax 2021-05-12 11:42:17 +02:00
David Peter 5db3c93057 Merge branch 'master' into syslog 2021-05-12 11:34:35 +02:00
David Peter aa442b5795 Merge branch 'master' into feature/dark_plus_theme 2021-05-12 11:30:49 +02:00
dependabot[bot] 09711cd6f9 Bump assets/syntaxes/02_Extra/Lean from 824213d to 29a03a8
Bumps [assets/syntaxes/02_Extra/Lean](https://github.com/leanprover/vscode-lean) from `824213d` to `29a03a8`.
- [Release notes](https://github.com/leanprover/vscode-lean/releases)
- [Commits](https://github.com/leanprover/vscode-lean/compare/824213de37245140d75cdcffb3fbd6f61f73a97c...29a03a8abaa884bde65b3c3dd1e46e87bb0fbfc4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 09:27:14 +00:00
dependabot[bot] b16cacc758 Bump assets/syntaxes/02_Extra/SCSS_Sass from 4868322 to 63819a1
Bumps [assets/syntaxes/02_Extra/SCSS_Sass](https://github.com/braver/SublimeSass) from `4868322` to `63819a1`.
- [Release notes](https://github.com/braver/SublimeSass/releases)
- [Commits](https://github.com/braver/SublimeSass/compare/4868322030c3644d6b8cfff68c85849789d9bdb2...63819a1ab6b2075360933b2cfe41b416de0e3c26)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 11:24:59 +02:00
dependabot[bot] 51451a9636 Bump console from 0.14.0 to 0.14.1
Bumps [console](https://github.com/mitsuhiko/console) from 0.14.0 to 0.14.1.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Changelog](https://github.com/mitsuhiko/console/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/console/compare/0.14.0...0.14.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 09:20:10 +00:00
dependabot[bot] fbc03da997 Bump serde from 1.0.124 to 1.0.125
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.124 to 1.0.125.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.124...v1.0.125)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 09:20:01 +00:00
dependabot[bot] 1a610dbdd2 Bump bugreport from 0.3.0 to 0.4.0
Bumps [bugreport](https://github.com/sharkdp/bugreport) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/sharkdp/bugreport/releases)
- [Commits](https://github.com/sharkdp/bugreport/compare/v0.3.0...v0.4.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 09:19:52 +00:00
dependabot[bot] a30e3c9066 Bump assets/syntaxes/02_Extra/FSharp from c18616d to 9e4645c
Bumps [assets/syntaxes/02_Extra/FSharp](https://github.com/hoest/sublimetext-fsharp) from `c18616d` to `9e4645c`.
- [Release notes](https://github.com/hoest/sublimetext-fsharp/releases)
- [Commits](https://github.com/hoest/sublimetext-fsharp/compare/c18616d6bd55b188672276da837837070170d967...9e4645c6085871d6fe4ae8dbcbafe93cb155b074)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-12 09:19:28 +00:00
dependabot-preview[bot] 613b41e357 Bump assets/syntaxes/02_Extra/Julia from 45a1b6f to cc13e7d
Bumps [assets/syntaxes/02_Extra/Julia](https://github.com/JuliaEditorSupport/Julia-sublime) from `45a1b6f` to `cc13e7d`.
- [Release notes](https://github.com/JuliaEditorSupport/Julia-sublime/releases)
- [Commits](https://github.com/JuliaEditorSupport/Julia-sublime/compare/45a1b6fe6cc37a2b614ae199d85c702b8711e22a...cc13e7d4ef74a6556af09d8858d2cc6a47ef5451)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-05-12 11:19:14 +02:00
dependabot-preview[bot] d405aa98d5 Bump console from 0.14.0 to 0.14.1
Bumps [console](https://github.com/mitsuhiko/console) from 0.14.0 to 0.14.1.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Changelog](https://github.com/mitsuhiko/console/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/console/compare/0.14.0...0.14.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-05-12 11:18:46 +02:00
dependabot-preview[bot] 285b1556a9 Upgrade to GitHub-native Dependabot 2021-05-12 11:18:03 +02:00
Marco Ieni 8321cc661c CI: check docs (#1612) 2021-05-12 07:20:12 +02:00
Keith Hall 848ceb6f10 Remove variable.other from CSV highlighting 2021-05-11 21:04:02 +02:00
Keith Hall 3559079de0 Improvements to CSV highlighting 2021-05-11 21:04:02 +02:00
Keith Hall b3ab843954 add warning highlighting to log file syntax definition 2021-04-09 22:09:01 +03:00
Keith Hall 867cf63dd9 add word boundaries to log syntax highlighting 2021-04-07 22:33:59 +03:00
Ethan P 0b44aa6f68 Merge pull request #1589 from Enselic/include-less-in-diagnostic
Include LESS in --diagnostic
2021-04-06 16:03:26 -07:00
Ethan P aa09a9dc04 Update changelog for #1589 2021-04-06 15:33:34 -07:00
Keith Hall 7c4edacb2b Add independent log syntax 2021-04-06 23:55:22 +03:00
Keith Hall 782ede5db5 improve syslog syntax 2021-04-05 22:24:04 +03:00
Keith Hall 1537733e6b replace Syslog dependency with a custom syntax 2021-04-04 22:47:01 +03:00
Keith Hall ba0d43672b add example syslog file for highlighting tests 2021-04-04 22:41:48 +03:00
msnspk 4384d25c79 Change TheClams/SystemVerilog submodule to use HTTPS
Using SSH to fetch the submodule was causing build failures for me, and as mentioned in #1581, this should be changed to HTTPS
2021-03-27 11:05:00 +01:00
PatriotRossii b6e3786529 Revert "Update of themes.bin that adds Dark+"
This reverts commit 6fff01397d.

Restore themes.bin
2021-03-24 21:27:02 +06:00
PatriotRossii 6fff01397d Update of themes.bin that adds Dark+ 2021-03-24 21:11:29 +06:00
PatriotRossii 0cd52e5be1 Add "Visual Studio Dark+" theme to vec of themes 2021-03-24 18:39:06 +05:00
PatriotRossii c14dd34dca Add Dark+ theme 2021-03-24 17:52:44 +05:00
Martin Nordholts e04fbd1992 Include LESS in --diagnostic
So issues like #1586 are easier to troubleshoot.
2021-03-17 21:10:16 +01:00
Sean McLoughlin d89fa3ebc2 Add SystemVerilog support 2021-03-15 07:21:15 +01:00
Sean Wei db57454f3f Update copyright year 2021-03-10 19:37:21 +01:00
Martin Nordholts 8f93844427 CICD: Remove explicit allow of clippy::match_bool since MSRV 1.45 bump
Now that we are on MSRV 1.45, there is no need to "backport" the change
that reclassified clippy::match_bool as "pedantic".
2021-03-08 07:08:55 +01:00
David Peter 52f84b063c Update dependencies, MSRV: 1.45 2021-03-07 15:33:37 +01:00
David Peter 2e7f2b6c07 'mut self' => 'self', remove pub 2021-03-07 14:59:10 +01:00
Aleksey Kladov 35347c2310 Improve readability
Using `Path`s for paths expresses intent more clearly.
2021-03-07 14:59:10 +01:00
dependabot-preview[bot] b489fc75c9 Bump assets/syntaxes/02_Extra/Crystal from 5e032ff to eb63666
Bumps [assets/syntaxes/02_Extra/Crystal](https://github.com/crystal-lang-tools/sublime-crystal) from `5e032ff` to `eb63666`.
- [Release notes](https://github.com/crystal-lang-tools/sublime-crystal/releases)
- [Commits](https://github.com/crystal-lang-tools/sublime-crystal/compare/5e032ff5f5d98c9d5d2984a1bd43b43230cd3d0a...eb63666f35c259733d4c7fcec9adbd82e5a91dda)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 12:18:40 +01:00
dependabot-preview[bot] fc24cb2a77 Bump assets/syntaxes/02_Extra/LESS from 44632e1 to a2eae04
Bumps [assets/syntaxes/02_Extra/LESS](https://github.com/danro/LESS-sublime) from `44632e1` to `a2eae04`.
- [Release notes](https://github.com/danro/LESS-sublime/releases)
- [Commits](https://github.com/danro/LESS-sublime/compare/44632e19af8370b39643dd60cd76deb7a13c63ee...a2eae0453ed062dd499e30f561bc33bbeb5804b4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 12:18:28 +01:00
David Peter 2540311cdf Update bug report issue template (--diagnostic option) 2021-03-01 08:27:07 +01:00
dependabot-preview[bot] 3880888286 Bump nix from 0.19.1 to 0.20.0
Bumps [nix](https://github.com/nix-rust/nix) from 0.19.1 to 0.20.0.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 08:25:02 +01:00
dependabot-preview[bot] 5a806c2149 Bump path_abs from 0.5.0 to 0.5.1
Bumps [path_abs](https://github.com/vitiral/path_abs) from 0.5.0 to 0.5.1.
- [Release notes](https://github.com/vitiral/path_abs/releases)
- [Commits](https://github.com/vitiral/path_abs/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 08:24:13 +01:00
dependabot-preview[bot] 8a926d511a Bump assets/syntaxes/02_Extra/Julia from e2b1cb5 to 45a1b6f
Bumps [assets/syntaxes/02_Extra/Julia](https://github.com/JuliaEditorSupport/Julia-sublime) from `e2b1cb5` to `45a1b6f`.
- [Release notes](https://github.com/JuliaEditorSupport/Julia-sublime/releases)
- [Commits](https://github.com/JuliaEditorSupport/Julia-sublime/compare/e2b1cb549d57368b7b22e79430a1d5f47555e802...45a1b6fe6cc37a2b614ae199d85c702b8711e22a)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 08:23:49 +01:00
dependabot-preview[bot] 8885285b10 Bump assets/syntaxes/02_Extra/Lean from 49d1853 to 824213d
Bumps [assets/syntaxes/02_Extra/Lean](https://github.com/leanprover/vscode-lean) from `49d1853` to `824213d`.
- [Release notes](https://github.com/leanprover/vscode-lean/releases)
- [Commits](https://github.com/leanprover/vscode-lean/compare/49d185361a9943f440d8efe389259a3374ade905...824213de37245140d75cdcffb3fbd6f61f73a97c)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 08:23:34 +01:00
dependabot-preview[bot] d1f0181947 Bump assets/themes/zenburn from 7f6fb86 to 702023d
Bumps [assets/themes/zenburn](https://github.com/colinta/zenburn) from `7f6fb86` to `702023d`.
- [Release notes](https://github.com/colinta/zenburn/releases)
- [Commits](https://github.com/colinta/zenburn/compare/7f6fb86e0dcdd06d3c5181ad1cbe94c970834143...702023d80d9f845a5847eefc4c81c2d4dbbdac59)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-03-01 08:23:15 +01:00
David Peter b147443c32 Add new unreleased section 2021-02-28 23:28:59 +01:00
Niklas Mohrin b8a18d3ebb Use tempfiles for clircle tests 2021-02-28 23:04:49 +01:00
Niklas Mohrin 694b31909a Change circle detection to use new more conservative method and run in main loop instead of before the loop 2021-02-28 23:04:49 +01:00
David Peter a98811b6d7 Update syntaxes and themes 2021-02-28 18:57:11 +01:00
David Peter cfc505e1e5 Bump version to v0.18.0 2021-02-28 18:57:11 +01:00
Martin Nordholts 3af3549232 integration_tests: Use tempdir() in config_location_when_generating
For cleaner code.

Use the tempdir() function since that is recommended by the crate docs:
https://docs.rs/tempfile/3.2.0/tempfile/index.html
2021-02-28 18:09:44 +01:00
Martin Nordholts 643f0bcbe3 integration_tests.rs: Add test config_location_when_generating
As a complement to #1556 to prevent #1550 from coming back.

The test purposefully fails if ca60937c2e is reverted.
2021-02-28 18:09:44 +01:00
Martin Nordholts 9db9a38565 CICD: Add workflow_dispatch to enable manual builds
Which is useful when you want to test a fix without creating a PR for
it.
2021-02-28 16:27:40 +01:00
David Peter ca60937c2e Do not ignore non-existent BAT_CONFIG_PATH
Do not ignore `BAT_CONFIG_PATH` if it doesn't exist. Both when
generating a new config file with `--generate-config-file` and
when attempting to read the config.

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

closes #1550
2021-02-28 10:08:24 +01:00
David Peter 2aa3ed9da8 Update CHANGELOG 2021-02-28 10:06:56 +01:00
Keith Hall 7768433d09 Improve Monokai Extended JSON key color with a patch 2021-02-28 09:55:24 +01:00
David Peter c569774e1a Add section about integration with fzf
see #448
2021-02-27 11:47:04 +01:00
Martin Nordholts 0371f55541 CICD: Don't run jobs twice in PRs
Without this change, creating a PR triggers all jobs to run twice. Once
due to a push event and once due to a pull_request event.

Change to only trigger jobs due to push when pushing a tag or to the
master branch, to avoid duplicate jobs for each PR.
2021-02-22 21:45:52 +01:00
David Peter bc35592fd9 CICD: Build step naming 2021-02-21 19:11:42 +01:00
David Peter f5d834407e CICD: Improved job names 2021-02-21 11:16:30 +01:00
David Peter 557a748ac7 CICD: Remove code coverage computation 2021-02-21 10:24:27 +01:00
Martin Nordholts 3f10f71ad2 CICD: Build: Rename 'Check is release' step to 'Check for release'
To get a name that sounds like proper English.
2021-02-18 07:59:10 +01:00
Martin Nordholts 7b6388b19f CICD: Build: Add separate 'Calculate test options' step
And move it down to right before it is needed, to reduce its scope.

For #1474
2021-02-18 07:59:10 +01:00
Martin Nordholts b98ec4bbc5 CICD: Build: Check IS_RELEASE in separate step
And move it closer to where it is actually needed, to reduce its scope.

For #1474
2021-02-18 07:59:10 +01:00
Martin Nordholts 94fd481f36 CICD: Build: Remove unused ${{ matrix.job.cargo-options }} expansions 2021-02-18 07:59:10 +01:00
David Peter 94496df3b0 Fix broken resolv.conf highlighting
closes #1510

The change in `create_highlighted_versions.py` fixes a "unknown theme
"'1337'" warning. The single quotes were wrong. `bat` was always falling
back to the default theme, so let's use that for now.
2021-02-16 22:15:31 +01:00
Martin Nordholts 0e5ea9c354 CICD: Build: Use package-specific staging dir
A common staging dir confuses more than it helps, so let each package
step take care of its own staging dir.

For #1474
2021-02-16 21:53:54 +01:00
David Peter 7eabb5e05a Highlight *.pac files as JavaScript
closes #1515
2021-02-16 21:52:52 +01:00
David Peter 9ad401be87 Fix clippy suggestion 2021-02-16 09:13:22 +01:00
Ethan P f874c8e4db Use less binary specified in bat config for --diagnostic 2021-02-16 09:11:27 +01:00
Ethan P 025c5c061b Make less version check accept a path to the less binary 2021-02-16 09:11:27 +01:00
Caden Haustein 573f34d757 Update dependencies; replace unmaintained (#1522)
* Update dependencies; replace unmaintained

* Fix errors

* Revert dependency changes

* Revert git2 to 0.13.15

Co-authored-by: David Peter <mail@david-peter.de>
2021-02-16 08:50:41 +01:00
Martin Nordholts eac36dd3b5 CICD: Build: Introduce and use new 'Strip release bin' step
So that we don't have to duplicate that logic in both 'Debian package'
and 'Package' steps.

For #1474
2021-02-16 07:27:44 +01:00
David Peter 70cf8a4ec5 Wording 2021-02-15 22:39:48 +01:00
Martin Nordholts 37d0d8984c README.md: Warn about buggy snap packages
As discussed in #1519, the batcat snap package is too problematic for
official endorsement, so withdraw recommendation from README.me (and
remove section from CHANGELOG.md since a release with it has not been
made yet).
2021-02-15 22:39:48 +01:00
Keith Hall 2e8c0a39db Add support for env vars and manpage refs with dots to Manpage syntax 2021-02-15 22:30:42 +01:00
dependabot-preview[bot] deec2902e4 Bump assets/syntaxes/02_Extra/Svelte from aee0676 to c71f129
Bumps [assets/syntaxes/02_Extra/Svelte](https://github.com/corneliusio/svelte-sublime) from `aee0676` to `c71f129`.
- [Release notes](https://github.com/corneliusio/svelte-sublime/releases)
- [Commits](https://github.com/corneliusio/svelte-sublime/compare/aee0676f379c0503f9c557e24aa2816575e0a4d1...c71f1290b061c79c027b5eb002ed06aa6d874ffe)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:35:00 +01:00
dependabot-preview[bot] e3343759b7 Bump assets/themes/onehalf from 8992311 to 141c775
Bumps [assets/themes/onehalf](https://github.com/sonph/onehalf) from `8992311` to `141c775`.
- [Release notes](https://github.com/sonph/onehalf/releases)
- [Commits](https://github.com/sonph/onehalf/compare/89923117bc49dd1e0c6b7fdd34bc6dc4d425fe1f...141c775ace6b71992305f144a8ab68e9a8ca4a25)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:34:44 +01:00
dependabot-preview[bot] fa72f86e17 Bump assets/syntaxes/02_Extra/CMake from 21e9698 to 7d6231c
Bumps [assets/syntaxes/02_Extra/CMake](https://github.com/zyxar/Sublime-CMakeLists) from `21e9698` to `7d6231c`.
- [Release notes](https://github.com/zyxar/Sublime-CMakeLists/releases)
- [Commits](https://github.com/zyxar/Sublime-CMakeLists/compare/21e96989d604d64f12d518f4f17fc71fa3cdc505...7d6231c934e097f51d329c900f9dd9dd9286e125)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:34:03 +01:00
dependabot-preview[bot] 6527126e50 Bump assets/syntaxes/02_Extra/Lean from 7e99440 to 49d1853
Bumps [assets/syntaxes/02_Extra/Lean](https://github.com/leanprover/vscode-lean) from `7e99440` to `49d1853`.
- [Release notes](https://github.com/leanprover/vscode-lean/releases)
- [Commits](https://github.com/leanprover/vscode-lean/compare/7e99440b33c834b11deda67144a6a7ce5a666f0e...49d185361a9943f440d8efe389259a3374ade905)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:33:40 +01:00
dependabot-preview[bot] 4aec022065 Bump serde from 1.0.118 to 1.0.123
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.118 to 1.0.123.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.118...v1.0.123)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:33:12 +01:00
dependabot-preview[bot] a26c5b8219 Bump predicates from 1.0.6 to 1.0.7
Bumps [predicates](https://github.com/assert-rs/predicates-rs) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases)
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v1.0.6...v1.0.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:33:05 +01:00
Martin Nordholts d36b091fd7 CICD: Build: Move PKG_* vars to 'Package' step
For improved modularization of CICD script.

For #1474
2021-01-11 22:18:49 +01:00
Martin Nordholts 3dcf02549e CICD: Build: Move DPKG_* vars to 'Debian package' step
For cleaner CICD script. Note that we can't use outputs defined in our
own step, so also change to shell vars intead.

For #1474
2021-01-11 22:18:49 +01:00
Martin Nordholts e402011a73 CICD: Build: Split out dir creation into the individual package steps
It's cleaner because we can reuse helper vars and create the dirs closer
in time to when they are needed.

For #1474
2021-01-11 22:18:49 +01:00
Martin Nordholts dc1620d1f0 get_pager(): Simplify use_less_instead expression 2021-01-11 21:56:10 +01:00
Martin Nordholts c48e779e8a CHANGELOG.md: Add entry for #1413 2021-01-11 21:56:10 +01:00
Martin Nordholts dd0d44bbb3 Fix #1413 Can't use bat at all! (Error: Use of bat as a pager is disallowed...)
Fixed by implementing the proposal by sharkdp:

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

* Disallow the usage of bat within BAT_PAGER and --pager.
2021-01-11 21:56:10 +01:00
sharkdp 060b9981b5 Remove deprecated PrettyPrinter methods 2021-01-11 21:36:08 +01:00
Keith Hall b25713938d Fix typo in bug report template 2021-01-11 15:40:03 +02:00
Keith Hall 5b09561114 Update map-syntax text in manpage to match --help 2021-01-10 22:24:32 +01:00
Keith Hall fcde4824d5 Add missing command line options to the manpage 2021-01-10 22:24:32 +01:00
sharkdp b0e5828d3f Add comment regarding use of bat as a library, closes #953 2021-01-10 22:24:32 +01:00
sharkdp b7d499d1be Add 'batcat' comment in MANPAGER suggestion, closes #1434 2021-01-10 22:24:32 +01:00
sharkdp 1ae16fca90 Improve --map-syntax documentation, see #1386 2021-01-10 22:24:32 +01:00
sharkdp 0e2bef3b79 Fix minor mistakes in --map-syntax documentation 2021-01-10 22:24:32 +01:00
Martin Nordholts 221c9815a5 CICD: Build: Split up into separate 'Debian package' step
Make sure to ignore whitespace changes when diffing.

For #1474
2021-01-10 20:44:03 +01:00
Martin Nordholts c5c683f67c Explicitly allow clippy::match_bool until we bump MSRV
Since we run clippy on Rust 1.42.0 we still get warnings about the
presence of clippy::match_bool lints. That lint has been moved from
'Style' to 'Pedantic' in Rust 1.45.0 and onwards however, so let's
silent it in our clippy runs too.
2021-01-10 20:38:16 +01:00
David Peter 149a0177cd Update number of syntaxes 2021-01-10 16:12:46 +01:00
David Peter 252e5a6b13 Merge pull request #1402 from Enselic/fix-1063
Fix #1063: Do not use 'more' or 'most' PAGER, as they are not compatible with bats output
2021-01-10 14:51:29 +01:00
sharkdp faa27ed6e3 CICD: simply use 'sed' to extract crate information 2021-01-10 14:44:46 +01:00
sharkdp f3227c259e Use cache for faster install 2021-01-10 14:44:46 +01:00
sharkdp 2cfeebab90 CICD: Use 'cargo get' to extract crate metadata 2021-01-10 14:44:46 +01:00
Martin Nordholts 8dd67cca0c Revert accidental change to assets/syntaxes/02_Extra/VimL 2021-01-10 14:11:57 +01:00
Martin Nordholts eda72c31b2 tests: Move 'mocked pagers' utils to separate file 2021-01-10 14:05:39 +01:00
Martin Nordholts 7809008016 PagerKind::from(): Simplify 2021-01-10 13:40:07 +01:00
Martin Nordholts c2c2b0211a fn mocked_pager: Simplify with format! 2021-01-10 13:26:40 +01:00
Martin Nordholts dd6f57e107 pager.rs: Some comment fixups 2021-01-10 13:25:18 +01:00
Martin Nordholts dfe7a60140 PagerSource: [Bat]PagerEnvVar -> EnvVar[Bat]Pager 2021-01-10 13:16:09 +01:00
Martin Nordholts fc30277cfa pager.rs: Limit visibilities to pub(crate) 2021-01-10 13:07:37 +01:00
Martin Nordholts 02e6ff4183 Merge remote-tracking branch 'origin/master' into fix-1063 2021-01-10 11:56:03 +01:00
Martin Nordholts e3b1142364 CICD: Build: DEPLOY -> IS_RELEASE and inline it
This simplifies and clarifies the script.

For #1474
2021-01-10 10:56:15 +01:00
Martin Nordholts 8832ff3c6a CICD: Build: Adapt release version regex to bat
All bat tags begin with a small 'v', so no need for a generic pattern in
the CI script. This will also help us ensure we keep the same format on
future tags.
2021-01-10 10:56:15 +01:00
Martin Nordholts 505ff10dc6 CICD: Build: Always build and upload Debian packages
Not only when a release tag is pushed. Also publish these Debian
packages as artifacts. This makes PR workflows more similar to release
work flows, and reduces risk of build system regressions that we don't
detect until we make a new release.

For #1474
2021-01-10 10:56:15 +01:00
Martin Nordholts 9a3a5545e7 CICD: Build: Use Cargo.toml version instead of tag
This enables us to later always build Debian packages. If you try to use
a git sha as Debian package version you will get an error:

    dpkg-deb: error: parsing file '_staging/dpkg/DEBIAN/control' near line 2 package 'bat':
     error in 'Version' field string 'd2963ce4': version number does not start with digit

so we need to use a version that is always available.

We duplicate the bat version in another place here which is a bit bad,
but it is already duplicated a lot, so we don't make things
significantly worse. It is still kind of nice to not have to figure out
a good and robust way to parse out the version from Cargo.toml in the CI
script.

For #1474
2021-01-10 10:56:15 +01:00
Martin Nordholts 43919066ad CICD: Use fixed OS versions instead of 'latest' ones
This reduces the risk of the build suddenly breaking, and fixes this
current warning:

    Ubuntu-latest workflows will use Ubuntu-20.04 soon.
    For more details, see https://github.com/actions/virtual-environments/issues/1816

I've use the mapping found at
https://github.com/actions/virtual-environments, so there should be no
actual change in OS versions, only semantically so.
2021-01-10 10:46:45 +01:00
sharkdp 7ada963ec2 Add ChangeLog entry 2021-01-09 22:35:50 +01:00
sharkdp 4c523af1ab Add gnuplot syntax
closes #1431
2021-01-09 22:35:50 +01:00
sharkdp c5c28eb05b --diagnostic: add MANPAGER environment variable 2021-01-09 21:56:17 +01:00
David Peter 22924532d0 Fix link in doc/assets.md 2021-01-09 21:43:25 +01:00
sharkdp 7c227169a4 Add note about breaking change 2021-01-09 20:44:44 +01:00
sharkdp 8e4b0b4377 Update dependencies
fixes #1149
fixes #1477
2021-01-09 20:40:23 +01:00
sharkdp 6d27df3b77 Use unstable sort for theme test 2021-01-09 19:43:39 +01:00
sharkdp 73d14f4655 Use BatTester::default instead of BatTester::new 2021-01-09 19:43:39 +01:00
sharkdp 19b8c53c46 Enable clippy::style checks 2021-01-09 19:43:39 +01:00
sharkdp cd7be018fe Fix clippy suggestion: .or_else(|| Some(…)) => .or(Some(…)) 2021-01-09 19:43:39 +01:00
sharkdp 03a2710a08 Use new matches!(…) macro to simplify code 2021-01-09 19:43:39 +01:00
sharkdp 09fbabb0b8 Add a Default implementation for PrettyPrinter 2021-01-09 19:43:39 +01:00
mark chaitin de6cb75f4b Addressed PR feedback. Upped min version and used matches! macro 2021-01-09 15:21:26 +01:00
mark chaitin 83c9cb7907 fix bug where long lines were truncated in plain mode without wrap=never not being set 2021-01-09 15:21:26 +01:00
Martin Nordholts 7ffb04a17a CICD: Build: Make 'Upload build artifacts' more like deploy
The end goal is to upload the same artifacts for a PR as we deploy
during a release, to make a regular PR pipeline as similar as possible
to a deploy.

The first step is to move 'Upload build artifacts' to after 'Package' so
we can upload the same files. Also change the name and artifacts to be
more similar to what we deploy for a release.

For #1474
2021-01-09 14:31:19 +01:00
David Peter c38c186d26 Add Enselic as a maintainer 2021-01-09 14:22:23 +01:00
Martin Nordholts e22a9a69b1 CICD: Build: Stop building on Ubuntu 16.04
End-of-life is in three months, and we already do the same build on
Ubuntu 18.04.
2021-01-09 08:30:54 +01:00
Martin Nordholts 59f9adc706 CICD: Build: Add and use disable-deploy matrix var
This results in a nicer workflow file that is easier to follow.

Also remove the unneccesary doc row that repeats what is already in the
matrix and that is annoying to keep up to date.

For #1474
2021-01-09 08:30:54 +01:00
Csaba Henk fed30b1b36 Fix theme dir hint in --list-themes output 2021-01-08 20:10:45 +01:00
Martin Nordholts 411d68e839 CICD: Build: Remove unused JOB_DO_TESTING var and output
It is CARGO_TEST_OPTIONS that is used to control testing on
cross-compiled builds, so we can remove JOB_DO_TESTING.

For #1474
2021-01-08 19:54:25 +01:00
Martin Nordholts 77d42a17c6 CICD: Build: Remove unused PKG_suffix output var
Only the env var is used, so output variant is not needed.

For #1474
2021-01-08 19:54:25 +01:00
Martin Nordholts e7c55bffe9 CICD: Build: Remove unused TARGET_* vars and outputs
For #1474
2021-01-08 19:54:25 +01:00
Martin Nordholts da10166625 Merge remote-tracking branch 'origin/master' into fix-1063 2021-01-07 12:58:26 +01:00
Martin Nordholts b6b7262962 CICD: Build: Use matrix.job.use-cross directly
There is no need for a var and set-output detour.
2021-01-07 10:55:29 +01:00
Martin Nordholts 3ed83913b2 CICD: Build: Remove unused REF_* outputs
There is no usage of `steps.vars.outputs.REF_*` so no need to setup such
things. Also remove setting up REF_NAME and REF_BRANCH env vars, since
they are never read.
2021-01-07 10:54:00 +01:00
Martin Nordholts 63460f4bf9 CICD: Build: Remove conditional TOOLCHAIN logic
because we always use "stable". If we need to go back to using
matrix.job.toolchain, we should do it like in jobs.coverage, instead of
messing about with vars and outputs.
2021-01-06 23:11:24 +01:00
Martin Nordholts c67b439752 CICD: Build: Enable x86_64-pc-windows-gnu again
All the referenced issues [1] have been Closed, so use "stable" for
everything. Now `i686-w64-mingw32-gcc` fails with this instead

    error: linker `i686-w64-mingw32-gcc` not found

so keep it disabled. There is probably a simple solution for this that
is obvious to someone used to cross-compiling Rust programs on
Windows...

[1]
https://github.com/rust-lang/rust/issues/47048
https://github.com/rust-lang/rust/issues/53454
https://github.com/rust-lang/cargo/issues/6754
2021-01-06 23:11:24 +01:00
sharkdp 2b44940f81 Update CHANGELOG 2021-01-06 22:55:12 +01:00
sharkdp 26136be903 Add --diagnostics alias 2021-01-06 22:53:51 +01:00
sharkdp 6a52f69b58 Update to bugreport 0.3.0 2021-01-06 22:53:51 +01:00
sharkdp 60406c7c2d Exhaustive list of relevant environment variables 2021-01-06 22:53:51 +01:00
sharkdp 2465438ec3 Bump bugreport version 2021-01-06 22:53:51 +01:00
sharkdp 99a61580e1 Add --diagnostic run to CI 2021-01-06 22:53:51 +01:00
sharkdp dec94b4111 Add config file, compile time info and less version 2021-01-06 22:53:51 +01:00
sharkdp ebb97e94a9 Add --diagnostic option to bat 2021-01-06 22:53:51 +01:00
Martin Nordholts 5e1f9fadf4 CICD: Code Coverage: Explain why disabled 2021-01-06 22:34:03 +01:00
Martin Nordholts fe08de846d CICD: Code Coverage: Disable for now 2021-01-06 22:34:03 +01:00
sharkdp 35e3c51b75 Fix unused import warning 2021-01-06 22:09:22 +01:00
sharkdp 59c9105c25 Fix clippy warnings in tests on Windows 2021-01-06 22:08:14 +01:00
Ensar Sarajčić b458292a69 Target VimL upstream .sublime-syntax file (#1483)
* Target VimL upstream .sublime-syntax file

Upstream **VimL Syntax** has been updated
to include `.sublime-syntax` file instead of `.tmLanguage`,
therefore manually added `.sublime-syntax` is no longer needed

* Remove .bin changes
2021-01-06 21:06:57 +01:00
Martin Nordholts 78aed2cb69 CICD: Remove use-cross when host == target 2021-01-06 20:05:53 +01:00
Martin Nordholts 46487b201f Merge remote-tracking branch 'origin/master' into fix-1063 2021-01-06 14:30:55 +01:00
Martin Nordholts 939a6a5f4d CICD: Remove duplicate set-output calls (#1479)
The ::set-output syntax is the correct one according to
https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-commands-for-github-actions#setting-an-output-parameter,
so remove duplicates without that syntax.
2021-01-06 12:30:34 +01:00
Martin Nordholts caf0743811 CICD: Code Coverage: Use matrix.job.toolchain directly
No need for complicated var and set-output logic when we can simply use
matrix.job.toolchain directly.
2021-01-06 11:58:31 +01:00
Martin Nordholts 9ccb667653 Add integration test for unparsable pager
Right now all tests pass even if we e.g. return

    Ok(OutputType::stdout())

instead of doing

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

so add a test to make sure this functionality don't break.
2021-01-06 11:58:08 +01:00
Niklas Mohrin b600f62ab6 Add unix specific integration test about running bat without any arguments 2021-01-05 18:21:16 +01:00
Niklas Mohrin ace655e164 Add integration tests for clircle cycle detection 2021-01-05 18:21:16 +01:00
Niklas Mohrin 21ae26cb17 Add cycle detection with clircle, now v0.2 2021-01-05 18:21:16 +01:00
Martin Nordholts 478233f795 Merge remote-tracking branch 'origin/master' into fix-1063 2021-01-04 21:02:51 +01:00
Martin Nordholts e87c554ccd tests: Make mocked pagers work on Windows 2021-01-04 20:22:04 +01:00
Martin Nordholts df33ed05dd Run PATH-dependent tests serially
Since PATH is a shared resource.
2021-01-04 15:45:57 +01:00
Martin Nordholts c9efdd68ed Add integration tests for 'more' and 'most' used as pagers 2021-01-04 10:30:55 +01:00
sharkdp 8381945cb5 Update formatting 2021-01-03 21:18:54 +01:00
David Peter 2046b47739 Move "diagnostics" part to the bottom of the bug report template 2021-01-03 21:16:56 +01:00
Janek 0c302f088a Update bug_report.md 2021-01-03 21:16:56 +01:00
Janek a41db63907 Update bug_report.md 2021-01-03 21:16:56 +01:00
Janek 3573c48e98 bug_report.md: improve wording 2021-01-03 21:16:56 +01:00
Janek e94980bfd0 bug_report.md: move environment prompt back up 2021-01-03 21:16:56 +01:00
Janek 5422982207 Update bug_report.md 2021-01-03 21:16:56 +01:00
David Peter 4fe5497d19 Merge pull request #1268 from eth-p/improved-benchmark
Add option to specify bat target in run-benchmarks.sh
2021-01-03 07:14:12 +01:00
Ethan P 1b549ecc66 Merge branch 'master' into improved-benchmark 2021-01-02 21:35:58 -08:00
sharkdp b5bdba8b16 Svelte syntax test: rename license file 2021-01-02 22:34:15 +01:00
sharkdp 522c97f5ad DotEnv syntax test: add missing newline 2021-01-02 22:34:15 +01:00
sharkdp 7fbb3a5352 Add Zig entry in ChangeLog, see #1470 2021-01-02 21:37:11 +01:00
sharkdp b3f34529b5 Update Zig syntax test output 2021-01-02 21:34:25 +01:00
Paul Smith d388d07e9f Delete erroneously added Sublime file 2021-01-02 21:34:25 +01:00
Paul Smith c76e27851c Add support for Zig
Adds syntax support for source code for the Zig programming
language. https://ziglang.org/
2021-01-02 21:34:25 +01:00
sharkdp 8c0dcf3b57 Update syntax test instructions 2021-01-02 21:21:28 +01:00
sharkdp 962b3a78c0 Add step-by-step guide to add syntax tests, see #1211 2021-01-02 10:21:02 +01:00
sharkdp aa5b941ed5 Add ChangeLog entry 2021-01-02 09:46:58 +01:00
Julian Berman af8a8035e8 Add a Lean highlighting test file. 2021-01-02 09:45:19 +01:00
Julian Berman 037a66c57b Add the Lean submodule. 2021-01-02 09:45:19 +01:00
Julian Berman 1a04dcf10f Add Lean.sublime-syntax.
Covers syntax for Lean 3, an interactive theorem prover
at https://leanprover-community.github.io/ whose users
mostly use VSCode.
2021-01-02 09:45:19 +01:00
David Peter 2eae8b578e Fix repology badge 2021-01-01 23:07:13 +01:00
dependabot-preview[bot] 17189fce9b Bump assets/themes/zenburn from cb746f6 to 7f6fb86
Bumps [assets/themes/zenburn](https://github.com/colinta/zenburn) from `cb746f6` to `7f6fb86`.
- [Release notes](https://github.com/colinta/zenburn/releases)
- [Commits](https://github.com/colinta/zenburn/compare/cb746f69624e635f6f4d127fa9244658e690c34b...7f6fb86e0dcdd06d3c5181ad1cbe94c970834143)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:14:47 +01:00
dependabot-preview[bot] a0225018e6 Bump assets/syntaxes/02_Extra/TypeScript from 603ebb4 to a607ddf
Bumps [assets/syntaxes/02_Extra/TypeScript](https://github.com/Microsoft/TypeScript-Sublime-Plugin) from `603ebb4` to `a607ddf`.
- [Release notes](https://github.com/Microsoft/TypeScript-Sublime-Plugin/releases)
- [Commits](https://github.com/Microsoft/TypeScript-Sublime-Plugin/compare/603ebb48b162bc453a0bb2cbb0192f3606819f6d...a607ddfec90648c1c2f33f8306733f6aec5d2b78)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:14:16 +01:00
dependabot-preview[bot] 361b7aa0da Bump console from 0.13.0 to 0.14.0
Bumps [console](https://github.com/mitsuhiko/console) from 0.13.0 to 0.14.0.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Changelog](https://github.com/mitsuhiko/console/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/console/compare/0.13.0...0.14.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:14:00 +01:00
dependabot-preview[bot] 334590932a Bump syntect from 4.4.0 to 4.5.0
Bumps [syntect](https://github.com/trishume/syntect) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/trishume/syntect/releases)
- [Changelog](https://github.com/trishume/syntect/blob/master/CHANGELOG.md)
- [Commits](https://github.com/trishume/syntect/compare/v4.4.0...v4.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:10:49 +01:00
dependabot-preview[bot] 3f4638204f Bump git2 from 0.13.12 to 0.13.15
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.12 to 0.13.15.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.12...0.13.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:10:32 +01:00
dependabot-preview[bot] 5e7061b9f6 Bump predicates from 1.0.5 to 1.0.6
Bumps [predicates](https://github.com/assert-rs/predicates-rs) from 1.0.5 to 1.0.6.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases)
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v1.0.5...v1.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:10:03 +01:00
dependabot-preview[bot] 7a1cd5226f Bump serde from 1.0.117 to 1.0.118
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.117 to 1.0.118.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.117...v1.0.118)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:09:55 +01:00
dependabot-preview[bot] 285ac75738 Bump assets/syntaxes/02_Extra/Julia from 6c0d770 to e2b1cb5
Bumps [assets/syntaxes/02_Extra/Julia](https://github.com/JuliaEditorSupport/Julia-sublime) from `6c0d770` to `e2b1cb5`.
- [Release notes](https://github.com/JuliaEditorSupport/Julia-sublime/releases)
- [Commits](https://github.com/JuliaEditorSupport/Julia-sublime/compare/6c0d770fc74e6bc037c70cae1f94fe113b60fd95...e2b1cb549d57368b7b22e79430a1d5f47555e802)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:09:25 +01:00
dependabot-preview[bot] 00ff54be4e Bump assets/syntaxes/02_Extra/SCSS_Sass from bc6332c to 4868322
Bumps [assets/syntaxes/02_Extra/SCSS_Sass](https://github.com/braver/SublimeSass) from `bc6332c` to `4868322`.
- [Release notes](https://github.com/braver/SublimeSass/releases)
- [Commits](https://github.com/braver/SublimeSass/compare/bc6332c1be2c5590d334a2a58d3b83a8d07ac7ef...4868322030c3644d6b8cfff68c85849789d9bdb2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:08:29 +01:00
dependabot-preview[bot] aab35e3faa Bump assets/themes/dracula-sublime from 26c57ec to c2de0ac
Bumps [assets/themes/dracula-sublime](https://github.com/dracula/sublime) from `26c57ec` to `c2de0ac`.
- [Release notes](https://github.com/dracula/sublime/releases)
- [Commits](https://github.com/dracula/sublime/compare/26c57ec282abcaa76e57e055f38432bd827ac34e...c2de0acf5af67042393cf70de68013153c043656)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:08:00 +01:00
Martin Nordholts bfa5342331 Also replace 'more' from PAGER with 'less'
But first do some quite significant refactorings to keep the code clean
and easy to understand.
2020-12-30 17:59:30 +01:00
Martin Nordholts c0d945c0ac Allow clippy::style lints
Turns out GitHub is clever enough to pick up clippy warnings from us
just running it, and showing them in PRs under a "Unchanged files with
check annotations (beta)" header.

The only warnings currently shown are style warnings, and we agreed we
don't want to risk putting off contributors over style issues. So
explicitly allow (don't warn in the logs for) this category of clippy
lints.

This means that the only clippy categories left that prints warnings
(Warn) are:

    clippy::complexity
    clippy::perf

And the only category of lints that fails the CI build (Deny) remains to
be:

    clippy::correctness

See https://rust-lang.github.io/rust-clippy/master/index.html for a
catalog of all lints.
2020-12-30 11:46:56 +01:00
Martin Nordholts 22bdc7c20f When PAGER=most, don't print a warning to stderr, silently use less instead 2020-12-30 08:25:39 +01:00
Ethan P 3ed0081f1f Improve benchmark script to support cargo/config target-dir 2020-12-29 15:07:22 -08:00
sharkdp 6d0e7650c3 Add .resource extension for Robot Framework 2020-12-29 09:04:34 +01:00
Martin Nordholts 552545fe5f Merge remote-tracking branch 'origin/master' into fix-1063 2020-12-28 22:48:52 +01:00
Martin Nordholts dcfe883f4b Simplify and polish pager.rs and related code 2020-12-28 22:39:34 +01:00
Martin Nordholts f45fa5e187 CHANGELOG.md: Add bugfix entry for #614 2020-12-28 22:32:56 +01:00
Martin Nordholts 05e9da390f bat cache --build: Print syntect error message for themes if any
This will fix #614 by making it clear what is wrong by showing the
following error message:

    Failed to load one or more themes from
    '/Users/me/.config/bat/themes' (reason: 'Invalid syntax theme
    settings')

We also need to add a check if theme_dir.exists(), otherwise an absent
dir will seem like an error:

    Failed to load one or more themes from
    '/Users/me/.config/bat/themes' (reason: 'IO error for
    operation on /Users/me/.config/bat/themes: No such file or
    directory (os error 2)')

(This is the same check we already have for syntax_dir.)
2020-12-28 22:32:56 +01:00
Martin Nordholts cc0f8ca813 Merge remote-tracking branch 'origin/master' into fix-1063 2020-12-28 21:57:38 +01:00
Martin Nordholts 9c16571347 bat --list-languages: remove unnecessary format!() call
To trigger/verify the changed code, run

    bat --list-languages   # or -L

This is the last clippy warning in the code that you get if you run

    cargo clippy --all-targets --all-features -- --allow clippy::style

so by fixing it it becomes easier to spot when a new warning is
introduced (that does not belong to the clippy category clippy::style).
And by making it easy to spot new warnings, we increase chance of such
regressions not ending up in the code base.
2020-12-28 20:28:24 +01:00
Martin Nordholts 2765c6ba3b clippy: Only enforce 'correctness' lints, just print the rest
Only the 'correctness' category of lints are 'deny' by default. This is
the only clippy lints we want to enforce for now. The other ones we just
want to print in the logs. So remove any --deny and --allow arguments.
See discussion in #1410.
2020-12-28 14:22:56 +01:00
Martin Nordholts 28f3f3c9c9 Add Clippy linter step to CICD
Run the linter on the minimum supported rust version; otherwise we will
get lint warnings for things that require a too high Rust toolchain
version to fix.

Allow the following checks, since we already violate them our code:
- clippy::new-without-default
- clippy::match-bool
- clippy::if_same_then_else

Eventually we should fix these lint issues and then disallow them to
prevent them from coming back in other places.

The clippy args used is recommended here:
https://github.com/rust-lang/rust-clippy#travis-ci
2020-12-28 14:22:56 +01:00
sharkdp 73d9a95862 Update CHANGELOG 2020-12-28 09:36:49 +01:00
Ensar Sarajčić 9c9a9ac452 Update VimL syntax upstream 2020-12-28 09:33:32 +01:00
Ensar Sarajčić 29ea396c31 Improve VimL regex highlighting
**NOTES:**
- PR is not yet merged in upstream repository (https://github.com/SalGnt/Sublime-VimL/pull/12),
but sublime-syntax file is already updated with changes.
- Updated syntax test files are added as well

This fixes #1064
2020-12-28 09:33:32 +01:00
Ensar Sarajčić 171d215f91 Add case from #1604 to VimL syntax-test source 2020-12-28 09:33:32 +01:00
Ensar Sarajčić cc6109a751 Add syntax highlighting tests for VimL
Adds a syntax highlighting test for VimL
with source file based on parts of my own configuration
changed to cover as much of syntax as possible.

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

Related to #1213
2020-12-28 09:33:32 +01:00
Martin Nordholts 47bb4a9c0f Introduce bat_warning! helper macro
This macro is intended to be package-internal and is not to be
considered part of the public lib API.

Use it in three places to reduce code duplication. However, main reason
for this refactoring is to allow us to fix #1063 without duplicating the
code yet another time.

The macro can also be used for the "Binary content from {} will not be
printed to the terminal" message if that message starts to use eprintln!
instead (if ever).

To trigger/verify the changed code, the following commands can be used:

    cargo run -- --theme=ansi-light tests/examples/single-line.txt
    cargo run -- --theme=does-not-exist tests/examples/single-line.txt
    cargo run -- --style=grid,rule tests/examples/single-line.txt
2020-12-28 09:27:40 +01:00
Marco Ieni b149ea91dd Cargo.toml: remove "readme" field 2020-12-28 09:26:44 +01:00
Martin Nordholts 6d1c7d5f57 Fix clippy::if_same_then_else warning in --paging=auto logic 2020-12-28 09:21:27 +01:00
David Peter 07bd7503c5 Update CHANGELOG.md 2020-12-21 21:52:04 +01:00
John Meow 1b5af89ddd Move changelog entry to unreleased 2020-12-21 21:52:04 +01:00
John Meow 3d07dec8fd Use Briles/gruvbox .tmTheme files instead of peaceant's port 2020-12-21 21:52:04 +01:00
Martin Nordholts a63bb08eda Add test 'grid_for_file_without_newline' (for issue #299 fix)
This is a regression test for the fix for issue #299. If that fix is
reverted, currently only one test ('header_padding') fails. But that
test is for a different use case, so add a dedicated regression test for
the particular use case issue #299 is about.
2020-12-21 21:45:34 +01:00
sharkdp e0207f8167 Fix test 2020-12-21 17:05:10 +01:00
Mitchell Kember 3099f51ba7 Add ansi theme to replace ansi-light and ansi-dark
This combines ansi-light and ansi-dark into a single theme that works
with both light and dark backgrounds. Instead of specifying white/black,
the ansi theme uses the terminal's default foreground/background color
by setting alpha=01, i.e. #00000001. This is in addition to the alpha=00
encoding where red contains an ANSI color palette number.

Now, `--theme ansi-light` and `--theme ansi-dark` will print a
deprecation notice and use ansi instead (unless the user has a custom
theme named ansi-light or ansi-dark, which would take precedence).
2020-12-21 17:05:10 +01:00
sharkdp 19e7763f35 Add changelog entry 2020-12-21 09:42:06 +01:00
David Peter 73cff42ec9 Remove commented-out line from Cargo.toml 2020-12-21 09:41:29 +01:00
Lovecraftian Horror b349155f2f Remove repeated contains calls 2020-12-21 09:41:29 +01:00
sharkdp ab4c120ea5 Highlight 'batcat' note in README, see #1420 2020-12-21 09:36:14 +01:00
David Peter 947133d295 Update CHANGELOG.md 2020-12-21 09:24:56 +01:00
Stefan Kunkel bf96e6e642 make bat -L use plain style 2020-12-21 09:24:56 +01:00
Stefan Kunkel cffacad306 make bat -L use pager 2020-12-21 09:24:56 +01:00
David Peter cc7b89faf8 Merge pull request #1440 from Enselic/fix-1438-newline-can-be-added-even-if-style-plain
Don't add artificial newline to last line if --style=plain
2020-12-21 09:24:26 +01:00
chris48s c1e4746d50 change docs dir name to match package name
i.e: docs for bat-musl go in /usr/share/doc/bat-musl
not /usr/share/doc/bat
2020-12-21 09:23:56 +01:00
chris48s 8331eec7fc include changelog in package
in line with debian changelog/release notes guidance
https://www.debian.org/doc/debian-policy/ch-docs.html#changelog-files-and-release-notes
resolves changelog-file-missing-in-native-package
https://lintian.debian.org/tags/changelog-file-missing-in-native-package.html
2020-12-21 09:23:56 +01:00
chris48s 0547068ed0 include years in copyright notice
This brings the copyright notice into line with the expected format
resolves copyright-without-copyright-notice
https://lintian.debian.org/tags/copyright-without-copyright-notice.html
2020-12-21 09:23:56 +01:00
chris48s 18d8389785 ensure copyright is mode 644
resolves non-standard-file-perm
https://lintian.debian.org/tags/non-standard-file-perm.html
2020-12-21 09:23:56 +01:00
chris48s 165d25d941 remove leading article from description
resolves description-synopsis-starts-with-article
https://lintian.debian.org/tags/description-synopsis-starts-with-article.html
2020-12-21 09:23:56 +01:00
chris48s c4fb77b042 invoke gzip with -n
resolves package-contains-timestamped-gzip
https://lintian.debian.org/tags/package-contains-timestamped-gzip.html
2020-12-21 09:23:56 +01:00
VeryTastyTomato 973ea984c8 fix: warnings of ShellCheck
SC2155: Declare and assign separately to avoid masking return values.
SC2164: Use cd ... || exit in case cd fails.
SC2230: which is non-standard. Use builtin 'command -v' instead.
2020-12-21 09:08:54 +01:00
sharkdp 3e9afe2974 Add integration test for nonexisting newline 2020-12-21 08:34:22 +01:00
David Peter 73c16574e6 Merge branch 'master' into fix-1438-newline-can-be-added-even-if-style-plain 2020-12-21 08:22:01 +01:00
Martin Nordholts 60e00d49a9 Fix #1443 macOS: regression_test.sh: mktemp: illegal option (#1444)
The macOS version of mktemp does not recognize the --suffix option.
Using pure -d should work since, it seems [1], macOS 10.11 however.

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

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

[1] https://unix.stackexchange.com/questions/30091/fix-or-alternative-for-mktemp-in-os-x
2020-12-21 08:16:49 +01:00
Keith Hall 2d22c705ba Merge pull request #1439 from rsteube/themes-help-interactive-only
only print themes hint in interactive mode
2020-12-19 23:54:41 +02:00
Martin Nordholts 68d525cd8b Don't add artificial newline to last line if --style=plain
This fixes #1438.

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

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

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

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

Note that we also update syntax tests file since a bunch of them had
missing newlines on the last lines.
2020-12-19 10:32:50 +01:00
Martin Nordholts c3fc1b88fe replace_nonprintable: Keep \n around
Since it has a functional role, we can not just replace it, we must keep
it around. This also allows us to simplify the code slightly.

We must fix this before we fix #1438 since otherwise the \n will be
missing with --style=plain, since we will stop adding it if it is
missing.
2020-12-19 10:27:06 +01:00
rsteube 84b0702399 only print themes hint in interactive mode 2020-12-17 10:41:07 +01:00
purvesh-linux11 f3489ffa29 add packaging in unreleased section 2020-12-02 08:46:29 +01:00
purvesh-linux11 8e6ba2a3e1 update changelog file 2020-12-02 08:46:29 +01:00
purvesh-linux11 48e799e7a6 changing snap name to batcat 2020-12-02 08:46:29 +01:00
purvesh-linux11 bc01999f0d update chagelog.md 2020-12-02 08:46:29 +01:00
purvesh-linux11 b0fcb3065f add snap installtion command 2020-12-02 08:46:29 +01:00
sharkdp 94d8cd5100 Minor fixes in CONTRIBUTING.md 2020-12-01 19:38:25 +01:00
dependabot-preview[bot] 5596c6133b Bump assets/syntaxes/02_Extra/ssh-config from 1ddcb32 to 201816b
Bumps [assets/syntaxes/02_Extra/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `1ddcb32` to `201816b`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](https://github.com/robballou/sublimetext-sshconfig/compare/1ddcb320aca1bf31b0048a3109540475d5af64e2...201816b609abf7ccf583f7e888f6dc4121410d70)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 08:05:31 +01:00
dependabot-preview[bot] 304332e380 Bump assets/syntaxes/02_Extra/GraphQL from c9d8458 to 59304d6
Bumps [assets/syntaxes/02_Extra/GraphQL](https://github.com/dncrews/GraphQL-SublimeText3) from `c9d8458` to `59304d6`.
- [Release notes](https://github.com/dncrews/GraphQL-SublimeText3/releases)
- [Commits](https://github.com/dncrews/GraphQL-SublimeText3/compare/c9d84587eb1a6eb34457a875f21b9b1a29306be3...59304d6c7b5019091b532a3197251e393e1db7b2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 08:05:00 +01:00
dependabot-preview[bot] fb989d8c94 Bump assets/syntaxes/02_Extra/Svelte from bf92f5b to aee0676
Bumps [assets/syntaxes/02_Extra/Svelte](https://github.com/corneliusio/svelte-sublime) from `bf92f5b` to `aee0676`.
- [Release notes](https://github.com/corneliusio/svelte-sublime/releases)
- [Commits](https://github.com/corneliusio/svelte-sublime/compare/bf92f5b7b69c8ea641d6822fd6d12cc2d9341956...aee0676f379c0503f9c557e24aa2816575e0a4d1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 08:04:28 +01:00
dependabot-preview[bot] 026220b960 Bump assets/syntaxes/02_Extra/AWK from e593eb6 to e23926e
Bumps [assets/syntaxes/02_Extra/AWK](https://github.com/JohnNilsson/awk-sublime) from `e593eb6` to `e23926e`.
- [Release notes](https://github.com/JohnNilsson/awk-sublime/releases)
- [Commits](https://github.com/JohnNilsson/awk-sublime/compare/e593eb6d42a5f1881ba6c75698bd0fb78a9b8871...e23926eca1b6a0bd0b572b7191aead9f77c748d1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 08:04:08 +01:00
dependabot-preview[bot] 543a253bc1 Bump assets/themes/Coldark from b4a1c74 to e44750b
Bumps [assets/themes/Coldark](https://github.com/ArmandPhilippot/coldark-bat) from `b4a1c74` to `e44750b`.
- [Release notes](https://github.com/ArmandPhilippot/coldark-bat/releases)
- [Commits](https://github.com/ArmandPhilippot/coldark-bat/compare/b4a1c74d8d5bdd136ec530e5905b810272472545...e44750b2a9629dd12d8ed3ad9fd50c77232170b9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 08:03:11 +01:00
dependabot-preview[bot] 8f8e44e87a Bump assert_cmd from 1.0.1 to 1.0.2
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/assert-rs/assert_cmd/releases)
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/assert_cmd/compare/v1.0.1...v1.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 08:02:46 +01:00
Deshdeepak 2da11097f9 Update with termux installation 2020-11-29 16:37:42 +01:00
chris48s d124ebeced only try to publish one set of archives/packages for linux x64 2020-11-29 11:10:37 +01:00
Martin Nordholts 986d0e9777 Ignore PAGER=most by default with a warning to stderr
closes #1063
2020-11-27 06:47:46 +01:00
Martin Nordholts f4202361b4 Add Pager helper with info about where the value comes from
In preparation of fixing issue #1063.
This is a pure refactoring with no intended functional side effects.
2020-11-27 06:42:58 +01:00
sharkdp 6d981498d8 Bump version to 0.17.1 2020-11-24 21:40:11 +01:00
sharkdp bd2e9917da Revert "Add cycle detection integration tests"
This reverts commit ec60d84265.
2020-11-24 21:40:11 +01:00
sharkdp a6810e3353 Revert "Add io cycle detection with clircle"
This reverts commit aa2ae19dfd.
2020-11-24 21:40:11 +01:00
henil 591eba66a3 add new syntax test files 2020-11-23 15:43:58 +01:00
sharkdp a5a9ac83e5 Revert "Update dependencies"
This reverts commit 44a905d135.
2020-11-23 15:03:42 +01:00
sharkdp 15b122a448 Update syntax cache 2020-11-23 14:46:32 +01:00
sharkdp 44a905d135 Update dependencies 2020-11-23 14:44:01 +01:00
sharkdp 8884104e82 Bump version to v0.17.0 2020-11-23 14:41:32 +01:00
David Peter 277cc5fa21 Revert "invoke gzip with -n"
This reverts commit 21de52ebea.
2020-11-23 14:32:30 +01:00
David Peter 0cbd7d583c Revert "remove leading article from description"
This reverts commit 7c730d11c3.
2020-11-23 14:32:30 +01:00
David Peter 3c3fc92863 Revert "ensure copyright is mode 644"
This reverts commit 4a6b4fb632.
2020-11-23 14:32:30 +01:00
David Peter e69d650598 Revert "include years in copyright notice"
This reverts commit 9f91a7d797.
2020-11-23 14:32:30 +01:00
David Peter 9385c81882 Revert "include changelog in package"
This reverts commit 1d4cee11b7.
2020-11-23 14:32:30 +01:00
David Peter 1b84f9f1ae Revert "add Depends line"
This reverts commit 883cc964ae.
2020-11-23 14:32:30 +01:00
David Peter d879fbd8a1 Revert "change docs dir name to match package name"
This reverts commit e4370d8d3f.
2020-11-23 14:32:30 +01:00
sharkdp 1fbdef06aa Use unreachable!(…) 2020-11-23 14:25:01 +01:00
MarcoIeni f5531cc7fa remove all matches 2020-11-23 14:25:01 +01:00
MarcoIeni 2ccff145ed remove unuseful matches expression 2020-11-23 14:25:01 +01:00
MarcoIeni 43b2ee5e71 fix some clippy warnings 2020-11-23 14:25:01 +01:00
sharkdp 51463a4b41 Change Robot syntax name to 'Robot Framework' 2020-11-23 14:16:37 +01:00
Niklas Mohrin 4f0116bee7 Add cycle detection integration tests 2020-11-23 14:06:54 +01:00
Niklas Mohrin 31793cfa62 Add io cycle detection with clircle 2020-11-23 14:06:54 +01:00
Ethan P 6d75540d4e Merge pull request #1389 from nstickney/master
explain how to use bat as cat (no paging) (closes #1383)
2020-11-21 10:13:28 -08:00
Stick ba5cbe208f explain how to use bat as cat (no paging) 2020-11-20 11:25:45 -05:00
Janek 2b82203041 Update bug_report.md 2020-11-06 21:45:25 +01:00
sharkdp 35da065445 Add zsh completion fix to CHANGELOG 2020-11-06 21:25:27 +01:00
dependabot-preview[bot] 12a1fe3ad4 Bump git2 from 0.13.11 to 0.13.12
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.11 to 0.13.12.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.11...0.13.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:53:22 +01:00
dependabot-preview[bot] 91057f2a09 Bump assets/syntaxes/02_Extra/Terraform from 64208ea to 54d8350
Bumps [assets/syntaxes/02_Extra/Terraform](https://github.com/alexlouden/Terraform.tmLanguage) from `64208ea` to `54d8350`.
- [Release notes](https://github.com/alexlouden/Terraform.tmLanguage/releases)
- [Commits](https://github.com/alexlouden/Terraform.tmLanguage/compare/64208ea816d940e4b9c93f4a6b67d64c02a09825...54d8350c3c5929c921ea7561c932aa15e7d96c48)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:51:21 +01:00
dependabot-preview[bot] 15060f00a5 Bump assets/syntaxes/02_Extra/Elixir from 4ee539b to 4fb0189
Bumps [assets/syntaxes/02_Extra/Elixir](https://github.com/princemaple/elixir-sublime-syntax) from `4ee539b` to `4fb0189`.
- [Release notes](https://github.com/princemaple/elixir-sublime-syntax/releases)
- [Commits](https://github.com/princemaple/elixir-sublime-syntax/compare/4ee539b43d82388f449535f7316d69f5dfeaabb5...4fb01891dd17434dde42887bc821917a30f4e010)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:49:46 +01:00
dependabot-preview[bot] 1a82a03d5d Bump assets/themes/onehalf from 3aa42a3 to 8992311
Bumps [assets/themes/onehalf](https://github.com/sonph/onehalf) from `3aa42a3` to `8992311`.
- [Release notes](https://github.com/sonph/onehalf/releases)
- [Commits](https://github.com/sonph/onehalf/compare/3aa42a39ed3cddde0c53976a700b81b8a7067890...89923117bc49dd1e0c6b7fdd34bc6dc4d425fe1f)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:49:30 +01:00
dependabot-preview[bot] 4674105698 Bump assets/syntaxes/02_Extra/CMake from aba96a0 to 21e9698
Bumps [assets/syntaxes/02_Extra/CMake](https://github.com/zyxar/Sublime-CMakeLists) from `aba96a0` to `21e9698`.
- [Release notes](https://github.com/zyxar/Sublime-CMakeLists/releases)
- [Commits](https://github.com/zyxar/Sublime-CMakeLists/compare/aba96a0862369e9f960bb63a38e2d7563ea6475e...21e96989d604d64f12d518f4f17fc71fa3cdc505)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:48:24 +01:00
dependabot-preview[bot] ca3e9a385f Bump serde from 1.0.116 to 1.0.117
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.116 to 1.0.117.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.116...v1.0.117)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:47:31 +01:00
dependabot-preview[bot] f05c222221 Bump serde_yaml from 0.8.13 to 0.8.14
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.13 to 0.8.14.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.8.13...0.8.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:47:18 +01:00
Byron Alley 3dc5fc54df Import syntax regression test for Ruby Haml 2020-11-01 09:46:54 +01:00
Byron Alley bac84b4c8b Add sshd_config syntax highlighting test 2020-11-01 09:38:03 +01:00
dependabot-preview[bot] a5b9a80216 Bump console from 0.12.0 to 0.13.0
Bumps [console](https://github.com/mitsuhiko/console) from 0.12.0 to 0.13.0.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Changelog](https://github.com/mitsuhiko/console/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/console/compare/v0.12.0...v0.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 08:51:43 +01:00
dependabot-preview[bot] 142d5e60ec Bump globset from 0.4.5 to 0.4.6
Bumps [globset](https://github.com/BurntSushi/ripgrep) from 0.4.5 to 0.4.6.
- [Release notes](https://github.com/BurntSushi/ripgrep/releases)
- [Changelog](https://github.com/BurntSushi/ripgrep/blob/master/CHANGELOG.md)
- [Commits](https://github.com/BurntSushi/ripgrep/compare/globset-0.4.5...globset-0.4.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 07:25:24 +01:00
Ethan P 61f947a580 Merge pull request #1276 from tommilligan/style-rule
style: add component 'rule' for horizontal file delimiter
2020-10-31 23:14:00 -07:00
sharkdp c4bbf28862 Highlight ebuild/eclass files with shell syntax
Upstream patch: https://github.com/sublimehq/Packages/pull/2541

closes #1292
2020-10-30 22:33:23 +01:00
David Peter 9befa81e36 Merge pull request #1331 from priner/master
Add Ninja syntax highlighting
2020-10-30 20:06:44 +01:00
David Peter 414c7ac83d Fix trailing newline 2020-10-30 19:37:10 +01:00
David Peter 3a612f063e Merge branch 'master' into master 2020-10-30 19:36:27 +01:00
Ján Priner 9daea73bba Add Ninja highlight test 2020-10-30 19:14:51 +01:00
Nicholas L 8e8131590c Use platform based path concatenation 2020-10-30 08:04:14 +01:00
Nicholas L 3acfe790b9 Add extra themes help to output 2020-10-30 08:04:14 +01:00
sharkdp 877d9120c9 Add a new 'Feature request' section 2020-10-29 20:16:33 +01:00
sharkdp c15b88f250 Add new section on Development and New syntaxes/themes 2020-10-29 20:16:33 +01:00
sharkdp 2889e017cd More detailed description for CHANGELOG section 2020-10-29 20:16:33 +01:00
Adrian Rivera 47ea99090f Style changes on CONTRIBUTORS 2020-10-29 20:16:33 +01:00
Adrian Rivera 1c1ba04c41 Adds a CONTRIBUTORS file 2020-10-29 20:16:33 +01:00
Adrian Rivera 456216ab37 Update CHANGELOG.md 2020-10-29 20:16:33 +01:00
Adrian Rivera 49d7bf8c39 From a TODO in #1211. Add documentation for contributors.
This changes the README file and adds a new section `Contributors`.
This section includes instructions to remind contributors to make an
update to the changelog.
2020-10-29 20:16:33 +01:00
David Peter dade4cc6f3 Add reference to batdiff 2020-10-29 19:37:12 +01:00
Adrian Rivera c747ac181d Updates CHANGELOG entry 2020-10-29 19:33:58 +01:00
Adrian Rivera 9837948c3a Throws an error when bat is being user as pager.
As mentioned on #1334 `bat` should not be used as a value for `pager`,
this change checks both the balue of `bat` provided as a parameter or
as an environment variable.
2020-10-29 19:33:58 +01:00
Kyle Hubert 072fb380d8 Add Svelte as a syntax 2020-10-29 19:33:09 +01:00
Jessé Vermeulen 85594956cf Bring back delta to me to me 2020-10-29 19:22:38 +01:00
Jesse Vermeulen 88eba56607 Add git diff example to Integration docs
Part of https://github.com/sharkdp/bat/issues/448

Thanks to https://github.com/sharkdp/bat/pull/940
2020-10-29 19:22:38 +01:00
Horki cc6cf48256 1213: org mode highlight testing 2020-10-29 19:21:46 +01:00
Horki e571cb553b 1213: nix; added trailing new line 2020-10-25 21:03:30 +01:00
Horki bf9f6e872d 1312: nix; fixed src 2020-10-25 21:03:30 +01:00
Horki 8348c1b746 1213: nix; fix buildInputs arr 2020-10-25 21:03:30 +01:00
Horki 0a9744ac95 add nix highligh 2020-10-25 21:03:30 +01:00
sharkdp 95954b7c57 Update CHANGELOG 2020-10-25 19:09:52 +01:00
Armand Philippot a707f81726 Add Coldark in New Themes 2020-10-25 08:18:55 +01:00
Armand Philippot dae6664555 Update themes.bin - Coldark themes 2020-10-25 08:18:55 +01:00
sharkdp 9dd807344c Ignore 'all_themes_are_present' unit test by default 2020-10-25 08:18:55 +01:00
Armand Philippot 2ecebf8ff2 Add Coldark themes to unit test 2020-10-25 08:18:55 +01:00
Armand Philippot 6d3cb5f99f Add Coldark themes 2020-10-25 08:18:55 +01:00
Dobe Peter ec8072d51f Add PowerShell syntax test
Part of the work for issue #1213.

A short PowerShell script and the corresponding syntax-highlighted output
has been added. The script exhibits many of the peculiarities of the
PowerShell syntax.
2020-10-25 08:04:27 +01:00
Stefano Probst 7a7bb80e23 Add Git Config syntax test file
cc sharkdp/bat#1213
2020-10-24 14:45:54 +02:00
Alan Berndt 99ac5c3045 Add fairly complex nginx config.
This is to contribute to issue #1213.  I took some of the more
complicated servers I am running as examples.  Everything looks to be
correctly highlighted compared to vim's syntax highlighting.
2020-10-24 14:10:51 +02:00
R1tschY efab00a9de Add Git Attributes syntax test 2020-10-24 14:09:52 +02:00
Keith Hall 9ab0801ee1 Revert accidental regex literal -> unicode char change in Manpage syntax 2020-10-24 12:30:25 +02:00
Keith Hall cfdb853ea6 End highlighting of C code in man pages when no longer relevant 2020-10-24 12:30:25 +02:00
Keith Hall 41e857ea16 Highlight C code in all man pages sections 2020-10-24 12:30:25 +02:00
Frank Schmitt 5b2da2b08d #1213 expanded D test file 2020-10-24 12:28:15 +02:00
Frank Schmitt 5e0a608ea6 #1213 added very basic test file for D 2020-10-24 12:28:15 +02:00
R1tschY 3729aefb6f Add QML syntax test 2020-10-24 12:27:16 +02:00
henil 8a2122b4a4 Add test file for /etc/group 2020-10-24 12:26:41 +02:00
Tommaso Pifferi cc6f6fdb1d Add tests for Vue component syntax 2020-10-24 12:25:55 +02:00
Stefano Probst 5ec4936a4f Add Graphviz DOT example files
cc sharkdp/bat#1213
2020-10-24 12:25:09 +02:00
Stefano Probst be84682bcb Add MATLAB syntax test file
cc sharkdp/bat#1213
2020-10-24 12:22:46 +02:00
ubaumann b07f3b4e74 Add Salt State (SLS) test file 2020-10-23 19:40:13 +02:00
Ján Priner fc1f37d3df Add Ninja syntax highlighting 2020-10-20 19:32:14 +02:00
Zachary J. Rollyson a3f037773a feat: include dotfiles (.) in create_highlighted_versions.py search 2020-10-17 17:40:51 +02:00
Zachary J. Rollyson c71c8980cf feat: add syntax sample for dotEnv files 2020-10-17 17:40:51 +02:00
Albert Safin 6bf7b79f13 Fix zsh completion
* Fix completion for -p option (#1320)
* Use prefixed function names to avoid name clash
2020-10-17 16:54:39 +02:00
Keith Hall 5d9adc14e7 Include details about Manpage syntax improvements in the changelog 2020-10-17 16:46:18 +02:00
Keith Hall 575888d81b Fix Manpage C highlighting regression 2020-10-17 16:46:18 +02:00
sharkdp 3539d3e72d Add Manpage syntax regression test for select(2) 2020-10-17 16:46:18 +02:00
Keith Hall bb25111ca9 Improve Manpage syntax 2020-10-17 16:46:18 +02:00
Zachary J. Rollyson 3c756a65a6 feat: add syntax tests for sass 2020-10-17 16:41:11 +02:00
Matthieu Vion 8d574826c9 Added reStructuredText reference for syntax tests 2020-10-16 19:03:20 +02:00
Matthieu Vion 7c7eebbe83 Changed Makefile syntax test source
Now using Makefile from the Redis project
2020-10-16 14:22:59 +02:00
Matthieu Vion 57ad85814b Added Makefile to syntax tests
Make progress in #1213
2020-10-16 14:22:59 +02:00
Benjamin Sinkula 4b2b419400 Add Common Lisp syntax highlighting test files 2020-10-16 08:58:04 +02:00
Celeo b83716f0eb feat: add Nim syntax test file 2020-10-16 08:56:36 +02:00
Keith Hall 6872a4dd7f Fix small grammar mistake/typo in the readme 2020-10-15 09:10:29 +03:00
sharkdp 4d6b2fec13 Add PureScript syntax test 2020-10-14 08:43:11 +02:00
David Peter 57c1a7fd69 Formatting fix 2020-10-14 08:26:02 +02:00
sharkdp bf78b74db4 Minor README improvements 2020-10-14 08:24:20 +02:00
Terence f80fba4d24 Integrate README.md with new assets.md (#1293) 2020-10-14 08:18:11 +02:00
Pablo Santiago Blum de Aguiar d075d2b453 Make logo compatible with light and dark themes 2020-10-14 08:15:08 +02:00
Benjamin Sinkula 5650624822 Add ActionScript 3 syntax test 2020-10-14 08:07:20 +02:00
Saul Blanco Tejero bf07b0be58 Add Perl test file 2020-10-14 07:45:42 +02:00
Sebastian Andersson eeea53759b Add apache httpd.conf example 2020-10-14 07:43:38 +02:00
okezieuc a39f1e0f9b added new syntax highlighting files
I added a sample etc/hosts file and a sample requirements.txt file. I didn't know there was already a sample YAML file because it wasn't ticked in the issue so I added some extra syntax that I had in my own to the previous  example.yaml file.
2020-10-14 07:41:13 +02:00
Tom Milligan 1614f80366 add integration test for grid overriding rule 2020-10-12 09:04:57 +01:00
Tom Milligan e293c58bb0 update man pages 2020-10-12 09:04:57 +01:00
Tom Milligan 3015ebfba1 disable rule when grid enabled, and print warning 2020-10-12 09:04:57 +01:00
Tom Milligan d7da4f5f2b update changelog 2020-10-12 09:04:56 +01:00
Tom Milligan c1af6ff2e6 Add integration test for style rule 2020-10-12 09:04:27 +01:00
Tom Milligan aa4000cb0d style: add component 'rule' for horizontal file delimiter 2020-10-12 09:04:27 +01:00
sharkdp 33128d75f2 Use list.extend(…) 2020-10-11 22:18:14 +02:00
sharkdp bf87f37039 Better ask forgiveness than permission 2020-10-11 22:18:14 +02:00
sharkdp 62e715ff5b Formatting 2020-10-11 22:18:14 +02:00
sharkdp b3903175c8 Auto-format Rust code 2020-10-11 21:57:12 +02:00
Logan Saso de47bd2323 Added newline to multicharacter line of plaintext generation script 2020-10-11 21:31:34 +02:00
Logan Saso 19b55706ee Fixed file location in creation script 2020-10-11 21:31:34 +02:00
Logan Saso 6c68198d19 Updated creation script and README to match generation script 2020-10-11 21:31:34 +02:00
Logan Saso f3c760c25f #1244 Use [].copy and path.exists instead of more cumbersome solutions
#1244 Slightly optimized create_highlighted_versions.py so that it won't walk the source path when it should be skipping the file

#1244 Updated README.md in plaintext source folder

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

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

#1244 Updated plaintext file with command

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

#1244 Added example plaintext file
2020-10-11 21:31:34 +02:00
Ethan P 24fe946c06 Merge pull request #1308 from okezieuc/add-php-file
added php test file
2020-10-11 12:25:15 -07:00
sharkdp de6680bdf2 Move syntax mapping section 2020-10-11 21:11:26 +02:00
David Peter 0a28da0cd0 Small improvement to the syntax mapping section 2020-10-11 21:07:56 +02:00
Ethan P a838ff47b5 Merge pull request #1307 from molcay/master
Add syntax tests for CpuInfo and MemInfo filetype
2020-10-11 11:58:59 -07:00
okezieuc 8bd078caeb updated the php commit
I reverted the commit and prevented the vue submodules from being affected
2020-10-11 19:58:53 +01:00
henil bce304a800 made requested changes 2020-10-11 20:54:37 +02:00
henil 206d3e7b91 fix a typo 2020-10-11 20:54:37 +02:00
henil 4be32cf746 add new section for sytax of file in README.md 2020-10-11 20:54:37 +02:00
henil 4ec6075f81 minor update to specify pattern matching on --map-syntax supports glob matching 2020-10-11 20:54:37 +02:00
henil aa00e0a6b0 fix section 2020-10-11 20:54:37 +02:00
henil bb7fae72c9 add a new syntax section 2020-10-11 20:54:37 +02:00
henil 7bd19640a2 add new --map-syntax example 2020-10-11 20:54:37 +02:00
okezieuc b7271a2a6d Revert "added php test file"
This reverts commit ecde418abb.
2020-10-11 19:53:36 +01:00
okezieuc ecde418abb added php test file
I added a sample test.php file that covers a lot of python syntax
2020-10-11 18:48:29 +01:00
M. Olcay TERCANLI 51036ced9d Add MemInfo syntax test 2020-10-11 19:19:11 +03:00
M. Olcay TERCANLI b6c1ec3a24 Add CpuInfo syntax test 2020-10-11 19:18:53 +03:00
Felipe Garcia 46004001cb Add Clojure syntax test. 2020-10-11 09:48:06 +02:00
Zachary J. Rollyson f10c8ce25e Add GraphQl syntax test sample 2020-10-11 09:46:25 +02:00
Ethan P acc370d345 Merge pull request #1305 from grg121/1213-dockerfile-syntax-highlighting-test
Add basic Dockerfile syntax highlighting test files
2020-10-10 15:20:57 -07:00
grg121 457ab84065 Add basic Dockerfile syntax highlighting test files 2020-10-10 21:43:11 +02:00
Zachary J. Rollyson 3bcb5452aa Add HTML syntax test sample 2020-10-10 19:13:55 +02:00
venky 1f0e53a44d Added BibTeX syntax tests 2020-10-10 19:13:05 +02:00
Benjamin Neff 2d5cf1d3cf Remove gitattributes for .bat/.cmd files to make all testfiles eol=lf 2020-10-09 23:28:08 +02:00
sharkdp a81254ed2a Fix line endings 2020-10-09 23:22:30 +02:00
Akshat Gadhwal fdef133d3d Update test.swift 2020-10-09 23:22:30 +02:00
Akshat Gadhwal fd01f0a0ee ADDED swift test file for syntax highlighting 2020-10-09 23:22:30 +02:00
sharkdp 5b095ed6f3 Fix line endings 2020-10-09 23:18:53 +02:00
Akshat Gadhwal e7a3f34959 ADDED test file for R 2020-10-09 23:18:53 +02:00
Daniel Wolbach 06d0c8f056 add CMake syntax highlighting test 2020-10-09 22:50:47 +02:00
Jacky Hui 4064b8ff14 Added test file for Erlang. 2020-10-09 07:38:08 +02:00
gahag 83ecc3d3ac Update changelog 2020-10-08 18:51:42 +02:00
gahag 6615eceb18 Code review: replace if let with equals operator 2020-10-08 18:51:42 +02:00
gahag 53f5a37f01 Code review
- Replace bools with enums
- Replace short flag with long flag
2020-10-08 18:51:42 +02:00
gahag bbef2f41ec Add -S flag to less when --wrap=never (closes #1255)
Prevent less from wrapping lines by setting the proper flag when `--wrap=never`.
If the user set a custom value for `--pager`, no additional flag is set.
2020-10-08 18:51:42 +02:00
Benjamin Neff b6e729abeb Add Diff syntax highlight test 2020-10-08 12:50:09 +02:00
Filip Czaplicki 5fe98689d4 test: x86-64 Assembly NASM syntax test 2020-10-07 18:00:33 +02:00
Daniel Wolbach 8832a96e82 add GLSL syntax highlighting test 2020-10-07 17:58:33 +02:00
R1tschY 09631ed119 Add Batch syntax test 2020-10-07 07:41:42 +02:00
Spencer Williams 9257c7ce20 Regenerate using a fresh latest build of bat 2020-10-07 07:40:15 +02:00
Spencer Williams b30f9a1677 Add sample Crystal file 2020-10-07 07:40:15 +02:00
Felipe Garcia e6c3f96931 Add Groovy syntax test. 2020-10-07 07:38:52 +02:00
Felipe Garcia 85ff81f238 Add Lua syntax test. 2020-10-07 07:37:19 +02:00
Niklas Sombert 5e0b7f013a Add support for comments after section headers (closes #1259)
There's no canonical definition of what's the INI syntax, but Python's `ConfigParser` supports comments after section headers:

```ini
[section] ; comment
```
2020-10-06 19:58:01 +02:00
Thiago Arrais aa205c6a9f Add CSV syntax hightlighting test 2020-10-06 19:47:33 +02:00
scott.eppler 44bfad24a1 Add Terraform example file for Syntax Highlighting 2020-10-06 19:40:41 +02:00
Gede Wahyu 13e01841ca pascal: add syntax highlight file 2020-10-06 07:44:38 +02:00
sharkdp a999975bc9 Add missing newline 2020-10-06 07:17:10 +02:00
Matthew Zegar edf30e1fa1 Added missing highlighted generated test file 2020-10-06 07:17:10 +02:00
Matthew Zegar f41bf2082a Added CSS syntax highlight file and folder 2020-10-06 07:17:10 +02:00
Ethan P 894d3f1722 Replace SCSS example with unlicensed one 2020-10-06 06:51:51 +02:00
Ethan P 83d96e2bbb Rename SASS tests to SCSS, since they're using SCSS syntax 2020-10-06 06:51:51 +02:00
Ethan P e26ec31463 Add option to specify exact binary in run-benchmarks.sh 2020-10-05 15:47:28 -07:00
Ethan P e3bc41dbe6 Add option to specify bat target in run-benchmarks.sh 2020-10-05 15:47:22 -07:00
uabua 7a180e22ff Add SQL syntax highlighting test 2020-10-05 23:39:01 +02:00
David Peter 3609700b5e Add keith-hall as a maintainer! 2020-10-05 23:11:10 +02:00
Ethan P 389f64df57 Merge pull request #1265 from yimmt/minor-manpage-changes
Fix spelling and use PROJECT_EXECUTABLE more
2020-10-05 13:56:23 -07:00
scott.eppler e85064e4cf Fix mismatch between syntax-test and hightlighted
I needed to re-run `update.sh` script one last time.
2020-10-05 22:03:27 +02:00
scott.eppler dd95f8b5cb Add example file for YAML highlighting
Relates to #1213
2020-10-05 22:03:27 +02:00
Niklas Sombert 975487f630 Add syntax highlighting test file for INI (#1213) 2020-10-05 21:09:24 +02:00
Timmy Xiao 4ba7546c65 Fix spelling and use PROJECT_EXECUTABLE more 2020-10-05 14:45:30 -04:00
sharkdp c97aa55163 Add manually converted syntax 2020-10-05 18:53:49 +02:00
dependabot-preview[bot] 2e1e30705a Bump assets/syntaxes/02_Extra/TypeScript from f21aba5 to 603ebb4
Bumps [assets/syntaxes/02_Extra/TypeScript](https://github.com/Microsoft/TypeScript-Sublime-Plugin) from `f21aba5` to `603ebb4`.
- [Release notes](https://github.com/Microsoft/TypeScript-Sublime-Plugin/releases)
- [Commits](https://github.com/Microsoft/TypeScript-Sublime-Plugin/compare/f21aba57c58e9434df8fc29e1bd2feddfea83b21...603ebb48b162bc453a0bb2cbb0192f3606819f6d)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-05 18:53:49 +02:00
Akshat Gadhwal c92ac809a5 added test.dart 2020-10-05 18:53:35 +02:00
DanielVip3 ec842e8d51 Added a JavaScript test file 2020-10-05 17:26:13 +02:00
henil 6d6e3900c3 add LICENSE 2020-10-05 17:25:37 +02:00
henil 0516a0d7a6 add .gitignore test 2020-10-05 17:25:37 +02:00
henil adbbe158db forgot to update highlighted file after changing 2020-10-05 14:24:16 +02:00
henil 6d2be4a305 License attribution not required 2020-10-05 14:24:16 +02:00
henil 78c9a5d45b add julia test file 2020-10-05 14:24:16 +02:00
Mithil Poojary 5fa1645165 Add Java file test 2020-10-05 13:56:43 +02:00
sharkdp bbf6ec0458 Try to fix syntax-detection tests on Windows 2020-10-05 09:07:57 +02:00
Mithil Poojary e58b20f68d Add C file test 2020-10-05 09:06:47 +02:00
Logan Saso 0ce697daba #1241 Added newline to end of example.xml 2020-10-05 09:02:56 +02:00
Logan Saso a2dfadc6c8 #1213 Added example xml file 2020-10-05 09:02:56 +02:00
Mithil Poojary 6df8b3fe72 Print error message if bat not found on path 2020-10-05 09:01:46 +02:00
Mithil Poojary b623adc6df Add Cpp file test 2020-10-05 09:01:34 +02:00
Matthias Reitinger 2f77da7813 Add /etc/passwd syntax test file 2020-10-05 07:22:54 +02:00
Jonatas 9897c99190 Haskell highligth test 2020-10-05 07:20:00 +02:00
Giorgi Beriashvili aebc30447f Add TeX syntax highlighting test files 2020-10-05 07:19:07 +02:00
Giorgi Beriashvili d2bae54ed0 Add C-Sharp (C#) syntax highlighting test files 2020-10-05 07:15:09 +02:00
Logan Saso 501c369f39 #1213 Added example Markdown file 2020-10-05 07:14:09 +02:00
Filip Czaplicki db3468a815 test: ARM Assembly syntax test file 2020-10-05 07:12:24 +02:00
Filip Czaplicki 3aabed44ce test: Kotlin syntax test file 2020-10-05 07:11:52 +02:00
Ethan P 3af7a6b082 Merge pull request #1226 from mdevlamynck/fix-scripts
Shell script improvements
2020-10-04 13:49:50 -07:00
Daniil Baturin 2e985198c6 Add a protobuf syntax sample. 2020-10-04 21:32:09 +02:00
Celeo 74a2ef8138 test: add Jinja2 syntax test file 2020-10-04 21:31:19 +02:00
Daniil Baturin 88ea21b276 Add an SML syntax test file. 2020-10-04 21:25:05 +02:00
Michael 62397dbd0b test: add newline to JSON syntax source file 2020-10-04 21:22:57 +02:00
Michael 317b086f66 test: add json highlight test 2020-10-04 21:22:57 +02:00
Matthias Devlamynck 12340c1d10 Add change dir to script dir to allow running from project root dir 2020-10-04 19:35:32 +02:00
parksb e747199711 Generate highlighted file on latest version 2020-10-04 15:25:39 +02:00
parksb df7ce883c7 Add texts indicating source to LICENSE.md 2020-10-04 15:25:39 +02:00
parksb eb3e2dca24 Add basic typescript test file 2020-10-04 15:25:39 +02:00
Michael 2d9b936b0a test: add asciidoc highlight test 2020-10-04 15:23:49 +02:00
Matthias Devlamynck 66c7aca2f6 Add elm syntax regression test 2020-10-04 15:19:54 +02:00
Nick Anthony Flueckiger 0c3344d0c4 Add a ruby source code syntax test with source and output 2020-10-04 15:15:34 +02:00
Quang Le 0ac211140a document: Update README.md using cargo install --path 2020-10-04 13:29:52 +02:00
Quang Le 5d490664ca fix: update original file in license 2020-10-04 13:26:05 +02:00
Quang Le d170dd305d Add scala code highlight test 2020-10-04 13:26:05 +02:00
Matthias Devlamynck b50bd58795 Replace #!/bin/bash with #!/usr/bin/env bash to improve compatibility with systems where /bin/bash is not available 2020-10-04 11:51:07 +02:00
David Peter 1da279a290 Add link to original source 2020-10-04 11:25:11 +02:00
Quang Le 100b9a470b test: add go highlight test 2020-10-04 11:25:11 +02:00
Daniil Baturin 43c2b36eaa Make tests/syntax-tests/update.sh shell script executable. 2020-10-04 11:17:23 +02:00
Daniil Baturin 203d0bd8ae Add an OCaml file for syntax tests. 2020-10-04 11:16:15 +02:00
Thomas Gotwig 14092fbadb Apply requested changes regarding Homebrew 🍺 2020-10-04 11:14:32 +02:00
Thomas Gotwig 35ad76771d Mention Homebrew on Linux 🍺🐧 2020-10-04 11:14:32 +02:00
Ethan P 96151c44aa Add a batgrep as Bash script syntax tests 2020-10-04 11:00:57 +02:00
Ethan P 02dcb01120 Add a simple Bash script for syntax tests 2020-10-04 11:00:57 +02:00
Ethan P 51d25e5859 Fix syntax highlighting test update.sh to work on Mac OS 2020-10-04 11:00:57 +02:00
henil b8535689d3 update CHANGELOG.md 2020-10-04 06:33:11 +02:00
henil 8ff890635f add an after help NOTE 2020-10-04 06:33:11 +02:00
José Eduardo 29b6ba0758 Added Elixir file example 2020-10-03 22:33:44 +02:00
adgai19 ca5793dbea Added Basic python test file 2020-10-03 22:32:59 +02:00
Yoichi NAKAYAMA 0fdaa8e745 Remove unnecessary white spaces 2020-10-03 17:51:36 +02:00
Yoichi NAKAYAMA 5a71044d5a Merge the change in fca83bf7 and 6e3e7daf 2020-10-03 17:51:36 +02:00
Yoichi NAKAYAMA 8d091051af Merge the change in 1f177f0a 2020-10-03 17:51:36 +02:00
Yoichi NAKAYAMA 34da1ef9d6 less is just an example for PAGER
Merge the change in b0f88412 and febe3358
2020-10-03 17:51:36 +02:00
谭九鼎 e31e35c46b CI: use checkout v2 2020-10-03 13:13:40 +02:00
sharkdp 6258dda0f8 v0.16.0 2020-10-02 23:27:29 +02:00
sharkdp e6565b2134 Update syntaxes 2020-10-02 22:53:31 +02:00
sharkdp 2f9ecf9044 Bump version to 0.16.0 2020-10-02 20:45:29 +02:00
sharkdp a74d35582e Update CHANGELOG for 0.16 2020-10-02 20:45:29 +02:00
sharkdp 8886faa019 Update dependencies 2020-10-02 20:45:29 +02:00
sharkdp 4bd1b157ae Add comment about Mandoc, closes #1145 2020-10-02 20:45:29 +02:00
sharkdp 1ecb70e082 Update email syntax output 2020-10-01 22:58:30 +02:00
sharkdp 9eed16beb4 Add Email example code 2020-10-01 22:58:30 +02:00
dependabot-preview[bot] c432a064a4 Bump assets/syntaxes/02_Extra/Email from ee3e68f to e89d09d
Bumps [assets/syntaxes/02_Extra/Email](https://github.com/mariozaizar/email.sublime-syntax) from `ee3e68f` to `e89d09d`.
- [Release notes](https://github.com/mariozaizar/email.sublime-syntax/releases)
- [Commits](https://github.com/mariozaizar/email.sublime-syntax/compare/ee3e68fce26cb7ab6ad8c8bf7ca45cfe2a70c07a...e89d09d440f342b753a490918f2c9777c64836b3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 22:58:30 +02:00
Kienyew 2d1a92b7cc Fix zsh completion path 2020-10-01 22:09:59 +02:00
dependabot-preview[bot] cb31127b32 Bump semver from 0.10.0 to 0.11.0
Bumps [semver](https://github.com/steveklabnik/semver) from 0.10.0 to 0.11.0.
- [Release notes](https://github.com/steveklabnik/semver/releases)
- [Commits](https://github.com/steveklabnik/semver/compare/v0.10.0...v0.11.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 21:54:51 +02:00
sharkdp 2beec1f3ea Add comment about missing man page / completions, see #1198 2020-10-01 21:16:10 +02:00
sharkdp 8d531b6436 Update CHANGELOG 2020-10-01 21:09:46 +02:00
sharkdp 30993a8bfc Simplify code 2020-10-01 21:06:37 +02:00
sharkdp 2258fb2713 Remove .unwrap() in insert call to prevent crashes 2020-10-01 21:06:37 +02:00
sharkdp a46191b8bf Remove .unwrap() to prevent crashes 2020-10-01 21:06:37 +02:00
sharkdp 9c4c3e965b Remove non-working unit test 2020-10-01 21:06:37 +02:00
Ahmed El Gabri 31acbe20d3 Support XDG_CONFIG_HOME git config files 2020-10-01 21:06:37 +02:00
Ethan P fd52c01e78 Add custom languages/themes sections to manpage 2020-10-01 20:57:18 +02:00
dependabot-preview[bot] 6ca5543648 Bump assets/syntaxes/02_Extra/Elixir from d223f67 to 4ee539b
Bumps [assets/syntaxes/02_Extra/Elixir](https://github.com/princemaple/elixir-sublime-syntax) from `d223f67` to `4ee539b`.
- [Release notes](https://github.com/princemaple/elixir-sublime-syntax/releases)
- [Commits](https://github.com/princemaple/elixir-sublime-syntax/compare/d223f67612fcc3ee2edd3336ffc285a9ee673406...4ee539b43d82388f449535f7316d69f5dfeaabb5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 20:46:32 +02:00
dependabot-preview[bot] 83afcdcf49 Bump assets/syntaxes/02_Extra/Nginx from dc70858 to 15a1db1
Bumps [assets/syntaxes/02_Extra/Nginx](https://github.com/brandonwamboldt/sublime-nginx) from `dc70858` to `15a1db1`.
- [Release notes](https://github.com/brandonwamboldt/sublime-nginx/releases)
- [Commits](https://github.com/brandonwamboldt/sublime-nginx/compare/dc7085829fb772be2cdb285d4684176322691e9a...15a1db15106fb668b3b1396a725ab002a8ef286c)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 20:46:15 +02:00
dependabot-preview[bot] 59ca0069a6 Bump git2 from 0.13.8 to 0.13.11
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.8 to 0.13.11.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.8...0.13.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 20:38:44 +02:00
dependabot-preview[bot] 6d6184500e Bump serde from 1.0.114 to 1.0.116
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.114 to 1.0.116.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.114...v1.0.116)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 20:37:22 +02:00
sharkdp 1c24ec16e2 Update CHANGELOG 2020-09-30 19:53:36 +02:00
sharkdp 5efc0033a1 Add updated, highlighted output 2020-09-30 19:50:19 +02:00
sharkdp c9237cccab Add AWK file for syntax tests 2020-09-30 19:50:19 +02:00
dependabot-preview[bot] 02cd68db37 Bump assets/syntaxes/02_Extra/AWK from 1ce5f90 to e593eb6
Bumps [assets/syntaxes/02_Extra/AWK](https://github.com/JohnNilsson/awk-sublime) from `1ce5f90` to `e593eb6`.
- [Release notes](https://github.com/JohnNilsson/awk-sublime/releases)
- [Commits](https://github.com/JohnNilsson/awk-sublime/compare/1ce5f90d444d80b12af41bc051507e914730d4ef...e593eb6d42a5f1881ba6c75698bd0fb78a9b8871)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-30 19:50:19 +02:00
sharkdp e4df5643dc Highlight crypttab files with fstab highlighting, closes #1073 2020-09-20 21:43:18 +02:00
sharkdp 89b62d579f Add update script 2020-09-20 21:43:18 +02:00
sharkdp 436a16aba6 Add syntax test for /etc/fstab 2020-09-20 21:43:18 +02:00
sharkdp 32d22f464d Improve --style help text, closes #1146 2020-09-20 21:00:04 +02:00
sharkdp 71b2089384 Code formatting 2020-09-20 20:47:21 +02:00
sharkdp 57aa88a13a Improve --file-name help text, closes #1109 2020-09-20 20:43:30 +02:00
sharkdp 5ef35a10cf Re-enable LTO 2020-09-20 19:55:01 +02:00
sharkdp f84aceec3d Fix unwrap error 2020-09-20 19:54:05 +02:00
sharkdp f18009e5d5 Remove 'liquid' dependency 2020-09-20 19:50:39 +02:00
Kienyew 83c7750656 Use unwrap 2020-09-20 12:14:21 +02:00
Kienyew c477e23fe9 Handle file extension conflicts in --list-languages 2020-09-20 12:14:21 +02:00
Kienyew 31fb7087f1 Revert to previous commit 2020-09-20 12:14:21 +02:00
Kienyew 6bc477e88f Update CHANGELOG.md 2020-09-20 12:14:21 +02:00
Kienyew 52d6701f8f Fix undesired behavior 2020-09-20 12:14:21 +02:00
Kienyew f97634011e Handle file extension conflicts in --list-languages (#1076) 2020-09-20 12:14:21 +02:00
sharkdp a4ffc9d5ed Update CHANGELOG 2020-09-14 11:30:47 +02:00
Kienyew a86f3e5b81 Fix packaging and Use parameterized names for zsh completion 2020-09-14 11:28:09 +02:00
Kienyew d9e8bbcb10 Handle zsh completion when packaging 2020-09-14 11:28:09 +02:00
Kienyew 8b0886ac32 Fix typo 2020-09-14 11:28:09 +02:00
Kienyew aa182dad76 Update CHANGELOG.md 2020-09-14 11:28:09 +02:00
Kienyew 41a1952928 use _describe instead of _values on subcommand 2020-09-14 11:28:09 +02:00
Kienyew 9885d4ebf0 add completion for 'cache' subcommand 2020-09-14 11:28:09 +02:00
Kienyew 222e080ce7 Fix character escape problem 2020-09-14 11:28:09 +02:00
Kienyew 046409d7c9 Add zsh completion 2020-09-14 11:28:09 +02:00
sharkdp 5df449bcf3 Remove unnecessary parenthesis 2020-09-14 11:24:14 +02:00
Alexander Karlis 6017989c4c removed printlns, updated Changelog, updated man 2020-09-14 11:24:14 +02:00
Alexander Karlis d349974089 updated PR based on comments 2020-09-14 11:24:14 +02:00
Alexander Karlis ccdea6a429 remove println 2020-09-14 11:24:14 +02:00
Alexander Karlis fdf11326ef added additional alias for color=always when always-decorations flag is triggered 2020-09-14 11:24:14 +02:00
Alexander Karlis 565a80305c Added new alias for 'decoration=always' 2020-09-14 11:24:14 +02:00
Niklas Mohrin 57a8122a6b Document PR in CHANGELOG.md 2020-09-14 10:36:22 +02:00
Niklas Mohrin bc5517da78 Document manual change in Apache sublime syntax file 2020-09-14 10:36:22 +02:00
Niklas Mohrin ad18f070ae Adds custom mapping for nginx and apache config files 2020-09-14 10:36:22 +02:00
Niklas Mohrin e305402212 Add manually generated sublime syntax file for apache configs 2020-09-14 10:36:22 +02:00
Niklas Mohrin d62b99f543 Adds Apache config file syntax highlighting 2020-09-14 10:36:22 +02:00
Niklas Mohrin 4d8133eb34 Adds Nginx config file syntax highlighting 2020-09-14 10:36:22 +02:00
dependabot-preview[bot] 5cba5b9989 Bump assets/syntaxes/02_Extra/SCSS_Sass from b98a3f3 to bc6332c
Bumps [assets/syntaxes/02_Extra/SCSS_Sass](https://github.com/braver/SublimeSass) from `b98a3f3` to `bc6332c`.
- [Release notes](https://github.com/braver/SublimeSass/releases)
- [Commits](https://github.com/braver/SublimeSass/compare/b98a3f3ccff0134c38544d9bc41caf7f61048cdf...bc6332c1be2c5590d334a2a58d3b83a8d07ac7ef)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-08 21:24:28 +02:00
dependabot-preview[bot] 31f23123ef Bump clap from 2.33.1 to 2.33.3
Bumps [clap](https://github.com/clap-rs/clap) from 2.33.1 to 2.33.3.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v2.33.3/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v2.33.1...v2.33.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-08 21:23:54 +02:00
dependabot-preview[bot] b9dac6ca5d Bump syntect from 4.2.0 to 4.4.0
Bumps [syntect](https://github.com/trishume/syntect) from 4.2.0 to 4.4.0.
- [Release notes](https://github.com/trishume/syntect/releases)
- [Changelog](https://github.com/trishume/syntect/blob/master/CHANGELOG.md)
- [Commits](https://github.com/trishume/syntect/compare/v4.2.0...v4.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-08 20:20:50 +02:00
sharkdp c3f85c8372 Add Less file for syntax tests 2020-09-07 22:25:14 +02:00
sharkdp 7f5d6d9791 Add SASS file for syntax tests 2020-09-07 22:25:14 +02:00
dependabot-preview[bot] 96d4cdb7cb Bump assets/syntaxes/02_Extra/ssh-config from bee376c to 1ddcb32
Bumps [assets/syntaxes/02_Extra/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `bee376c` to `1ddcb32`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](https://github.com/robballou/sublimetext-sshconfig/compare/bee376c89655dc6a2e19468ac3d2874a7709bc9d...1ddcb320aca1bf31b0048a3109540475d5af64e2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-07 22:18:10 +02:00
dependabot-preview[bot] 9f1f3ab5e3 Bump error-chain from 0.12.3 to 0.12.4
Bumps [error-chain](https://github.com/rust-lang-nursery/error-chain) from 0.12.3 to 0.12.4.
- [Release notes](https://github.com/rust-lang-nursery/error-chain/releases)
- [Changelog](https://github.com/rust-lang-nursery/error-chain/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/error-chain/compare/0.12.3...0.12.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-07 22:17:19 +02:00
dependabot-preview[bot] 6e90f17a15 Bump console from 0.11.3 to 0.12.0
Bumps [console](https://github.com/mitsuhiko/console) from 0.11.3 to 0.12.0.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/v0.11.3...v0.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-07 22:17:03 +02:00
dependabot-preview[bot] 5b654480f4 Bump liquid from 0.21.1 to 0.21.4
Bumps [liquid](https://github.com/cobalt-org/liquid-rust) from 0.21.1 to 0.21.4.
- [Release notes](https://github.com/cobalt-org/liquid-rust/releases)
- [Changelog](https://github.com/cobalt-org/liquid-rust/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cobalt-org/liquid-rust/compare/liquid-lib-v0.21.1...v0.21.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-07 22:01:48 +02:00
Nikolay Shuyskiy 803447e2a1 Stylistic, spelling and punctuation fixes in README-ru 2020-08-30 19:47:02 +02:00
apotheon 99c04a8740 update README to clarify disjunctive licensing 2020-08-29 10:59:08 +02:00
chris48s e4370d8d3f change docs dir name to match package name
i.e: docs for bat-musl go in /usr/share/doc/bat-musl
not /usr/share/doc/bat
2020-08-12 06:47:58 +02:00
chris48s 883cc964ae add Depends line
Use dpkg-shlibdeps to work out shared library dependencies
and include them in a "Depends:" line

resolves missing-depends-line
https://lintian.debian.org/tags/missing-depends-line.html
2020-08-12 06:47:58 +02:00
chris48s 1d4cee11b7 include changelog in package
in line with debian changelog/release notes guidance
https://www.debian.org/doc/debian-policy/ch-docs.html#changelog-files-and-release-notes
resolves changelog-file-missing-in-native-package
https://lintian.debian.org/tags/changelog-file-missing-in-native-package.html
2020-08-12 06:47:58 +02:00
chris48s 9f91a7d797 include years in copyright notice
This brings the copyright notice into line with the expected format
resolves copyright-without-copyright-notice
https://lintian.debian.org/tags/copyright-without-copyright-notice.html
2020-08-12 06:47:58 +02:00
chris48s 4a6b4fb632 ensure copyright is mode 644
resolves non-standard-file-perm
https://lintian.debian.org/tags/non-standard-file-perm.html
2020-08-12 06:47:58 +02:00
chris48s 7c730d11c3 remove leading article from description
resolves description-synopsis-starts-with-article
https://lintian.debian.org/tags/description-synopsis-starts-with-article.html
2020-08-12 06:47:58 +02:00
chris48s 21de52ebea invoke gzip with -n
resolves package-contains-timestamped-gzip
https://lintian.debian.org/tags/package-contains-timestamped-gzip.html
2020-08-12 06:47:58 +02:00
Kienyew cab5ddf6ae Fix Typo 2020-08-12 06:45:24 +02:00
dependabot-preview[bot] b3657aef2b Bump assets/syntaxes/02_Extra/ssh-config from 3ec06d0 to bee376c
Bumps [assets/syntaxes/02_Extra/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `3ec06d0` to `bee376c`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](https://github.com/robballou/sublimetext-sshconfig/compare/3ec06d0e9c2d20e7bb31f0149364d25f77503d97...bee376c89655dc6a2e19468ac3d2874a7709bc9d)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-03 21:52:58 +02:00
David Peter b0f8841217 Fix typo 2020-08-03 17:48:16 +02:00
Mehrad Mahmoudian febe335831 Clarified which pager is used in docs 2020-08-03 17:48:16 +02:00
sharkdp cbe68ba84c Make sure that environment is properly set up 2020-08-03 15:59:53 +02:00
sharkdp 9110b00e2e Rebuild bat with new assets 2020-08-03 15:59:53 +02:00
sharkdp 4b012de7db Make test script executable 2020-08-03 15:59:53 +02:00
sharkdp 49370e2175 Add CI job 2020-08-03 15:59:53 +02:00
sharkdp 02a89d8ee8 Add comparison script 2020-08-03 15:59:53 +02:00
sharkdp a70efae79b Add proper CLI 2020-08-03 15:59:53 +02:00
sharkdp 78a681f027 Initial version of syntax regression tests 2020-08-03 15:59:53 +02:00
sharkdp 3a85fd767b Update themes.bin 2020-08-03 11:39:49 +02:00
sharkdp 2ffbe08eb1 Add base16-256 theme to unit test 2020-08-03 11:39:49 +02:00
Mitchell Kember f9d5e81f0e Add new theme: base16-256
Bat already has a base16 theme. The new base16-256 theme is for users
of base16-shell, who configure their terminal with a 256-color variant
of a base16 theme. These variants put some of the base16 colors in
elsewhere in the 256-color table to avoid clobbering bright color slots
(ansi codes 8 to 15) with colors that don't respect the ordinary meaning
of that slot (e.g. bright green in ordinary base16 is not green).

For more details, see https://github.com/chriskempson/base16-shell
2020-08-03 11:39:49 +02:00
dependabot-preview[bot] 00d1267bdd Bump dirs from 2.0.2 to 3.0.1
Bumps [dirs](https://github.com/soc/dirs-rs) from 2.0.2 to 3.0.1.
- [Release notes](https://github.com/soc/dirs-rs/releases)
- [Commits](https://github.com/soc/dirs-rs/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-03 11:38:09 +02:00
dependabot-preview[bot] 001ee34d01 Bump assets/themes/onehalf from 970abdf to 3aa42a3
Bumps [assets/themes/onehalf](https://github.com/sonph/onehalf) from `970abdf` to `3aa42a3`.
- [Release notes](https://github.com/sonph/onehalf/releases)
- [Commits](https://github.com/sonph/onehalf/compare/970abdf26b399100cbb59c6b6e693c4ff877c59d...3aa42a39ed3cddde0c53976a700b81b8a7067890)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-02 22:53:04 +02:00
David Peter db157567fd Use GitHub Actions badge 2020-08-02 21:53:59 +02:00
sharkdp 9e0fab16ff Fix here-doc indentation, part 2 2020-08-02 21:51:23 +02:00
sharkdp a9af4f4ca1 Fix spelling of LICENSE 2020-08-02 21:51:23 +02:00
sharkdp 96d682ca49 Use ansi-dark theme in GA output 2020-08-02 21:51:23 +02:00
sharkdp 7056bea9e0 Add list of languages/themes 2020-08-02 21:51:23 +02:00
sharkdp 63e13d8e54 Colored output 2020-08-02 21:51:23 +02:00
sharkdp 81587b3578 Add checks for all feature combinations 2020-08-02 21:51:23 +02:00
sharkdp 663c7cf1d7 Add bat test run 2020-08-02 21:51:23 +02:00
sharkdp 8705d018fd Fix here-doc indentation 2020-08-02 21:51:23 +02:00
sharkdp 8c33a32256 Add old copyright, control files; add man page and autocompletions 2020-08-02 21:51:23 +02:00
sharkdp 37a720be06 Use recursive checkout 2020-08-02 21:51:23 +02:00
sharkdp aacbdcfc44 Add --path argument 2020-08-02 21:51:23 +02:00
sharkdp 794f3d08f4 Remove --release argument 2020-08-02 21:51:23 +02:00
sharkdp 3147f0536a Add job to run tests with new syntaxes/themes 2020-08-02 21:51:23 +02:00
sharkdp 42de486e94 Adapt job step names 2020-08-02 21:51:23 +02:00
sharkdp 54c9d7cdb2 Remove unneeded i586-* jobs 2020-08-02 21:51:23 +02:00
sharkdp c8e394f3f0 Remove TravisCI and AppVeyor configuration files 2020-08-02 21:51:23 +02:00
sharkdp 4b65e6e443 Change MinSRV => Minimum supported Rust version 2020-08-02 21:51:23 +02:00
sharkdp 5a6c65c589 Disable code-coverage comments 2020-08-02 21:51:23 +02:00
dependabot-preview[bot] 75246fb25b Bump liquid from 0.20.1 to 0.21.1
Bumps [liquid](https://github.com/cobalt-org/liquid-rust) from 0.20.1 to 0.21.1.
- [Release notes](https://github.com/cobalt-org/liquid-rust/releases)
- [Changelog](https://github.com/cobalt-org/liquid-rust/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cobalt-org/liquid-rust/compare/liquid-bin-v0.20.1...liquid-lib-v0.21.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-01 23:06:25 +02:00
dependabot-preview[bot] 0cc1084819 Bump git2 from 0.13.6 to 0.13.8
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.6 to 0.13.8.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.6...0.13.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-01 23:06:14 +02:00
dependabot-preview[bot] 21eedaf76e Bump error-chain from 0.12.2 to 0.12.3
Bumps [error-chain](https://github.com/rust-lang-nursery/error-chain) from 0.12.2 to 0.12.3.
- [Release notes](https://github.com/rust-lang-nursery/error-chain/releases)
- [Changelog](https://github.com/rust-lang-nursery/error-chain/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang-nursery/error-chain/commits/0.12.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-01 10:17:49 +02:00
dependabot-preview[bot] 2656c503a4 Bump predicates from 1.0.4 to 1.0.5
Bumps [predicates](https://github.com/assert-rs/predicates-rs) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases)
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v1.0.4...v1.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-01 09:54:43 +02:00
sharkdp 2b3457e8d6 Update --help text for --color 2020-07-25 22:32:34 +02:00
sharkdp f5d606c4fc Always use 'batcat' in info.sh, if needed 2020-07-25 22:28:22 +02:00
Dash Peters 0e38c1728e Update changelog 2020-07-09 08:15:04 +02:00
Dash Peters 6faf61552e Fix integration test 2020-07-09 08:15:04 +02:00
Dash Peters fcf5ec2f77 Add syntaxes.bin changes 2020-07-09 08:15:04 +02:00
Dash Peters 99819087f1 Switch to "·" (U+00B7) Middle Dot from "•" (U+2022) Bullet 2020-07-09 08:15:04 +02:00
Attila Gonda 3956e96e74 Add clarification about how the indentation works 2020-07-09 08:13:52 +02:00
Attila Gonda a0b89a68d9 Update generated config to reflect pager argument behaviour 2020-07-09 08:13:52 +02:00
AJ ONeal 62014c1094 Make Windows 10 dependencies more clear 2020-07-05 12:20:59 +02:00
David Peter 58dcabffe6 Merge pull request #1082 from LordFlashmeow/master
Add alias for --paging=never
2020-07-02 21:08:23 +02:00
Dash Peters c264f74771 Hide alias in help, update man and completions
A long alias doesn't make sense, since `--paging=never` already exists
2020-07-02 00:07:37 -07:00
Dash Peters f53ea60ed4 Merge remote-tracking branch 'sharkdp/master' 2020-07-02 00:04:55 -07:00
David Peter 05027b7c74 Remove outdated Docker installation method 2020-07-02 08:36:01 +02:00
David Peter 3a62e3d188 Merge pull request #1066 from gsomix/feature/1061-show-all-redirected
Enable non-printable characters for redirected output
2020-07-02 08:21:50 +02:00
David Peter 963d9ee584 Merge pull request #1069 from KyleOndy/add_gruvbox_theme
add peaceant's port of gruvbox themes
2020-07-02 08:07:15 +02:00
David Peter 12e4fd138b Add updated themes.bin
Branch: add_gruvbox_theme
2020-07-02 07:37:00 +02:00
Evgeniy Andreev (gsomix) 3c5ce9f86c Enable non-printable chars for redirected output (#1061) 2020-07-02 09:36:58 +04:00
David Peter 2461d22212 Add new themes to unit test
Branch: add_gruvbox_theme
2020-07-02 07:17:57 +02:00
David Peter 611c6e9c74 Merge branch 'master' into add_gruvbox_theme 2020-07-02 07:02:04 +02:00
dependabot-preview[bot] 38efdb5148 Bump serde_yaml from 0.8.12 to 0.8.13
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.12 to 0.8.13.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.8.12...0.8.13)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-02 06:50:28 +02:00
Dash Peters 5fdeeabb44 Change to name no-paging, add long flag and alias 2020-07-01 21:35:45 -07:00
Dash Peters b0d19752c6 Merge remote-tracking branch 'sharkdp/master' 2020-07-01 21:33:56 -07:00
David Peter a95a577622 Merge pull request #1090 from sharkdp/dependabot/cargo/liquid-0.20.1
Bump liquid from 0.20.0 to 0.20.1
2020-07-01 16:45:51 +02:00
dependabot-preview[bot] ca44a80a42 Bump unicode-width from 0.1.7 to 0.1.8
Bumps [unicode-width](https://github.com/unicode-rs/unicode-width) from 0.1.7 to 0.1.8.
- [Release notes](https://github.com/unicode-rs/unicode-width/releases)
- [Commits](https://github.com/unicode-rs/unicode-width/commits/v0.1.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-01 16:45:35 +02:00
dependabot-preview[bot] bf841e63bd Bump liquid from 0.20.0 to 0.20.1
Bumps [liquid](https://github.com/cobalt-org/liquid-rust) from 0.20.0 to 0.20.1.
- [Release notes](https://github.com/cobalt-org/liquid-rust/releases)
- [Changelog](https://github.com/cobalt-org/liquid-rust/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cobalt-org/liquid-rust/compare/liquid-bin-v0.20.0...liquid-bin-v0.20.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-01 13:02:54 +00:00
dependabot-preview[bot] d357227e57 Bump serde from 1.0.111 to 1.0.114
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.111 to 1.0.114.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.111...v1.0.114)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-01 15:01:17 +02:00
David Peter 993d703ba0 Merge pull request #1088 from sharkdp/dependabot/cargo/wild-2.0.4
Bump wild from 2.0.3 to 2.0.4
2020-07-01 09:11:36 +02:00
dependabot-preview[bot] b449b82191 Bump wild from 2.0.3 to 2.0.4
Bumps [wild](https://gitlab.com/kornelski/wild) from 2.0.3 to 2.0.4.
- [Release notes](https://gitlab.com/kornelski/wild/tags)
- [Commits](https://gitlab.com/kornelski/wild/commits/master)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-01 02:30:41 +00:00
Dash Peters bfac6fd85c Add integration tests 2020-06-30 12:41:50 -07:00
Dash Peters 2575aae945 Add short flag for --paging=never 2020-06-30 12:19:22 -07:00
David Peter b0191cdf2c Merge pull request #1070 from caioalonso/master
Adds GLSL syntax
2020-06-29 06:10:19 +02:00
Caio Alonso fc121f0c87 Defaults *.fs to F# 2020-06-26 21:42:05 -03:00
Sergey fa10b48c71 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey d4db1c6af3 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey f651e2cfca Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 9d9f99c2d1 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 9c8dda1f9d Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 89521a5134 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey d11355f985 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 7ccda6e6e9 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 1de423c78b Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 3943857087 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 27bb5c5976 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 3f614cb274 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 1e407d972f Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 52b3c5fce4 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 5d53273ef4 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey bf9faa9c28 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 0356b7f2c3 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 19c8558152 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey a137db86a4 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 2a28f04e09 Update doc/README-ru.md
Co-authored-by: Evgeniy Andreev <gsomix@gmail.com>
2020-06-26 19:19:26 +02:00
Sergey 8dfa69fde4 Update README-ru.md 2020-06-26 19:19:26 +02:00
Kyle Ondy 541f014d50 add peaceant's port of gruvbox themes
This adds Martin Radimec's [1] port [2] of the gruvbox theme [3].

Brian Reilly (Briles) [4] has a pretty complete collection of gruvbox
ports [5] but they are all in `sublime-color-scheme` which is not yet
supported in bat, see #759 [6].

[1] https://github.com/peaceant
[2] https://github.com/peaceant/gruvbox
[3] https://github.com/morhetz/gruvbox
[4] https://github.com/Briles
[5] https://github.com/Briles/gruvbox
[6] https://github.com/sharkdp/bat/issues/759
2020-06-22 21:25:51 -04:00
Caio Alonso 233d375983 Adds GLSL syntax 2020-06-22 22:19:48 -03:00
t-mangoe b09d245dea modify japanese doc. 2020-06-21 10:58:59 +02:00
Guido Cella 44deddbbfe Highlight pacman hooks as ini 2020-06-21 10:58:32 +02:00
Guido Cella aa8a2b1769 Highlight systemd files as ini 2020-06-21 10:58:32 +02:00
Guido Cella 4cdac180d8 Revert "Highlight systemd files and Pacman hooks as .ini files"
This reverts commit cde430a1e7.
2020-06-21 10:58:32 +02:00
Guido Cella d079bf86b1 Highlight systemd files and Pacman hooks as .ini files 2020-06-21 10:58:32 +02:00
gemmaro 62b4452057 fix typo in Japanese readme
* typo
* more natural expression
2020-06-14 09:18:53 +02:00
David Peter c3ec92a13f Remove outdated Ansible installation method 2020-06-07 22:55:32 +02:00
David Peter c3230a68bb README layout 2020-06-05 22:42:32 +02:00
Sergey Duck d9f163f466 translation update with commit #6e3e7dafcaa840ed72748f2ca1e99e420769907b 2020-06-03 22:21:13 +02:00
Sergey Duck d0da5af810 fix link to translation 2020-06-03 22:21:13 +02:00
Sergey Duck a2b2ec467a minor fixes 2020-06-03 22:21:13 +02:00
Sergey Duck 83b3009f0f full translated 2020-06-03 22:21:13 +02:00
Sergey Duck 4ea70f8409 customization is translated 2020-06-03 22:21:13 +02:00
Sergey Duck 0d2ef02c9e Installation is translated 2020-06-03 22:21:13 +02:00
Sergey Duck 2d7796284b First part of russian translation 2020-06-03 22:21:13 +02:00
sharkdp 19aa878a08 Remove explicit type annotation 2020-06-03 19:44:41 +02:00
sharkdp 9f52012443 Prevent allocation of additional Strings 2020-06-03 19:44:41 +02:00
sharkdp e57e9b6dbb Use 'or_insert_with' 2020-06-03 19:44:41 +02:00
sharkdp 74e8373e34 Return mappings as a slice 2020-06-03 19:44:41 +02:00
sharkdp ec2722d465 Use 'if let' instead of 'match' 2020-06-03 19:44:41 +02:00
Alex Novak 9e2ea5fdd4 Incorporating feedback 2020-06-03 19:44:41 +02:00
Alex Novak 48b4a6a906 Adds a little logic to main to get other mappings from config 2020-06-03 19:44:41 +02:00
Roy Ivy III 92e93682c6 Revert f8ed8aa7 (add test instrumentation to help understand failing tests) per PR feedback/owner request
- reverts commit f8ed8aa74b
2020-06-03 09:13:47 +02:00
Roy Ivy III 99226b745f Revert 9ed8db22c ('windows' pager process execution fix) based on PR feedback/owner request 2020-06-03 09:13:47 +02:00
Roy Ivy III 4840c7cd78 Tests ~ add predicate normalization for tests using echo 2020-06-03 09:13:47 +02:00
Roy Ivy III 71ab4a2058 Tests ~ revert to echo (after fixed 'windows' pager process execution) 2020-06-03 09:13:47 +02:00
Roy Ivy III a2c09b41bc Fix pager process execution under 'windows'
## [why]

For 'windows' platforms, directly spawning a process (eg, called PATHNAME) bypasses the
usual windows shell machinery for determining which process to execute. Specifically,
the extensions in PATHEXT will not be used to determine the final executable. So,
`PATHNAME.bat`, `PATHNAME.cmd`, ... will *not* be executed even if on they exist on the
PATH; and this is counter to the usual expectation of a Windows user. Additionally,
built-in commands, such as `echo` and `dir`, will never be accessible as they do not
have a PATH to execute and, so, will never be found.

To use the usual machinery, giving access to PATHNAME.bat and `echo`, execute the PATHNAME
using the windows shell, eg `cmd /d/c PATHNAME`. Note this may expose the constructed
command line to the windows shell quoting vagaries (sadly, that may be part of the price).

Following Windows standards, the ComSpec environment variable is used to determine which
shell to use, with a fallback to the "modern", built-in `cmd` shell.
2020-06-03 09:13:47 +02:00
Roy Ivy III 0ef792ac1e Tests ~ (fix) always check out test fixtures with known LF line endings
- fixes windows test failures
- avoids `git` platform-dependent conversion of line endings for checkout of test fixtures (*tests/examples/...*)
2020-06-03 09:13:47 +02:00
Roy Ivy III 01af28b781 Tests ~ add instrumentation to visualize text differences in failing tests 2020-06-03 09:13:47 +02:00
Roy Ivy III 3a7743ffc5 Tests ~ echo has portability issues; for CI, replace with printf
- using `echo` on 'windows' platforms requires process execution indirectly via the shell
- `printf` is available on all GHA CI platforms
  - `printf` is *not* available on usual 'windows' platforms; so this is just temporizing, awaiting a true fix
2020-06-03 09:13:47 +02:00
Roy Ivy III 9cc8e52512 Fix compiler warning for 'windows' tests (dead_code) 2020-06-03 09:13:47 +02:00
Roy Ivy III 698a6b5acf Maint/CICD ~ GHA - add additional linux builds and packaging support 2020-06-03 09:13:47 +02:00
Roy Ivy III 7a51c7fd30 Maint/CICD ~ GHA - disable windows-gnu builds with unresolvable linker errors
- `undefined reference to `_imp____acrt_iob_func'`

- ref: <https://github.com/rust-lang/rust/issues/68887#issuecomment-615877016>
- ref: <https://users.rust-lang.org/t/linking-with-gcc-failed-exit-code-1/34124>
- ref: <https://www.gitmemory.com/issue/rust-lang/rust/47048/530376978>
- ref: <https://sourceforge.net/p/mingw-w64/mailman/mingw-w64-public/?limit=250&page=7>
2020-06-03 09:13:47 +02:00
Roy Ivy III 7c3e9f81cb Maint/CI ~ add GitHub-Actions CI (aka GHA) 2020-06-03 09:13:47 +02:00
Alexander Jackson 6e3e7dafca Clarify more wording when reading from stdin
Update the word 'initial' to be 'first', as this is more ubiquitous and
potentially easier for non-native speakers.

Clarify that it is the highlighting that may not work, and the input
will still be displayed regardless.
2020-06-03 09:01:23 +02:00
Alexander Jackson fca83bf79a Clarify stdin syntax highlighting in the README
Clarify the requirements for automatic syntax highlighting when reading
input from stdin. Fixes #1028.
2020-06-03 09:01:23 +02:00
vwvw b8ffb8d463 fix typo in readme 2020-06-02 21:53:50 +02:00
dependabot-preview[bot] 1dae5bbc95 Bump semver from 0.9.0 to 0.10.0
Bumps [semver](https://github.com/steveklabnik/semver) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/steveklabnik/semver/releases)
- [Commits](https://github.com/steveklabnik/semver/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 10:40:05 +02:00
dependabot-preview[bot] 1a1932b67a Bump console from 0.11.2 to 0.11.3
Bumps [console](https://github.com/mitsuhiko/console) from 0.11.2 to 0.11.3.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/0.11.2...v0.11.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 10:39:23 +02:00
dependabot-preview[bot] 8be375e75b Bump git2 from 0.13.5 to 0.13.6
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.5 to 0.13.6.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.5...0.13.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 09:56:01 +02:00
dependabot-preview[bot] e63e4232db Bump serde from 1.0.110 to 1.0.111
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.110 to 1.0.111.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.110...v1.0.111)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 09:55:32 +02:00
sharkdp cef04665eb Manually convert Crystal.sublime-syntax 2020-06-01 09:54:46 +02:00
dependabot-preview[bot] 76569b9527 Bump assets/syntaxes/02_Extra/Crystal from 2ee9d66 to 5e032ff
Bumps [assets/syntaxes/02_Extra/Crystal](https://github.com/crystal-lang-tools/sublime-crystal) from `2ee9d66` to `5e032ff`.
- [Release notes](https://github.com/crystal-lang-tools/sublime-crystal/releases)
- [Commits](https://github.com/crystal-lang-tools/sublime-crystal/compare/2ee9d667aeb9e90846244b5a74e78826014676de...5e032ff5f5d98c9d5d2984a1bd43b43230cd3d0a)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 09:54:46 +02:00
sharkdp 1d46eb8ea3 Manually convert TypeScript.sublime-syntax 2020-06-01 09:50:30 +02:00
dependabot-preview[bot] 6b79ac995e Bump assets/syntaxes/02_Extra/TypeScript from 9cd994a to f21aba5
Bumps [assets/syntaxes/02_Extra/TypeScript](https://github.com/Microsoft/TypeScript-Sublime-Plugin) from `9cd994a` to `f21aba5`.
- [Release notes](https://github.com/Microsoft/TypeScript-Sublime-Plugin/releases)
- [Commits](https://github.com/Microsoft/TypeScript-Sublime-Plugin/compare/9cd994af73c58371a14dbe64fd69fcaa782bb321...f21aba57c58e9434df8fc29e1bd2feddfea83b21)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 09:50:30 +02:00
dependabot-preview[bot] ee928b034e Bump assets/syntaxes/02_Extra/Elixir from 1f010d5 to d223f67
Bumps [assets/syntaxes/02_Extra/Elixir](https://github.com/princemaple/elixir-sublime-syntax) from `1f010d5` to `d223f67`.
- [Release notes](https://github.com/princemaple/elixir-sublime-syntax/releases)
- [Commits](https://github.com/princemaple/elixir-sublime-syntax/compare/1f010d5f63f20aa8eafa57aaaeafe736e0748dca...d223f67612fcc3ee2edd3336ffc285a9ee673406)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 09:31:28 +02:00
dependabot-preview[bot] fc5790eb4a Bump assets/syntaxes/02_Extra/LESS from 3020993 to 44632e1
Bumps [assets/syntaxes/02_Extra/LESS](https://github.com/danro/LESS-sublime) from `3020993` to `44632e1`.
- [Release notes](https://github.com/danro/LESS-sublime/releases)
- [Commits](https://github.com/danro/LESS-sublime/compare/302099365866daca49d25288111696a30a4b4e03...44632e19af8370b39643dd60cd76deb7a13c63ee)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 09:30:26 +02:00
dependabot-preview[bot] 5213ffee0e Bump clap from 2.33.0 to 2.33.1
Bumps [clap](https://github.com/clap-rs/clap) from 2.33.0 to 2.33.1.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v2.33.1/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v2.33.0...v2.33.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 08:44:09 +02:00
sharkdp 5ebf0215c5 Update CHANGELOG 2020-05-29 22:14:20 +02:00
Ethan P 9957da6b93 Remove <font> tag from CHANGELOG.md 2020-05-29 22:13:10 +02:00
Ethan P 342cae2dc6 Change use of 'BatInput' to 'input::Input' 2020-05-29 22:13:10 +02:00
Ethan P d2b26a5f1f Remove unnecessary '-> ()'s 2020-05-29 22:13:10 +02:00
Ethan P 9d08c0102e Replace Input::stdin_as_file with bat-application functions 2020-05-29 22:13:10 +02:00
Ethan P a3357547ea Remove unused with_name for theme preview file 2020-05-29 22:13:10 +02:00
Ethan P 7a9decad70 Remove Input.as_file and add Input::stdin_as_file 2020-05-29 22:13:10 +02:00
Ethan P c4d0d068e4 Update input API example 2020-05-29 22:13:10 +02:00
Ethan P c03a027240 Move PR changes in README to unreleased section 2020-05-29 22:13:10 +02:00
Ethan P a8d7141c4c Improve documentation for Input API 2020-05-29 22:13:10 +02:00
Ethan P 3eb704e016 Update examples 2020-05-29 22:13:10 +02:00
Ethan P 0f06d3b90d Reexport bat::pretty_printer::Input as bat::Input 2020-05-29 22:13:10 +02:00
Ethan P 589c94aa93 Fix regression with --list-themes and --language 2020-05-29 22:13:10 +02:00
Ethan P 798b742617 Refactor InputDescription API into Input API 2020-05-29 22:13:10 +02:00
Ethan P 11a72ab765 Fix a typo 2020-05-29 22:13:10 +02:00
Ethan P 0319149b4d [breaking] Remove special handling for theme previews 2020-05-29 22:13:10 +02:00
Ethan P 2f823d59b0 Add PrettyPrinter::input function 2020-05-29 22:13:10 +02:00
Ethan P 981352992b Add InputDescription API 2020-05-29 22:13:10 +02:00
Ethan P 384ea38bd9 Add documentation to InputDescription 2020-05-29 22:13:10 +02:00
Ryan Tolboom 268c0963b4 Updated AsciiDoc syntax submodule 2020-05-29 22:12:28 +02:00
Ethan P 8b481dd41f Add support for NO_COLOR env var (#1021) 2020-05-28 21:49:10 +02:00
David Peter 6f88ba0e6f Update CHANGELOG.md 2020-05-27 12:04:31 +02:00
sharkdp 9e65ecd03e Updates for v0.15.4 2020-05-27 10:14:32 +02:00
sharkdp 9cb43ef64d Update tests 2020-05-27 10:09:57 +02:00
sharkdp bb18ece8a4 Remove 'Haskell (improved) syntax' 2020-05-27 10:09:57 +02:00
sharkdp 2ab6474761 Add unit test to make sure we are not missing any themes 2020-05-27 09:50:22 +02:00
David Peter fe20328ab7 Revert "Bump assets/themes/Solarized from 87e0109 to 3707f68"
This reverts commit a265242e6e.
2020-05-27 09:50:22 +02:00
sharkdp d84ac09abd Update .gitattributes 2020-05-26 12:14:27 +02:00
sharkdp 69e6cae0a7 Fix CHANGELOG 2020-05-26 08:38:12 +02:00
sharkdp 302707f3ce Bump version to 0.15.3 2020-05-26 08:11:41 +02:00
sharkdp 2e2043971b Update CHANGELOG for 0.15.3 2020-05-26 08:11:41 +02:00
sharkdp e54e218e3b Update binary assets 2020-05-26 08:11:41 +02:00
sharkdp bd17fd571f Switch from path-absolutize to path_abs
closes #1022
2020-05-26 08:11:26 +02:00
sharkdp 3f6e88b4be Remove dummy line from CHANGELOG 2020-05-25 17:30:19 +02:00
sharkdp 28af18ba27 Bump version to 0.15.2 2020-05-25 17:27:27 +02:00
sharkdp 8f1babf346 Mark 'vcs_modification_markers' as deprecated 2020-05-25 11:51:10 +02:00
sharkdp fa25695b74 Make 'vcs_modification_markers' change non-breaking 2020-05-25 11:51:10 +02:00
sharkdp 943b1f82b6 Fix syntax detection for symlinks
closes #1001
2020-05-24 17:32:43 +02:00
sharkdp b7a09516e7 Update CHANGELOG 2020-05-24 11:30:10 +02:00
sharkdp c4031ad65c Fix syntax detection for files called 'rails'
closes #1008
2020-05-24 11:27:42 +02:00
dependabot-preview[bot] 2eaced4d30 Bump wild from 2.0.2 to 2.0.3
Bumps [wild](https://gitlab.com/kornelski/wild) from 2.0.2 to 2.0.3.
- [Release notes](https://gitlab.com/kornelski/wild/tags)
- [Commits](https://gitlab.com/kornelski/wild/commits/master)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-24 10:51:02 +02:00
dependabot-preview[bot] bdea2fe94c Bump serde from 1.0.106 to 1.0.110
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.106 to 1.0.110.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.106...v1.0.110)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-24 10:50:48 +02:00
dependabot-preview[bot] c96ff30876 Bump serde_yaml from 0.8.11 to 0.8.12
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.8.11 to 0.8.12.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.8.11...0.8.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-24 10:48:31 +02:00
dependabot-preview[bot] 4c100cffdb Bump shell-words from 0.1.0 to 1.0.0
Bumps [shell-words](https://github.com/tmiasko/shell-words) from 0.1.0 to 1.0.0.
- [Release notes](https://github.com/tmiasko/shell-words/releases)
- [Commits](https://github.com/tmiasko/shell-words/commits/v1.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-24 10:41:50 +02:00
sharkdp d6abad908a Update README and CHANGELOG, see #650 2020-05-24 10:01:53 +02:00
dependabot-preview[bot] f1129189ea Bump syntect from 4.1.1 to 4.2.0
Bumps [syntect](https://github.com/trishume/syntect) from 4.1.1 to 4.2.0.
- [Release notes](https://github.com/trishume/syntect/releases)
- [Changelog](https://github.com/trishume/syntect/blob/master/CHANGELOG.md)
- [Commits](https://github.com/trishume/syntect/compare/v4.1.1...v4.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-24 10:00:15 +02:00
sharkdp 7e84477408 Add CHANGELOG entry 2020-05-19 06:40:24 +02:00
sharkdp 6b86ab5cd0 Move syntax to 02_Extra folder 2020-05-19 06:40:24 +02:00
Cooper Pierce 5074b96cd5 Add syntax highlighting for SML
Converted from
https://github.com/seanjames777/SML-Language-Definition/blob/master/sml.tmLanguage
and removed `ml` filetype to fix an (assumed) possible conflict with
existing OCaml support.
2020-05-19 06:40:24 +02:00
sharkdp 3094ac90b7 Update CHANGELOG entry 2020-05-16 13:44:26 +02:00
Ethan P 35b6067496 Print error message when invalid syntax is specified 2020-05-16 13:44:26 +02:00
Ethan P 5aa20c090b Refactor HighlightingAssets::get_syntax to return Result type 2020-05-16 13:44:26 +02:00
Ethan P 9c371ed8a2 Merge pull request #997 from eth-p/misc-fixes-1
Allow 'bat' application to built without git feature, remove PrettyPrint git support when feature not enabled.
2020-05-15 16:41:13 -07:00
Ethan P f03ab11623 Update CHANGELOG.md 2020-05-15 14:03:04 -07:00
Ethan P 887e61a99d Allow application to be built without git support
Caveats:
The help descriptions aren't changed with you remove the "git" feature.
2020-05-15 13:58:48 -07:00
Ethan P 0aca8cab0b Remove vcs_modification_markers from PrettyPrinter 'git' feature disabled 2020-05-15 13:58:48 -07:00
Ethan P d08d1f8c45 Merge pull request #985 from eth-p/string-input
Unify syntax detection for all variants of InputKind, fix #983
2020-05-15 13:57:44 -07:00
Ethan P 403ab6e443 Update CHANGELOG.md 2020-05-15 13:23:24 -07:00
Ethan P b8687bc969 Merge branch 'master' of github.com:sharkdp/bat into string-input 2020-05-15 13:22:24 -07:00
Ethan P 9166c9dd35 Remove unnecessary clone in integration tests 2020-05-15 12:29:01 -07:00
Ethan P cc52f79e42 Add helper fn for checking if opened input is theme preview file 2020-05-15 12:20:20 -07:00
Ethan P 59140b458c Consolidate syntax detection behavior for all InputKind types 2020-05-13 02:53:30 -07:00
Ethan P 82981c9663 Add regression test for detected syntax differing for stdin and files 2020-05-13 02:53:19 -07:00
Ethan P 157b8dd848 Rename test for checking if inputkinds are consistent 2020-05-13 00:47:18 -07:00
Ethan P 1fb669ae1a Test that OrdinaryFile consistent with CustomReader 2020-05-13 00:38:56 -07:00
Ethan P 7d07aa395a Change assets.rs tests to use InputKind::CustomReader
This should avoid errors in filesystems that don't
support UTF-8 or invalid UTF-8.
2020-05-13 00:38:41 -07:00
dependabot-preview[bot] c2c7070712 Bump assets/syntaxes/02_Extra/Julia from 0ca4cc2 to 6c0d770
Bumps [assets/syntaxes/02_Extra/Julia](https://github.com/JuliaEditorSupport/Julia-sublime) from `0ca4cc2` to `6c0d770`.
- [Release notes](https://github.com/JuliaEditorSupport/Julia-sublime/releases)
- [Commits](https://github.com/JuliaEditorSupport/Julia-sublime/compare/0ca4cc29907e9476cb603fed00d1d5fd9dc13c9c...6c0d770fc74e6bc037c70cae1f94fe113b60fd95)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 08:31:26 +02:00
dependabot-preview[bot] daf06bb026 Bump assets/syntaxes/02_Extra/Email from fc034fb to ee3e68f
Bumps [assets/syntaxes/02_Extra/Email](https://github.com/mariozaizar/email.sublime-syntax) from `fc034fb` to `ee3e68f`.
- [Release notes](https://github.com/mariozaizar/email.sublime-syntax/releases)
- [Commits](https://github.com/mariozaizar/email.sublime-syntax/compare/fc034fb85ae8a277627f1148769924dbc115dbe4...ee3e68fce26cb7ab6ad8c8bf7ca45cfe2a70c07a)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 08:22:27 +02:00
dependabot-preview[bot] 5b11b1ba47 Bump assets/themes/onehalf from fdcbffe to 970abdf
Bumps [assets/themes/onehalf](https://github.com/sonph/onehalf) from `fdcbffe` to `970abdf`.
- [Release notes](https://github.com/sonph/onehalf/releases)
- [Commits](https://github.com/sonph/onehalf/compare/fdcbffe3175c29bb78d19dcaf9b2a456482fcf1e...970abdf26b399100cbb59c6b6e693c4ff877c59d)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 08:22:13 +02:00
sharkdp ee287447c5 Update CHANGELOG 2020-05-13 08:21:58 +02:00
dependabot-preview[bot] 257f978ceb Bump assets/syntaxes/02_Extra/ssh-config from 16e19d5 to 3ec06d0
Bumps [assets/syntaxes/02_Extra/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `16e19d5` to `3ec06d0`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](https://github.com/robballou/sublimetext-sshconfig/compare/16e19d5da48a7c4d30fdded8ac4c97ff643f5d7b...3ec06d0e9c2d20e7bb31f0149364d25f77503d97)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 08:19:17 +02:00
dependabot-preview[bot] 8e803bdb02 Bump assets/themes/dracula-sublime from 811a634 to 26c57ec
Bumps [assets/themes/dracula-sublime](https://github.com/dracula/sublime) from `811a634` to `26c57ec`.
- [Release notes](https://github.com/dracula/sublime/releases)
- [Commits](https://github.com/dracula/sublime/compare/811a634420a0cb9023bb7afd1c8968a5aaf6a753...26c57ec282abcaa76e57e055f38432bd827ac34e)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 07:58:49 +02:00
dependabot-preview[bot] a265242e6e Bump assets/themes/Solarized from 87e0109 to 3707f68
Bumps [assets/themes/Solarized](https://github.com/braver/Solarized) from `87e0109` to `3707f68`.
- [Release notes](https://github.com/braver/Solarized/releases)
- [Commits](https://github.com/braver/Solarized/compare/87e01090cf5fb821a234265b3138426ae84900e7...3707f68ddc535723c02c65cbc97187c1aa99ad4d)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 07:58:32 +02:00
dependabot-preview[bot] 3aa9b31bda Bump assets/syntaxes/02_Extra/Elm from dfbb8bd to e266d27
Bumps [assets/syntaxes/02_Extra/Elm](https://github.com/elm-community/SublimeElmLanguageSupport) from `dfbb8bd` to `e266d27`.
- [Release notes](https://github.com/elm-community/SublimeElmLanguageSupport/releases)
- [Commits](https://github.com/elm-community/SublimeElmLanguageSupport/compare/dfbb8bdc9a8403092c884d3eb893a270538cfa72...e266d279c8074aa342f106554cfa87ebe839a782)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 07:58:15 +02:00
dependabot-preview[bot] c692c4770a Bump assets/syntaxes/02_Extra/Elixir from 89b3bad to 1f010d5
Bumps [assets/syntaxes/02_Extra/Elixir](https://github.com/princemaple/elixir-sublime-syntax) from `89b3bad` to `1f010d5`.
- [Release notes](https://github.com/princemaple/elixir-sublime-syntax/releases)
- [Commits](https://github.com/princemaple/elixir-sublime-syntax/compare/89b3bada3262bc58e0a5393d12a82f725d5063ad...1f010d5f63f20aa8eafa57aaaeafe736e0748dca)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-13 07:58:02 +02:00
sharkdp 6ceba56288 Add 'mkdir -p …' to Ubuntu instructions, see #982 2020-05-12 18:35:35 +02:00
David Peter 4be66f8b88 Update README.md 2020-05-12 17:42:52 +02:00
David Peter 54a85d98f1 Add instructions for ~/.local/bin/bat symlink 2020-05-12 17:41:15 +02:00
Prat T 491a5a17f3 Update CHANGELOG 2020-05-12 16:37:29 +02:00
Prat T b3373398e8 Remove padding if the header style is not enabled 2020-05-12 16:37:29 +02:00
Prat T 0040fef215 Add padding above headers when no grid 2020-05-12 16:37:29 +02:00
Ethan P 1a6e8d297f Update README to mention batcat for Debian/Ubuntu 2020-05-12 11:08:21 +02:00
Ethan P f39487fca9 Make syntax detection more consistent for Reader and File inputs 2020-05-11 19:44:09 -07:00
sharkdp 2596bfe7a7 Bump version to v0.15.1 2020-05-11 20:30:45 +02:00
sharkdp 406bffa8c8 Update syntaxes and themes 2020-05-11 20:29:49 +02:00
sharkdp 48441b99ef Patch Markdown syntax
closes #963
see #977
2020-05-11 20:22:50 +02:00
sharkdp ce4717144a Update CHANGELOG 2020-05-11 19:33:13 +02:00
Mitchell Kember f59d00d4c7 Fix base16, and combine 00 and 0f alpha encodings
This changes the base16 theme back from #RRGGBB0f to #RRGGBB00,
reverting part of #934. That PR used the 0f encoding to produce ANSI
escape sequences 30-37 and 40-47 rather than 38;5 and 48;5 which require
256-color support. Unfortunately, it resulted in base16 using the wrong
colors becuase ansi_term does not support the bright variants (90-97 and
100-107) so it simply mapped them to the non-bright colors.

This PR makes combines the 00 and 0f alpha encodings into 00, and makes
them use the Color enum for the first 8 colors and Fixed otherwise. This
means the ansi-light and ansi-dark themes will work on terminals without
256-color support, and base16 will render bright colors correctly.
2020-05-11 19:29:19 +02:00
Ethan P dcfdbf82dd Do not warn if both 'bat' and 'batcat' are available in info.sh 2020-05-02 10:39:58 +02:00
Ethan P 0cb884d501 Prevent batcat warning from being in output of info.sh 2020-05-02 10:39:58 +02:00
Ethan P 7bc4020a92 Check for 'batcat' in info.sh 2020-05-02 10:39:58 +02:00
sharkdp 0792195156 Properly add QML submodule 2020-05-01 10:24:19 +02:00
dependabot-preview[bot] 83f24ffcfb Bump git2 from 0.13.3 to 0.13.5
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.3 to 0.13.5.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.3...0.13.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-01 10:21:19 +02:00
pylipp 74ec390770 Add QML syntax
QML.sublime-syntax file generated from Support/QML.tmLanguage using
Sublime's built-in converter.
Fix sharkdp/bat#962
2020-04-30 09:59:14 +02:00
Mario Zaizar 9014ffcfd8 Adds Email (https://github.com/mariozaizar/email.sublime-syntax) 2020-04-29 19:38:39 +02:00
sharkdp 81af375289 Use console 0.11.2, see #955 2020-04-28 21:18:48 +02:00
sharkdp d707eab95c Revert "Use console 0.11.1, see #955"
This reverts commit d64c55ef11.
The build on Windows failed due to two broken tests:

    line_numbers
    tabs_numbers
2020-04-28 09:22:19 +02:00
sharkdp d64c55ef11 Use console 0.11.1, see #955 2020-04-28 00:00:59 +02:00
sharkdp 2b1d53fb27 Add '--locked' flag to all 'cargo install' commands 2020-04-27 23:43:18 +02:00
sharkdp bf696f58c8 Pin version of console to 0.10.0 2020-04-27 23:37:06 +02:00
sharkdp 296bad8ffd Update CHANGELOG 2020-04-27 22:01:41 +02:00
sharkdp 94310af30c Add Fortran syntax, closes #957 2020-04-27 21:45:36 +02:00
sharkdp 38c096bf79 Update CHANGELOG 2020-04-25 15:19:42 +02:00
526 changed files with 39999 additions and 3247 deletions
+1
View File
@@ -0,0 +1 @@
comment: false
+1
View File
@@ -0,0 +1 @@
github: [sharkdp, keith-hall, Enselic]
+28 -20
View File
@@ -7,33 +7,41 @@ assignees: ''
---
<!--
Hey there, thanks for creating an issue!
In order to reproduce your issue, we might need to know a little bit more about the environment
which you're running `bat` on.
If you're on Linux or MacOS:
Please run the script at https://github.com/sharkdp/bat/blob/master/diagnostics/info.sh and
paste the output at the bottom of the bug report.
If you're on Windows:
Please tell us about your Windows Version (e.g. "Windows 10 1908") at the
bottom of the bug report.
-->
**What version of `bat` are you using?**
[paste the output of `bat --version` here]
<!-- Hey there, thank you for creating an issue! -->
**Describe the bug you encountered:**
...
**Describe what you expected to happen?**
**What did you expect to happen instead?**
...
**How did you install `bat`?**
apt-get, homebrew, GitHub release, etc.
<!-- apt-get, homebrew, GitHub release, etc. -->
---
[paste the output of `info.sh` here]
**bat version and environment**
<!--
In order to reproduce your issue, please add some information about the environment
in which you're running bat. To do this, run the full `bat` command that demonstrates
the bug, and attach the `--diagnostic` option:
bat [other options and arguments…] --diagnostic
Finally, paste the Markdown output here. Please make sure that it does not reveal any
personal information.
If you are running bat 0.17.1 or older (where --diagnostic is not available), please
run the script at
https://github.com/sharkdp/bat/blob/master/diagnostics/info.sh
(click "Raw" to get the actual source code) and paste the Markdown output here. If you
are on Windows, please let us know your bat version and your Windows version.
-->
-1
View File
@@ -1,2 +1 @@
blank_issues_enabled: true
@@ -7,4 +7,3 @@ assignees: ''
---
-1
View File
@@ -7,4 +7,3 @@ assignees: ''
---
+18
View File
@@ -0,0 +1,18 @@
version: 2
updates:
- package-ecosystem: cargo
directory: "/"
schedule:
interval: monthly
time: "04:00"
timezone: Europe/Berlin
ignore:
- dependency-name: git2
versions:
- 0.13.17
- package-ecosystem: gitsubmodule
directory: "/"
schedule:
interval: monthly
time: "04:00"
timezone: Europe/Berlin
+428
View File
@@ -0,0 +1,428 @@
name: CICD
env:
MIN_SUPPORTED_RUST_VERSION: "1.45.0"
CICD_INTERMEDIATES_DIR: "_cicd-intermediates"
on:
workflow_dispatch:
pull_request:
push:
branches:
- master
tags:
- '*'
jobs:
min_version:
name: Minimum supported rust version
runs-on: ubuntu-20.04
steps:
- name: Checkout source code
uses: actions/checkout@v2
- name: Install rust toolchain (v${{ env.MIN_SUPPORTED_RUST_VERSION }})
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.MIN_SUPPORTED_RUST_VERSION }}
default: true
profile: minimal # minimal component installation (ie, no documentation)
components: clippy, rustfmt
- name: Ensure `cargo fmt` has been run
uses: actions-rs/cargo@v1
with:
command: fmt
args: -- --check
- name: Run clippy (on minimum supported rust version to prevent warnings we can't fix)
uses: actions-rs/cargo@v1
with:
command: clippy
args: --locked --all-targets --all-features
- name: Run tests
uses: actions-rs/cargo@v1
with:
command: test
args: --locked
test_with_new_syntaxes_and_themes:
name: Run tests with updated syntaxes and themes
runs-on: ubuntu-20.04
steps:
- name: Git checkout
uses: actions/checkout@v2
with:
submodules: true # we need all syntax and theme submodules
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
default: true
profile: minimal
- name: Build and install bat
uses: actions-rs/cargo@v1
with:
command: install
args: --locked --path .
- name: Rebuild binary assets (syntaxes and themes)
run: bash assets/create.sh
- name: Build and install bat with updated assets
uses: actions-rs/cargo@v1
with:
command: install
args: --locked --path .
- name: Run unit tests with new syntaxes and themes
uses: actions-rs/cargo@v1
with:
command: test
args: --locked --release
- name: Run ignored-by-default unit tests with new syntaxes and themes
uses: actions-rs/cargo@v1
with:
command: test
args: --locked --release -- --ignored
- name: Syntax highlighting regression test
run: tests/syntax-tests/regression_test.sh
- name: List of languages
run: bat --list-languages
- name: List of themes
run: bat --list-themes
- name: Check documentation
env:
RUSTDOCFLAGS: -D warnings
uses: actions-rs/cargo@v1
with:
command: doc
args: --locked --no-deps --document-private-items --all-features
build:
name: ${{ matrix.job.os }} (${{ matrix.job.target }})
runs-on: ${{ matrix.job.os }}
strategy:
fail-fast: false
matrix:
job:
- { os: ubuntu-20.04, target: arm-unknown-linux-gnueabihf , use-cross: true }
- { os: ubuntu-20.04, target: arm-unknown-linux-musleabihf, use-cross: true }
- { os: ubuntu-20.04, target: aarch64-unknown-linux-gnu , use-cross: true }
- { os: ubuntu-20.04, target: i686-unknown-linux-gnu , use-cross: true }
- { os: ubuntu-20.04, target: i686-unknown-linux-musl , use-cross: true }
- { os: ubuntu-20.04, target: x86_64-unknown-linux-gnu }
- { os: ubuntu-20.04, target: x86_64-unknown-linux-musl , use-cross: true }
- { os: macos-10.15 , target: x86_64-apple-darwin }
# - { os: windows-2019, target: i686-pc-windows-gnu } ## disabled; error: linker `i686-w64-mingw32-gcc` not found
- { os: windows-2019, target: i686-pc-windows-msvc }
- { os: windows-2019, target: x86_64-pc-windows-gnu }
- { os: windows-2019, target: x86_64-pc-windows-msvc }
steps:
- name: Checkout source code
uses: actions/checkout@v2
- name: Install prerequisites
shell: bash
run: |
case ${{ matrix.job.target }} in
arm-unknown-linux-*) sudo apt-get -y update ; sudo apt-get -y install gcc-arm-linux-gnueabihf ;;
aarch64-unknown-linux-gnu) sudo apt-get -y update ; sudo apt-get -y install gcc-aarch64-linux-gnu ;;
esac
- name: Extract crate information
shell: bash
run: |
echo "PROJECT_NAME=$(sed -n 's/^name = "\(.*\)"/\1/p' Cargo.toml | head -n1)" >> $GITHUB_ENV
echo "PROJECT_VERSION=$(sed -n 's/^version = "\(.*\)"/\1/p' Cargo.toml | head -n1)" >> $GITHUB_ENV
echo "PROJECT_MAINTAINER=$(sed -n 's/^authors = \["\(.*\)"\]/\1/p' Cargo.toml)" >> $GITHUB_ENV
echo "PROJECT_HOMEPAGE=$(sed -n 's/^homepage = "\(.*\)"/\1/p' Cargo.toml)" >> $GITHUB_ENV
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: ${{ matrix.job.target }}
override: true
profile: minimal # minimal component installation (ie, no documentation)
- name: Show version information (Rust, cargo, GCC)
shell: bash
run: |
gcc --version || true
rustup -V
rustup toolchain list
rustup default
cargo -V
rustc -V
- name: Build
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: build
args: --locked --release --target=${{ matrix.job.target }}
- name: Strip debug information from executable
id: strip
shell: bash
run: |
# Figure out suffix of binary
EXE_suffix=""
case ${{ matrix.job.target }} in
*-pc-windows-*) EXE_suffix=".exe" ;;
esac;
# Figure out what strip tool to use if any
STRIP="strip"
case ${{ matrix.job.target }} in
arm-unknown-linux-*) STRIP="arm-linux-gnueabihf-strip" ;;
aarch64-unknown-linux-gnu) STRIP="aarch64-linux-gnu-strip" ;;
*-pc-windows-msvc) STRIP="" ;;
esac;
# Setup paths
BIN_DIR="${{ env.CICD_INTERMEDIATES_DIR }}/stripped-release-bin/"
mkdir -p "${BIN_DIR}"
BIN_NAME="${{ env.PROJECT_NAME }}${EXE_suffix}"
BIN_PATH="${BIN_DIR}/${BIN_NAME}"
# Copy the release build binary to the result location
cp "target/${{ matrix.job.target }}/release/${BIN_NAME}" "${BIN_DIR}"
# Also strip if possible
if [ -n "${STRIP}" ]; then
"${STRIP}" "${BIN_PATH}"
fi
# Let subsequent steps know where to find the (stripped) bin
echo ::set-output name=BIN_PATH::${BIN_PATH}
echo ::set-output name=BIN_NAME::${BIN_NAME}
- name: Run tests
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: test
args: --locked --target=${{ matrix.job.target }}
- name: Run bat
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: run
args: --locked --target=${{ matrix.job.target }} -- --paging=never --color=always --theme=ansi Cargo.toml src/config.rs
- name: Show diagnostics (bat --diagnostic)
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: run
args: --locked --target=${{ matrix.job.target }} -- --paging=never --color=always --theme=ansi Cargo.toml src/config.rs --diagnostic
- name: "Feature check: regex-onig"
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: check
args: --locked --target=${{ matrix.job.target }} --verbose --lib --no-default-features --features regex-onig
- name: "Feature check: regex-onig,git"
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: check
args: --locked --target=${{ matrix.job.target }} --verbose --lib --no-default-features --features regex-onig,git
- name: "Feature check: regex-onig,paging"
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: check
args: --locked --target=${{ matrix.job.target }} --verbose --lib --no-default-features --features regex-onig,paging
- name: "Feature check: regex-onig,git,paging"
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: check
args: --locked --target=${{ matrix.job.target }} --verbose --lib --no-default-features --features regex-onig,git,paging
- name: "Feature check: minimal-application"
uses: actions-rs/cargo@v1
with:
use-cross: ${{ matrix.job.use-cross }}
command: check
args: --locked --target=${{ matrix.job.target }} --verbose --no-default-features --features minimal-application
- name: Create tarball
id: package
shell: bash
run: |
PKG_suffix=".tar.gz" ; case ${{ matrix.job.target }} in *-pc-windows-*) PKG_suffix=".zip" ;; esac;
PKG_BASENAME=${PROJECT_NAME}-v${PROJECT_VERSION}-${{ matrix.job.target }}
PKG_NAME=${PKG_BASENAME}${PKG_suffix}
echo ::set-output name=PKG_NAME::${PKG_NAME}
PKG_STAGING="${{ env.CICD_INTERMEDIATES_DIR }}/package"
ARCHIVE_DIR="${PKG_STAGING}/${PKG_BASENAME}/"
mkdir -p "${ARCHIVE_DIR}"
mkdir -p "${ARCHIVE_DIR}/autocomplete"
# Binary
cp "${{ steps.strip.outputs.BIN_PATH }}" "$ARCHIVE_DIR"
# Man page
cp 'target/${{ matrix.job.target }}/release/build/${{ env.PROJECT_NAME }}'-*/out/assets/manual/bat.1 "$ARCHIVE_DIR"
# README, LICENSE and CHANGELOG files
cp "README.md" "LICENSE-MIT" "LICENSE-APACHE" "CHANGELOG.md" "$ARCHIVE_DIR"
# Autocompletion files
cp 'target/${{ matrix.job.target }}/release/build/${{ env.PROJECT_NAME }}'-*/out/assets/completions/bat.bash "$ARCHIVE_DIR/autocomplete/${{ env.PROJECT_NAME }}.bash"
cp 'target/${{ matrix.job.target }}/release/build/${{ env.PROJECT_NAME }}'-*/out/assets/completions/bat.fish "$ARCHIVE_DIR/autocomplete/${{ env.PROJECT_NAME }}.fish"
cp 'target/${{ matrix.job.target }}/release/build/${{ env.PROJECT_NAME }}'-*/out/assets/completions/bat.zsh "$ARCHIVE_DIR/autocomplete/${{ env.PROJECT_NAME }}.zsh"
# base compressed package
pushd "${PKG_STAGING}/" >/dev/null
case ${{ matrix.job.target }} in
*-pc-windows-*) 7z -y a "${PKG_NAME}" "${PKG_BASENAME}"/* | tail -2 ;;
*) tar czf "${PKG_NAME}" "${PKG_BASENAME}"/* ;;
esac;
popd >/dev/null
# Let subsequent steps know where to find the compressed package
echo ::set-output name=PKG_PATH::"${PKG_STAGING}/${PKG_NAME}"
- name: Create Debian package
id: debian-package
shell: bash
if: startsWith(matrix.job.os, 'ubuntu')
run: |
COPYRIGHT_YEARS="2018 - "$(date "+%Y")
DPKG_STAGING="${{ env.CICD_INTERMEDIATES_DIR }}/debian-package"
DPKG_DIR="${DPKG_STAGING}/dpkg"
mkdir -p "${DPKG_DIR}"
DPKG_BASENAME=${PROJECT_NAME}
DPKG_CONFLICTS=${PROJECT_NAME}-musl
case ${{ matrix.job.target }} in *-musl) DPKG_BASENAME=${PROJECT_NAME}-musl ; DPKG_CONFLICTS=${PROJECT_NAME} ;; esac;
DPKG_VERSION=${PROJECT_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_NAME="${DPKG_BASENAME}_${DPKG_VERSION}_${DPKG_ARCH}.deb"
echo ::set-output name=DPKG_NAME::${DPKG_NAME}
# Binary
install -Dm755 "${{ steps.strip.outputs.BIN_PATH }}" "${DPKG_DIR}/usr/bin/${{ steps.strip.outputs.BIN_NAME }}"
# Man page
install -Dm644 'target/${{ matrix.job.target }}/release/build/${{ env.PROJECT_NAME }}'-*/out/assets/manual/bat.1 "${DPKG_DIR}/usr/share/man/man1/${{ env.PROJECT_NAME }}.1"
gzip -n --best "${DPKG_DIR}/usr/share/man/man1/${{ env.PROJECT_NAME }}.1"
# Autocompletion files
install -Dm644 'target/${{ matrix.job.target }}/release/build/${{ env.PROJECT_NAME }}'-*/out/assets/completions/bat.fish "${DPKG_DIR}/usr/share/fish/vendor_completions.d/${{ env.PROJECT_NAME }}.fish"
install -Dm644 'target/${{ matrix.job.target }}/release/build/${{ env.PROJECT_NAME }}'-*/out/assets/completions/bat.zsh "${DPKG_DIR}/usr/share/zsh/vendor-completions/_${{ env.PROJECT_NAME }}"
# README and LICENSE
install -Dm644 "README.md" "${DPKG_DIR}/usr/share/doc/${DPKG_BASENAME}/README.md"
install -Dm644 "LICENSE-MIT" "${DPKG_DIR}/usr/share/doc/${DPKG_BASENAME}/LICENSE-MIT"
install -Dm644 "LICENSE-APACHE" "${DPKG_DIR}/usr/share/doc/${DPKG_BASENAME}/LICENSE-APACHE"
install -Dm644 "CHANGELOG.md" "${DPKG_DIR}/usr/share/doc/${DPKG_BASENAME}/changelog"
gzip -n --best "${DPKG_DIR}/usr/share/doc/${DPKG_BASENAME}/changelog"
cat > "${DPKG_DIR}/usr/share/doc/${DPKG_BASENAME}/copyright" <<EOF
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: ${{ env.PROJECT_NAME }}
Source: ${{ env.PROJECT_HOMEPAGE }}
Files: *
Copyright: ${{ env.PROJECT_MAINTAINER }}
Copyright: $COPYRIGHT_YEARS ${{ env.PROJECT_MAINTAINER }}
License: Apache-2.0 or MIT
License: Apache-2.0
On Debian systems, the complete text of the Apache-2.0 can be found in the
file /usr/share/common-licenses/Apache-2.0.
License: MIT
Permission is hereby granted, free of charge, to any
person obtaining a copy of this software and associated
documentation files (the "Software"), to deal in the
Software without restriction, including without
limitation the rights to use, copy, modify, merge,
publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software
is furnished to do so, subject to the following
conditions:
.
The above copyright notice and this permission notice
shall be included in all copies or substantial portions
of the Software.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
EOF
chmod 644 "${DPKG_DIR}/usr/share/doc/${DPKG_BASENAME}/copyright"
# control file
mkdir -p "${DPKG_DIR}/DEBIAN"
cat > "${DPKG_DIR}/DEBIAN/control" <<EOF
Package: ${DPKG_BASENAME}
Version: ${DPKG_VERSION}
Section: utils
Priority: optional
Maintainer: ${{ env.PROJECT_MAINTAINER }}
Homepage: ${{ env.PROJECT_HOMEPAGE }}
Architecture: ${DPKG_ARCH}
Provides: ${{ env.PROJECT_NAME }}
Conflicts: ${DPKG_CONFLICTS}
Description: cat(1) clone with wings.
A cat(1) clone with syntax highlighting and Git integration.
EOF
DPKG_PATH="${DPKG_STAGING}/${DPKG_NAME}"
echo ::set-output name=DPKG_PATH::${DPKG_PATH}
# build dpkg
fakeroot dpkg-deb --build "${DPKG_DIR}" "${DPKG_PATH}"
- name: "Artifact upload: tarball"
uses: actions/upload-artifact@master
with:
name: ${{ steps.package.outputs.PKG_NAME }}
path: ${{ steps.package.outputs.PKG_PATH }}
- name: "Artifact upload: Debian package"
uses: actions/upload-artifact@master
if: steps.debian-package.outputs.DPKG_NAME
with:
name: ${{ steps.debian-package.outputs.DPKG_NAME }}
path: ${{ steps.debian-package.outputs.DPKG_PATH }}
- name: Check for release
id: is-release
shell: bash
run: |
unset IS_RELEASE ; if [[ $GITHUB_REF =~ ^refs/tags/v[0-9].* ]]; then IS_RELEASE='true' ; fi
echo ::set-output name=IS_RELEASE::${IS_RELEASE}
- name: Publish archives and packages
uses: softprops/action-gh-release@v1
if: steps.is-release.outputs.IS_RELEASE
with:
files: |
${{ steps.package.outputs.PKG_PATH }}
${{ steps.debian-package.outputs.DPKG_PATH }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+2
View File
@@ -2,6 +2,8 @@
**/*.rs.bk
# Generated files
/assets/completions/bat.bash
/assets/completions/bat.fish
/assets/completions/bat.zsh
/assets/manual/bat.1
/assets/metadata.yaml
+64 -13
View File
@@ -61,18 +61,12 @@
[submodule "assets/syntaxes/Puppet"]
path = assets/syntaxes/02_Extra/Puppet
url = https://github.com/russCloak/SublimePuppet
[submodule "assets/syntaxes/CSV"]
path = assets/syntaxes/02_Extra/CSV
url = https://github.com/wadetb/Sublime-Text-Advanced-CSV
[submodule "assets/themes/onehalf"]
path = assets/themes/onehalf
url = https://github.com/sonph/onehalf
[submodule "assets/syntaxes/JavaScript (Babel)"]
path = assets/syntaxes/02_Extra/JavaScript (Babel)
url = https://github.com/babel/babel-sublime
[submodule "assets/syntaxes/Cabal"]
path = assets/syntaxes/02_Extra/Cabal
url = https://github.com/SublimeHaskell/SublimeHaskell
[submodule "assets/syntaxes/Dart"]
path = assets/syntaxes/02_Extra/Dart
url = https://github.com/guillermooo/dart-sublime-bundle
@@ -97,16 +91,9 @@
[submodule "assets/themes/sublime-snazzy"]
path = assets/themes/sublime-snazzy
url = https://github.com/greggb/sublime-snazzy
[submodule "assets/syntaxes/AsciiDoc"]
path = assets/syntaxes/02_Extra/AsciiDoc
url = https://github.com/SublimeText/AsciiDoc.git
[submodule "assets/syntaxes/Assembly (ARM)"]
path = assets/syntaxes/02_Extra/Assembly (ARM)
url = https://github.com/tvi/Sublime-ARM-Assembly
[submodule "assets/syntaxes/syslog-syntax"]
path = assets/syntaxes/02_Extra/Syslog
url = https://github.com/caos21/syslog-syntax.git
branch = master
[submodule "assets/syntaxes/protobuf-syntax-highlighting"]
path = assets/syntaxes/02_Extra/Protobuf
url = https://github.com/VcamX/protobuf-syntax-highlighting.git
@@ -179,3 +166,67 @@
[submodule "assets/themes/Solarized"]
path = assets/themes/Solarized
url = https://github.com/braver/Solarized
[submodule "assets/syntaxes/02_Extra/Fortran"]
path = assets/syntaxes/02_Extra/Fortran
url = https://github.com/315234/SublimeFortran
[submodule "assets/syntaxes/02_Extra/Email"]
path = assets/syntaxes/02_Extra/Email
url = https://github.com/mariozaizar/email.sublime-syntax.git
[submodule "assets/syntaxes/02_Extra/QML"]
path = assets/syntaxes/02_Extra/QML
url = https://github.com/skozlovf/Sublime-QML
[submodule "assets/syntaxes/02_Extra/AsciiDoc"]
path = assets/syntaxes/02_Extra/AsciiDoc
url = https://github.com/asciidoctor/sublimetext-asciidoc.git
[submodule "assets/syntaxes/02_Extra/GLSL"]
path = assets/syntaxes/02_Extra/GLSL
url = https://github.com/euler0/sublime-glsl
[submodule "assets/syntaxes/02_Extra/Nginx"]
path = assets/syntaxes/02_Extra/Nginx
url = https://github.com/brandonwamboldt/sublime-nginx
[submodule "assets/syntaxes/02_Extra/Apache"]
path = assets/syntaxes/02_Extra/Apache
url = https://github.com/colinta/ApacheConf.tmLanguage
[submodule "assets/syntaxes/02_Extra/Ninja"]
path = assets/syntaxes/02_Extra/Ninja
url = https://github.com/pope/SublimeNinja.git
[submodule "assets/syntaxes/02_Extra/Svelte"]
path = assets/syntaxes/02_Extra/Svelte
url = https://github.com/corneliusio/svelte-sublime
[submodule "assets/themes/Coldark"]
path = assets/themes/Coldark
url = https://github.com/ArmandPhilippot/coldark-bat.git
[submodule "assets/themes/gruvbox"]
path = assets/themes/gruvbox
url = https://github.com/subnut/gruvbox-tmTheme.git
branch = bat-source
[submodule "assets/syntaxes/02_Extra/Lean"]
path = assets/syntaxes/02_Extra/Lean
url = https://github.com/leanprover/vscode-lean.git
[submodule "assets/syntaxes/02_Extra/Zig"]
path = assets/syntaxes/02_Extra/Zig
url = https://github.com/ziglang/sublime-zig-language.git
[submodule "assets/syntaxes/02_Extra/gnuplot"]
path = assets/syntaxes/02_Extra/gnuplot
url = https://github.com/hesstobi/sublime_gnuplot
[submodule "assets/syntaxes/02_Extra/SystemVerilog"]
path = assets/syntaxes/02_Extra/SystemVerilog
url = https://github.com/TheClams/SystemVerilog.git
[submodule "assets/themes/visual-studio-dark-plus"]
path = assets/themes/visual-studio-dark-plus
url = https://github.com/vidann1/visual-studio-dark-plus.git
[submodule "assets/syntaxes/02_Extra/SublimeEthereum"]
path = assets/syntaxes/02_Extra/SublimeEthereum
url = https://github.com/davidhq/SublimeEthereum.git
[submodule "assets/syntaxes/02_Extra/Groff"]
path = assets/syntaxes/02_Extra/Groff
url = https://github.com/carsonoid/sublime_man_page_support
[submodule "assets/syntaxes/02_Extra/http-request-response"]
path = assets/syntaxes/02_Extra/http-request-response
url = https://github.com/keith-hall/http-request-response-syntax.git
[submodule "assets/syntaxes/02_Extra/LLVM"]
path = assets/syntaxes/02_Extra/LLVM
url = https://github.com/ioncodes/LLVM.tmBundle
[submodule "assets/syntaxes/02_Extra/Slim"]
path = assets/syntaxes/02_Extra/Slim
url = https://github.com/slim-template/ruby-slim.tmbundle.git
-106
View File
@@ -1,106 +0,0 @@
language: rust
matrix:
include:
# Stable channel.
- os: linux
rust: stable
env: TARGET=x86_64-unknown-linux-gnu
- os: linux
rust: stable
env:
- TARGET=x86_64-unknown-linux-musl
- CC_x86_64_unknown_linux_musl=/usr/bin/musl-gcc
- os: linux
rust: stable
env: TARGET=i686-unknown-linux-gnu
- os: osx
rust: stable
env: TARGET=x86_64-apple-darwin
- os: linux
rust: stable
env:
- TARGET=arm-unknown-linux-gnueabihf
- CC_arm_unknown_linux_gnueabihf=/usr/bin/arm-linux-gnueabihf-gcc-4.8
- CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc-4.8
- os: linux
rust: stable
env:
- TARGET=aarch64-unknown-linux-gnu
- CC_aarch64-unknown-linux-gnu=/usr/bin/aarch64-linux-gnu-gcc-4.8
- CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc-4.8
# Minimum Rust supported channel.
- os: linux
rust: 1.40.0
env: TARGET=x86_64-unknown-linux-gnu
- os: linux
rust: 1.40.0
env:
- TARGET=x86_64-unknown-linux-musl
- CC_x86_64_unknown_linux_musl=/usr/bin/musl-gcc
- os: osx
rust: 1.40.0
env: TARGET=x86_64-apple-darwin
# Disable nightly for now
# # Code formatting check
# - os: linux
# rust: nightly
# # skip the global install step
# install:
# - cargo install --debug --force rustfmt-nightly
# script: cargo fmt -- --check
sudo: required
before_install:
- ci/before_install.bash
env:
global:
# Default target on travis-ci.
# Used as conditional check in the install stage
- HOST=x86_64-unknown-linux-gnu
# Used on the deployment script
- PROJECT_NAME=bat
install:
# prevent target re-add error from rustup
- if [[ $TRAVIS_OS_NAME = linux && $HOST != $TARGET ]]; then rustup target add $TARGET; fi
script:
- ci/script.bash
before_deploy:
- bash ci/before_deploy.bash
deploy:
provider: releases
# NOTE updating the `api_key.secure`
# - go to: https://github.com/settings/tokens/new
# - generate new token using `public_repo` scope
# - encrypt it using: `travis encrypt API_KEY_HERE`
# - paste the output below
api_key:
secure: "GZL8nYk+/MZGEqejpP0UMMGVmwUEdxiF9CflFIGccu+/tznDyHnHOpyJmbH3M5IKWIxa7xFgqOE8pHuD4oQXt4mzyJGB0KMKKEFLW7ckbTYKya5bw0heKznaqGnS0Yz+vpfqYR25eiPFYCz7mDsGsCzH5QZqt3cdn9MDQGu1D0IaxPjuBNH3T9kBblR0ifBd3Diy0JYhiVcMSI3V1rkel18F1yBHO2GQ95hkWxVgjANQnefq5+zdzbx4ki539ewYENShA8N0w6ULJVY9LmWRWJIp90ggOD3JCH6Nz/fBpYBqwfABO6Dr7Csw7IRm7pM4IVkFZS1taiDYFX9thxZh3UTmI4YYtSTPxH9NGV47kxPipbf4vAXFwW+1VcHKMpBzz+5IVsHnk1Pfx9/GZsXbqXM3PUWCStec36Xtqh5vQapDKEg9khkEs4b1X7/E73gvpRuQl9gbnyufSVWgDsXIWqM+0aDbqQz1FpLmVxz6eij0cB9vR+8kbNoe/CEPHPO9ZllvAHseukOeHPzSBd8rILORXaaGmQausXz2wWgSsffUSYz4705P8joI0zFCfmkHjL+kA1ZUx5SxLCc1ID7CFFZChhAxHoPL7xc21snswwr8QeheERdwvuzKNaerBGZEw8dmMMx98YkjftIj65DDySr2mRZuufBQeQpmMhFyIT4="
# for uploading multiple files
file_glob: true
# NOTE explanation on each env variable
# - PROJECT_NAME: name of the project, set on the `env.global` above
# - TRAVIS_TAG: tag name that the build is being deployed for, usually the version number
# - TARGET: target triple of the build
file:
- $PROJECT_NAME-$TRAVIS_TAG-$TARGET.*
- $PROJECT_NAME*.deb
# don't delete artifacts from previous stage
skip_cleanup: true
on:
# deploy only if we push a tag
tags: true
# deploy only on stable channel that has TARGET env variable sets
condition: $TRAVIS_RUST_VERSION = stable && $TARGET != ""
notifications:
email:
on_success: never
+267 -11
View File
@@ -1,15 +1,270 @@
# Upcoming release
# unreleased
## Features
- `$BAT_CONFIG_DIR` is now a recognized environment variable. It has precedence over `$XDG_CONFIG_HOME`, see #1727 (@billrisher)
## Bugfixes
- Python syntax highlighting no longer suffers from abysmal performance in specific scenarios. See #1688 (@keith-hall)
## Other
## New syntaxes
- Load cached assets as fast as integrated assets, see #1753 (@Enselic)
- Greatly reduce startup time in loop-through mode, e.g. when redirecting output. Instead of *50 ms* - *100 ms*, startup takes *5 ms* - *10 ms*. See #1747 (@Enselic)
## Syntaxes
- Groff, see #1685 (@scop)
- HTTP Requests and Responses, see #1748 (@keith-hall)
- LLVM, see #1777 (@ioncodes)
- Highlight for `vimrc` and `gvimrc` files, see #1763 (@SuperSandro2000)
- Syslog highlighting improvements, see #1793 (@scop)
- Added support for `slim` syntax, see #1693 (@mfinelli)
## New themes
## `bat` as a library
- Deprecate `HighlightingAssets::syntaxes()` and `HighlightingAssets::syntax_for_file_name()`. Use `HighlightingAssets::get_syntaxes()` and `HighlightingAssets::get_syntax_for_file_name()` instead. They return a `Result` which is needed for upcoming lazy-loading work to improve startup performance. They also return what `SyntaxSet` the returned `SyntaxReference` belongs to. See #1747, #1755 and #1776 (@Enselic)
# v0.18.2
## Features
- Ignore known backup/template filename suffixes when selecting the syntax, see #1687 (@scop)
## Bugfixes
- Fix for a security vulnerability on Windows. Prior to this release, `bat` would execute programs called `less`/`less.exe` from the current working directory (instead of the one from `PATH`) with priority. An attacker might be able to use this by placing a malicious program in a shared directory where the user would execute `bat`. `bat` users on Windows are advised to upgrade to this version. See #1724 and #1472 (@Ry0taK).
## Other
- Add bash completion, see #1678 (@scop)
- Fix Clippy lints, see #1661 (@mohamed-abdelnour)
- Add syntax highlighting test files, see #1213 and #1668 (@mohamed-abdelnour)
## Syntaxes
- Upgraded Julia syntax to fix a highlighting bug, see #1692
- Added support for `dash` syntax, see #1654 (@mohamed-abdelnour)
- Added support for `XAML` syntax, see #1590 and #1655 (@mohamed-abdelnour)
- Apply `DotENV` syntax also for `.env.default` and `.env.defaults` files, see #1669
# v0.18.1
## Bugfixes
- Mouse support and screen clearing broken for `less` versions with minor version number (581.2), see #1629 and #1639 (@aswild)
## Other
- `Input::ordinary_file` and `Input::with_name` now accept `Path` rather than `OsStr` see #1571 (@matklad)
- The `LESS` environment variable is now included in `bat --diagnostic`, see #1589 (@Enselic)
- Increased min. required Rust version to 1.45
## Syntaxes
- Improved the Syslog syntax highlighting, see #1606 (@keith-hall)
- Replaced "Advanced CSV" with a custom CSV syntax definition written especially for `bat`; see #1574 (@keith-hall)
- Added SystemVerilog file syntax, see #1580 (@SeanMcLoughlin)
- Added Solidity and Vyper syntax, see #1602 (@Ersikan)
## New themes
- Dark+ VS Code theme, see #1588 and #1598 (@PatriotRossii)
# v0.18.0
## Features
- Use a pager when `bat --list-languages` is called, see #1394 (@stku1985)
## Bugfixes
- If the last line doesn't end with a newline character, don't add it if `--style=plain`, see #1438 (@Enselic)
- Only print themes hint in interactive mode (`bat --list-themes`), see #1439 (@rsteube)
- Make ./tests/syntax-tests/regression_test.sh work on recent versions of macOS, see #1443 (@Enselic)
- VimL syntax highlighting fix, see #1450 (@esensar)
- Print an 'Invalid syntax theme settings' error message if a custom theme is broken, see #614 (@Enselic)
- If plain mode is set and wrap is not explicitly opted in, long lines will no be truncated, see #1426
- If `PAGER` (but not `BAT_PAGER` or `--pager`) is `more` or `most`, silently use `less` instead to ensure support for colors, see #1063 (@Enselic)
- If `PAGER` is `bat`, silently use `less` to prevent recursion. For `BAT_PAGER` or `--pager`, exit with error, see #1413 (@Enselic)
- Manpage highlighting fix, see #1511 (@keith-hall)
- `BAT_CONFIG_PATH` ignored by `bat` if non-existent, see #1550 (@sharkdp)
## Other
- Performance improvements, see #1421 (@LovecraftianHorror)
- Added a new `--diagnostic` option to collect information for bug reports, see #1459 (@sharkdp)
- Modified default theme colors to differentiate between a JSON key and a string value, see #1400 (@keith-hall)
- Upped min required Rust version to 1.42
## Syntaxes
- Added Zig syntax, see #1470 (@paulsmith)
- Added Lean syntax, see #1446 (@Julian)
- Added `.resource` extension for Robot Framework files, see #1386
- Added `gnuplot` syntax, see #1431 (@sharkdp)
- Highlight *.pac (Proxy auto-config) files as JavaScript, see #1515 (@sharkdp)
## New themes
- `ansi` replaces `ansi-dark` and `ansi-light`, see #1104 and #1412 (@mk12). **Breaking change:** users that were previously using one of the `ansi-*` themes should switch to `ansi`.
- The Gruvbox theme has been updated, see #1291 (@j0hnmeow). **Breaking change:** users that were previously using `gruvbox` or `gruvbox-white` should update and use `gruvbox-dark`/`gruvbox-light` instead.
## `bat` as a library
- The following `PrettyPrinter` methods have been removed (they were previously deprecated):
- `input_stdin_with_name`
- `input_from_bytes_with_name`
- `input_from_reader_with_name`
- `vcs_modification_markers` (if the `git` feature is not enabled)
# v0.17.1
## Bugfixes
- Running `bat` without arguments fails ("output file is also an input"), see #1396
# v0.17.0
## Features
- Added a new `--style` value, `rule`, which adds a simple horizontal ruled line between files, see #1276 (@tommilligan)
- Pass `-S` ("chop long lines") to `less` if `--wrap=never` is set in `bat`, see #1255 (@gahag)
## Bugfixes
- Detect infinite loop when input and output are the same, see #1193 and #1197 (@niklasmohrin)
- Throw an error when `bat` is being used as `pager`, see #1343 (@adrian-rivera)
- Bash syntax highlighting not selected for `*.ebuild` and `*.eclass` files, see #1292 (@sharkdp)
- Fix `zsh` completion when using `-p`, see #1320 (@xzfc)
## Other
- Add note to refer to see detailed help with `--help` (and vice versa with `-h`), see #1215 (@henil)
- Add a `Contributors` section to `README`, see #1348 (@adrian-rivera)
## Syntaxes
- Manpage syntax highlighting has been improved, see #1315 (@keith-hall)
- Add Svelte file syntax, see #1285 (@kjmph)
## New themes
- Coldark, see #1329 (@armandphilippot)
# v0.16.0
## Features
- Added support for the `NO_COLOR` environment variable, see #1021 and #1031 (@eth-p)
- Added `-P` short flag to disable paging, see #1075 and #1082 (@LordFlashmeow)
- Added `--force-colorization`/`-f` flag to provide an alias for forced color and decoration output, see #1141 (@alexanderkarlis)
## Bugfixes
- Fixed non-printable characters display for redirected output, see #1061 (@gsomix)
- Handle file extension conflicts in `--list-languages`, see #1076 and #1135 (@Kienyew)
## Other
- Switched to "·" (U+00B7) Middle Dot from "•" (U+2022) Bullet for non-printing spaces, see #1056 and #1100 (@LordFlashmeow)
- Added zsh shell completion script, see #1136 (@Kienyew)
- Improved `--help` text (@sharkdp)
- Added custom languages/themes sections to manpage (@eth-p)
## Syntaxes
- Update AsciiDoc syntax, see #1034 (@rxt1077)
- GLSL (@caioalonso)
- Add Nginx and Apache config file syntax, see #1137 (@kjmph, @niklasmohrin)
- Use `fstab` syntax for `crypttab` files, see #1073 (@sharkdp)
- Support syntax highlighting for files in `$XDG_CONFIG_HOME/git/`, see #1191 (@ahmedelgabri)
## New themes
- Gruvbox, see #1069 (@kyleondy)
- base16-256 for [base16-shell](https://github.com/chriskempson/base16-shell) users, see #1111 (@mk12)
## `bat` as a library
- Add APIs to provide `Input` descriptions with `InputDescription` (@eth-p)
- Add function to directly provide `Input`s to `PrettyPrinter` (@eth-p)
- **Breaking:** `Input::theme_preview_file` is no longer available. (@eth-p)
## Packaging
- Removed build dependency on `liquid` (@sharkdp).
# v0.15.4
## Bugfixes
- Added missing Solarized themes, see #1027
- Fixed highlighting bug in Haskell source files, see #1026
# v0.15.3
## Bugfixes
- Cannot run `bat` with relative paths, see #1022
- bat mishighlights Users that start with digits in SSH config, see #984
## New syntaxes
- SML, see #1005 (@kopecs)
## Other
- Some syntaxes and themes have been updated to the latest version
# v0.15.2
## Bugfixes
- Fix syntax detection for files called 'rails', see #1008
- Fix potential errors with syntax detection for symlinked files, see #1001
- `--map-syntax` doesn't work with names provided through `--file-name` (@eth-p)
## Other
- Add padding above headers when not using a grid, see #968 and #981 (@pt2121)
- bat now prints an error if an invalid syntax is specified via `-l` or `--map-syntax`, see #1004 (@eth-p)
## `bat` as a library
- `PrettyPrinter::vcs_modification_markers` has been marked deprecated when building without the `git` feature, see #997 and #1020 (@eth-p, @sharkdp)
## Packaging
- Compilation problems with `onig_sys` on various platforms have been resolved by upgrading to `syntect 4.2`, which includes a new `onig` version that allows to build `onig_sys` without the `bindgen` dependency. This removes the need for `libclang(-dev)` to be installed to compile `bat`. Package maintainers might want to remove `clang` as a build dependency. See #650 for more details.
# v0.15.1
## Bugfixes
- Fix highlighting of Markdown files, see #963 and #977
- Fix `base16` theme (was broken since in v0.14), see #972, #934 and #979 (@mk12).
Users suffering from #865 ("no color for bat in ssh from a Windows client") can use the `ansi-dark` and `ansi-light` themes from now on.
## New syntaxes
- Fortran, see #957
- Email (@mariozaizar)
- QML, see #962 (@pylipp)
# v0.15.0
## Features
@@ -21,6 +276,7 @@
## Bugfixes
- Error message printed in the middle of the output for another file, see #946
- Performance improvements when using custom caches (via `bat cache --build`): the `bat` startup time should now be twice as fast (@lzutao).
## Themes
@@ -315,7 +571,7 @@ You can see the API documentation here: https://docs.rs/bat/
- Added `BAT_CONFIG_PATH` environment variable to set a non-default path for `bat`s configuration file, see #375 (@deg4uss3r)
- Allow for multiple occurences of `--style` to allow for the configuration
- Allow for multiple occurrences of `--style` to allow for the configuration
of styles from the config file, see #367 (@sindreij)
- Allow for multiple `--line-range` arguments, see #23
@@ -435,7 +691,7 @@ You can see the API documentation here: https://docs.rs/bat/
## Bugfixes
- Bat Panics on Haskell Source Code, see #314
- Disable wrapping when `--style=plain`/`-p` is used, see #289
- Disable wrapping when `--style=plain`/`-p` is used, see #289
## Other
@@ -490,7 +746,7 @@ You can see the API documentation here: https://docs.rs/bat/
## Bugfixes
- Fixed panic when running `bat --list-languages | head`, see #232 (@mchlrhw)
- Respect `--color` settings for `--list-themes` and `--list-languages`, see #233
- Respect `--color` settings for `--list-themes` and `--list-languages`, see #233
- Git modifications now work on Windows
## Other
@@ -520,7 +776,7 @@ You can see the API documentation here: https://docs.rs/bat/
## Other
* Extended and cleaned-up `--help` text.
* Added initial version of a man page, see #52
* Added initial version of a man page, see #52
* New README sections: *Development* and *Troubleshooting*, see #220
# v0.5.0
@@ -535,18 +791,18 @@ You can see the API documentation here: https://docs.rs/bat/
## Changes
- The customization of syntax sets and theme sets is now separated. Syntax definitions are now loaded *in addition* to the ones that are stored in the `bat` binary by default. Please refer to these new sections in the README: [Adding new syntaxes](https://github.com/sharkdp/bat#adding-new-syntaxes--language-definitions), [Adding new themes](https://github.com/sharkdp/bat#adding-new-themes), also see #172
- The customization of syntax sets and theme sets is now separated. Syntax definitions are now loaded *in addition* to the ones that are stored in the `bat` binary by default. Please refer to these new sections in the README: [Adding new syntaxes](https://github.com/sharkdp/bat#adding-new-syntaxes--language-definitions), [Adding new themes](https://github.com/sharkdp/bat#adding-new-themes), also see #172
- The color for the filename is now the default foreground color. The colors for the grid and the line numbers is now determined from the syntax highlighting theme, which now also works for light backgrounds, see #178.
## Bugfixes
- Escape Sequences get partially stripped, see #182 (@eth-p)
- Use separate Git repository for snapshot testing, see #165 and #161
- Markdown breaking on JavaScript, see #183
- Markdown breaking on JavaScript, see #183
## Other
- Binaries for armv7 are now provided, see #196
- Binaries for armv7 are now provided, see #196
- `bat` is now in the official [Arch package repositories](https://www.archlinux.org/packages/community/x86_64/bat/).
- Optimizations in the RGB => 8-bit conversion (@mina86)
@@ -556,7 +812,7 @@ You can see the API documentation here: https://docs.rs/bat/
## Bugfixes
- Fix problem with `cargo test` when `bat` is not checked out in a Git repository, see #161
- Fix problem with `cargo test` when `bat` is not checked out in a Git repository, see #161
# v0.4.0
+48
View File
@@ -0,0 +1,48 @@
# Contributing
Thank you for considering to contribute to `bat`!
## Add an entry to the changelog
If your contribution changes the behavior of `bat` (as opposed to a typo-fix
in the documentation), please update the [`CHANGELOG.md`](CHANGELOG.md) file
and describe your changes. This makes the release process much easier and
therefore helps to get your changes into a new `bat` release faster.
The top of the `CHANGELOG` contains a *"unreleased"* section with a few
subsections (Features, Bugfixes, …). Please add your entry to the subsection
that best describes your change.
Entries follow this format:
```
- Short description of what has been changed, see #123 (@user)
```
Here, `#123` is the number of the original issue and/or your pull request.
Please replace `@user` by your GitHub username.
## Development
Please check out the [Development](https://github.com/sharkdp/bat#development)
section in the README.
## Adding a new feature
Please consider opening a
[feature request ticket](https://github.com/sharkdp/bat/issues/new?assignees=&labels=feature-request&template=feature_request.md)
first in order to give us a chance to discuss the feature first.
## Adding new syntaxes/languages or themes
Before you make a pull request that adds a new syntax or theme, please read
the [Customization](https://github.com/sharkdp/bat#customization) section
in the README first.
If you really think that a particular syntax or theme should be added for all
users, please read the corresponding
[documentation](https://github.com/sharkdp/bat/blob/master/doc/assets.md)
first.
Generated
+653 -970
View File
File diff suppressed because it is too large Load Diff
+37 -21
View File
@@ -1,17 +1,13 @@
[package]
authors = ["David Peter <mail@david-peter.de>"]
categories = ["command-line-utilities"]
description="A cat(1) clone with wings."
description = "A cat(1) clone with wings."
homepage = "https://github.com/sharkdp/bat"
license = "MIT/Apache-2.0"
name = "bat"
readme = "README.md"
repository = "https://github.com/sharkdp/bat"
version = "0.15.0"
exclude = [
"assets/syntaxes/*",
"assets/themes/*",
]
version = "0.18.2"
exclude = ["assets/syntaxes/*", "assets/themes/*"]
build = "build.rs"
edition = '2018'
@@ -20,18 +16,28 @@ default = ["application"]
# Feature required for bat the application. Should be disabled when depending on
# bat as a library.
application = [
"bugreport",
"build-assets",
"git",
"minimal-application",
]
# Mainly for developers that want to iterate quickly
# Be aware that the included features might change in the future
minimal-application = [
"atty",
"clap",
"dirs",
"git",
"dirs-next",
"lazy_static",
"liquid",
"paging",
"wild",
"regex-onig",
"wild",
]
git = ["git2"] # Support indicating git modifications
paging = ["shell-words"] # Support applying a pager on the output
# Add "syntect/plist-load" when https://github.com/trishume/syntect/pull/345 reaches us
build-assets = ["syntect/yaml-load", "syntect/dump-create"]
# You need to use one of these if you depend on bat as a library:
regex-onig = ["syntect/regex-onig"] # Use the "oniguruma" regex engine
regex-fancy = ["syntect/regex-fancy"] # Use the rust-only "fancy-regex" engine
@@ -39,18 +45,23 @@ regex-fancy = ["syntect/regex-fancy"] # Use the rust-only "fancy-regex" engine
atty = { version = "0.2.14", optional = true }
ansi_term = "^0.12.1"
ansi_colours = "^1.0"
console = "0.10"
dirs = { version = "2.0", optional = true }
console = "0.14.1"
lazy_static = { version = "1.4", optional = true }
lazycell = "1.0"
wild = { version = "2.0", optional = true }
content_inspector = "0.2.4"
encoding = "0.2"
shell-words = { version = "0.1.0", optional = true }
unicode-width = "0.1.7"
shell-words = { version = "1.0.0", optional = true }
unicode-width = "0.1.8"
globset = "0.4"
serde = { version = "1.0", features = ["derive"] }
serde_yaml = "0.8"
semver = "0.9"
semver = "1.0"
path_abs = { version = "0.5", default-features = false }
clircle = "0.3"
bugreport = { version = "0.4", optional = true }
dirs-next = { version = "2.0.0", optional = true }
grep-cli = "0.1.6"
[dependencies.git2]
version = "0.13"
@@ -58,9 +69,9 @@ optional = true
default-features = false
[dependencies.syntect]
version = "4.1.0"
version = "4.6.0"
default-features = false
features = ["parsing", "yaml-load", "dump-load", "dump-create"]
features = ["parsing", "dump-load"]
[dependencies.clap]
version = "2.33"
@@ -73,12 +84,17 @@ version = "0.12"
default-features = false
[dev-dependencies]
tempdir = "0.3"
assert_cmd = "1.0.1"
assert_cmd = "1.0.8"
serial_test = "0.5.1"
predicates = "2.0.1"
wait-timeout = "0.2.0"
tempfile = "3.2.0"
[target.'cfg(unix)'.dev-dependencies]
nix = "0.22.0"
[build-dependencies]
clap = { version = "2.33", optional = true }
liquid = { version = "0.20", optional = true }
[profile.release]
lto = true
+1 -1
View File
@@ -1,4 +1,4 @@
Copyright (c) 2018-2020 bat-developers (https://github.com/sharkdp/bat).
Copyright (c) 2018-2021 bat-developers (https://github.com/sharkdp/bat).
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
+192 -89
View File
@@ -1,7 +1,6 @@
<p align="center">
<img src="doc/logo-header.svg" alt="bat - a cat clone with wings"><br>
<a href="https://travis-ci.org/sharkdp/bat"><img src="https://travis-ci.org/sharkdp/bat.svg?branch=master" alt="Build Status"></a>
<a href="https://ci.appveyor.com/project/sharkdp/bat"><img src="https://ci.appveyor.com/api/projects/status/cptsmtbiwbnr2vhf/branch/master?svg=true"></a>
<a href="https://github.com/sharkdp/bat/actions?query=workflow%3ACICD"><img src="https://github.com/sharkdp/bat/workflows/CICD/badge.svg" alt="Build Status"></a>
<img src="https://img.shields.io/crates/l/bat.svg" alt="license">
<a href="https://crates.io/crates/bat"><img src="https://img.shields.io/crates/v/bat.svg?colorB=319e8c" alt="Version info"></a><br>
A <i>cat(1)</i> clone with syntax highlighting and Git integration.
@@ -12,8 +11,8 @@
<a href="#how-to-use">How To Use</a> •
<a href="#installation">Installation</a> •
<a href="#customization">Customization</a> •
<a href="#project-goals-and-alternatives">Project goals, alternatives</a>
Translation [<a href="https://github.com/chinanf-boy/bat-zh">中文</a>][<a href="doc/README-ja.md">日本語</a>][<a href="doc/README-ko.md">한국어</a>]
<a href="#project-goals-and-alternatives">Project goals, alternatives</a><br>
[<a href="https://github.com/chinanf-boy/bat-zh">中文</a>] [<a href="doc/README-ja.md">日本語</a>] [<a href="doc/README-ko.md">한국어</a>] [<a href="doc/README-ru.md">Русский</a>]
</p>
### Syntax highlighting
@@ -39,14 +38,14 @@ characters:
### Automatic paging
`bat` can pipe its own output to `less` if the output is too large for one screen.
By default, `bat` pipes its own output to a pager (e.g `less`) if the output is too large for one screen.
If you would rather `bat` work like `cat` all the time (never page output), you can set `--paging=never` as an option, either on the command line or in your configuration file.
If you intend to alias `cat` to `bat` in your shell configuration, you can use `alias cat='bat --paging=never'` to preserve the default behavior.
### File concatenation
#### File concatenation
Oh.. you can also use it to concatenate files :wink:. Whenever
`bat` detects a non-interactive terminal (i.e. when you pipe into another process
or into a file), `bat` will act as a drop-in replacement for `cat` and
fall back to printing the plain file contents.
Even with a pager set, you can still use `bat` to concatenate files :wink:.
Whenever `bat` detects a non-interactive terminal (i.e. when you pipe into another process or into a file), `bat` will act as a drop-in replacement for `cat` and fall back to printing the plain file contents, regardless of the `--pager` option's value.
## How to use
@@ -62,7 +61,9 @@ Display multiple files at once
> bat src/*.rs
```
Read from stdin, determine the syntax automatically
Read from stdin, determine the syntax automatically (note, highlighting will
only work if the syntax can be determined from the first line of the file,
usually through a shebang such as `#!/bin/sh`)
```bash
> curl -s https://sh.rustup.rs | bat
@@ -93,6 +94,16 @@ bat f - g # output 'f', then stdin, then 'g'.
### Integration with other tools
#### `fzf`
You can use `bat` as a previewer for [`fzf`](https://github.com/junegunn/fzf). To do this,
use `bat`s `--color=always` option to force colorized output. You can also use `--line-range`
option to restrict the load times for long files:
```bash
fzf --preview 'bat --color=always --style=numbers --line-range=:500 {}'
```
For more information, see [`fzf`s `README`](https://github.com/junegunn/fzf#preview-window).
#### `find` or `fd`
You can use the `-exec` option of `find` to preview all search results with `bat`:
@@ -130,7 +141,18 @@ highlighting:
git show v0.6.0:src/main.rs | bat -l rs
```
Note that syntax highlighting within diffs is currently not supported. If you are looking for this, check out [`delta`](https://github.com/dandavison/delta).
#### `git diff`
You can combine `bat` with `git diff` to view lines around code changes with proper syntax
highlighting:
```bash
batdiff() {
git diff --name-only --diff-filter=d | xargs bat --diff
}
```
If you prefer to use this as a separate tool, check out `batdiff` in [`bat-extras`](https://github.com/eth-p/bat-extras).
If you are looking for more support for git and diff operations, check out [`delta`](https://github.com/dandavison/delta).
#### `xclip`
@@ -151,6 +173,7 @@ bat main.cpp | xclip
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
man 2 select
```
(replace `bat` by `batcat` if you are on Debian or Ubuntu)
It might also be necessary to set `MANROFFOPT="-c"` if you experience
formatting problems.
@@ -159,6 +182,8 @@ If you prefer to have this bundled in a new command, you can also use [`batman`]
Note that the [Manpage syntax](assets/syntaxes/02_Extra/Manpage.sublime-syntax) is developed in this repository and still needs some work.
Also, note that this will [not work](https://github.com/sharkdp/bat/issues/1145) with Mandocs `man` implementation.
#### `prettier` / `shfmt` / `rustfmt`
The [`prettybat`](https://github.com/eth-p/bat-extras/blob/master/doc/prettybat.md) script is a wrapper that will format code and print it with `bat`.
@@ -166,15 +191,15 @@ The [`prettybat`](https://github.com/eth-p/bat-extras/blob/master/doc/prettybat.
## Installation
[![Packaging status](https://repology.org/badge/vertical-allrepos/bat.svg)](https://repology.org/project/bat/versions)
[![Packaging status](https://repology.org/badge/vertical-allrepos/bat-cat.svg)](https://repology.org/project/bat-cat/versions)
### On Ubuntu
### On Ubuntu (using `apt`)
*... and other Debian-based Linux distributions.*
`bat` is making its way through the [Ubuntu](https://packages.ubuntu.com/eoan/bat) and
[Debian](https://packages.debian.org/sid/bat) package release process, and is available
for Ubuntu as of Eoan 19.10. On Debian `bat` is currently only available on the unstable
"Sid" branch.
[Debian](https://packages.debian.org/testing/bat) package release process, and is available
for Ubuntu as of Eoan 19.10. On Debian `bat` is currently available on the unstable
"Sid" branch and on the testing branch.
If your Ubuntu/Debian installation is new enough you can simply run:
@@ -182,12 +207,22 @@ If your Ubuntu/Debian installation is new enough you can simply run:
apt install bat
```
**Important**: If you install `bat` this way, please note that the executable may be installed as `batcat` instead of `bat` (due to [a name
clash with another package](https://github.com/sharkdp/bat/issues/982)). You can set up a `bat -> batcat` symlink or alias to prevent any issues that may come up because of this and to be consistent with other distributions:
``` bash
mkdir -p ~/.local/bin
ln -s /usr/bin/batcat ~/.local/bin/bat
```
### On Ubuntu (using most recent `.deb` packages)
*... and other Debian-based Linux distributions.*
If the package has not yet been promoted to your Ubuntu/Debian installation, or you want
the most recent release of `bat`, download the latest `.deb` package from the
[release page](https://github.com/sharkdp/bat/releases) and install it via:
```bash
sudo dpkg -i bat_0.15.0_amd64.deb # adapt version number and architecture
sudo dpkg -i bat_0.18.2_amd64.deb # adapt version number and architecture
```
### On Alpine Linux
@@ -232,6 +267,13 @@ You can install `bat` via xbps-install:
xbps-install -S bat
```
### On Termux
You can install `bat` via pkg:
```bash
pkg install bat
```
### On FreeBSD
You can install a precompiled [`bat` package](https://www.freshports.org/textproc/bat) with pkg:
@@ -263,14 +305,21 @@ You can install `bat` with zypper:
zypper install bat
```
### On macOS
### Via snap package
You can install `bat` with [Homebrew](http://braumeister.org/formula/bat):
There is currently no recommended snap package available.
Existing packages may be available, but are not officially supported and may contain [issues](https://github.com/sharkdp/bat/issues/1519).
### On macOS (or Linux) via Homebrew
You can install `bat` with [Homebrew on MacOS](https://formulae.brew.sh/formula/bat) or [Homebrew on Linux](https://formulae.brew.sh/formula-linux/bat):
```bash
brew install bat
```
### On macOS via MacPorts
Or install `bat` with [MacPorts](https://ports.macports.org/port/bat/summary):
```bash
@@ -282,6 +331,10 @@ port install bat
There are a few options to install `bat` on Windows. Once you have installed `bat`,
take a look at the ["Using `bat` on Windows"](#using-bat-on-windows) section.
#### Prerequisites
You will need to install the [Visual C++ Redistributable](https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads) package.
#### With Chocolatey
You can install `bat` via [Chocolatey](https://chocolatey.org/packages/Bat):
@@ -296,50 +349,12 @@ You can install `bat` via [scoop](https://scoop.sh/):
scoop install bat
```
You will need to install the [Visual C++ Redistributable](https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads) package.
#### From prebuilt binaries:
You can download prebuilt binaries from the [Release page](https://github.com/sharkdp/bat/releases),
You will need to install the [Visual C++ Redistributable](https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads) package.
### Via Docker
There is a [Docker image](https://hub.docker.com/r/danlynn/bat/) that you can use to run `bat` in a container:
```bash
docker pull danlynn/bat
alias bat='docker run -it --rm -e BAT_THEME -e BAT_STYLE -e BAT_TABS -v "$(pwd):/myapp" danlynn/bat'
```
### Via Ansible
You can install `bat` with [Ansible](https://www.ansible.com/):
```bash
# Install role on local machine
ansible-galaxy install aeimer.install_bat
```
```yaml
---
# Playbook to install bat
- host: all
roles:
- aeimer.install_bat
```
- [Ansible Galaxy](https://galaxy.ansible.com/aeimer/install_bat)
- [GitHub](https://github.com/aeimer/ansible-install-bat)
This should work with the following distributions:
- Debian/Ubuntu
- ARM (eg. Raspberry PI)
- Arch Linux
- Void Linux
- FreeBSD
- MacOS
### From binaries
Check out the [Release page](https://github.com/sharkdp/bat/releases) for
@@ -348,14 +363,15 @@ binaries are also available: look for archives with `musl` in the file name.
### From source
If you want to build `bat` from source, you need Rust 1.40 or
If you want to build `bat` from source, you need Rust 1.45 or
higher. You can then use `cargo` to build everything:
```bash
cargo install bat
cargo install --locked bat
```
On some platforms, you might need to install `llvm` and/or `libclang-dev`.
Note that additional files like the man page or shell completion
files can not be installed in this way. They will be generated by `cargo` and should be available in the cargo target folder (under `build`).
## Customization
@@ -379,6 +395,26 @@ light background, some themes like `GitHub` or `OneHalfLight` will work better f
You can also use a custom theme by following the
['Adding new themes' section below](https://github.com/sharkdp/bat#adding-new-themes).
### 8-bit themes
`bat` has three themes that always use [8-bit colors](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors),
even when truecolor support is available:
- `ansi` looks decent on any terminal. It uses 3-bit colors: black, red, green,
yellow, blue, magenta, cyan, and white.
- `base16` is designed for [base16](https://github.com/chriskempson/base16) terminal themes. It uses
4-bit colors (3-bit colors plus bright variants) in accordance with the
[base16 styling guidelines](https://github.com/chriskempson/base16/blob/master/styling.md).
- `base16-256` is designed for [base16-shell](https://github.com/chriskempson/base16-shell).
It replaces certain bright colors with 8-bit colors from 16 to 21. **Do not** use this simply
because you have a 256-color terminal but are not using base16-shell.
Although these themes are more restricted, they have three advantages over truecolor themes. They:
- Enjoy maximum compatibility. Some terminal utilities do not support more than 3-bit colors.
- Adapt to terminal theme changes. Even for already printed output.
- Visually harmonize better with other terminal software.
### Output style
You can use the `--style` option to control the appearance of `bat`s output.
@@ -389,35 +425,45 @@ variable to make these changes permanent or use `bat`s
### Adding new syntaxes / language definitions
Should you find that a particular syntax is not available within `bat`, you can follow these
instructions to easily add new syntaxes to your current `bat` installation.
`bat` uses the excellent [`syntect`](https://github.com/trishume/syntect/)
library for syntax highlighting. `syntect` can read any
[Sublime Text `.sublime-syntax` file](https://www.sublimetext.com/docs/3/syntax.html)
and theme. To add new syntax definitions, do the following.
and theme.
Create a folder with syntax definition files:
A good resource for finding Sublime Syntax packages is [Package Control](https://packagecontrol.io/). Once you found a
syntax:
```bash
mkdir -p "$(bat --config-dir)/syntaxes"
cd "$(bat --config-dir)/syntaxes"
1. Create a folder with syntax definition files:
# Put new '.sublime-syntax' language definition files
# in this folder (or its subdirectories), for example:
git clone https://github.com/tellnobody1/sublime-purescript-syntax
```
```bash
mkdir -p "$(bat --config-dir)/syntaxes"
cd "$(bat --config-dir)/syntaxes"
Now use the following command to parse these files into a binary cache:
# Put new '.sublime-syntax' language definition files
# in this folder (or its subdirectories), for example:
git clone https://github.com/tellnobody1/sublime-purescript-syntax
```
```bash
bat cache --build
```
2. Now use the following command to parse these files into a binary cache:
Finally, use `bat --list-languages` to check if the new languages are available.
```bash
bat cache --build
```
If you ever want to go back to the default settings, call:
3. Finally, use `bat --list-languages` to check if the new languages are available.
```bash
bat cache --clear
```
If you ever want to go back to the default settings, call:
```bash
bat cache --clear
```
4. If you think that a specific syntax should be included in `bat` by default, please
consider opening a "syntax request" ticket after reading the policies and
instructions [here](doc/assets.md): [Open Syntax Request](https://github.com/sharkdp/bat/issues/new?labels=syntax-request&template=syntax_request.md).
### Adding new themes
@@ -437,6 +483,33 @@ bat cache --build
Finally, use `bat --list-themes` to check if the new themes are available.
### Adding or changing file type associations
You can add new (or change existing) file name patterns using the `--map-syntax`
command line option. The option takes an argument of the form `pattern:syntax` where
`pattern` is a glob pattern that is matched against the file name and
the absolute file path. The `syntax` part is the full name of a supported language
(use `bat --list-languages` for an overview).
Note: You probably want to use this option as an entry in `bat`s configuration file instead
of passing it on the command line (see below).
Example: To use "INI" syntax highlighting for all files with a `.conf` file extension, use
```bash
--map-syntax='*.conf:INI'
```
Example: To open all files called `.ignore` (exact match) with the "Git Ignore" syntax, use:
```bash
--map-syntax='.ignore:Git Ignore'
```
Example: To open all `.conf` files in subfolders of `/etc/apache2` with the "Apache Conf"
syntax, use (this mapping is already built in):
```bash
--map-syntax='/etc/apache2/**/*.conf:Apache Conf'
```
### Using a different pager
`bat` uses the pager that is specified in the `PAGER` environment variable. If this variable is not
@@ -444,6 +517,8 @@ set, `less` is used by default. If you want to use a different pager, you can ei
`PAGER` variable or set the `BAT_PAGER` environment variable to override what is specified in
`PAGER`.
**Note**: If `PAGER` is `more` or `most`, `bat` will silently use `less` instead to ensure support for colors.
If you want to pass command-line arguments to the pager, you can also set them via the
`PAGER`/`BAT_PAGER` variables:
@@ -468,6 +543,16 @@ If you want to enable mouse-wheel scrolling on older versions of `less`, you can
in the example above, this will disable the quit-if-one-screen feature). For less 530 or newer,
it should work out of the box.
### Indentation
`bat` expands tabs to 4 spaces by itself, not relying on the pager. To change this, simply add the
`--tabs` argument with the number of spaces you want to be displayed.
**Note**: Defining tab stops for the pager (via the `--pager` argument by `bat`, or via the `LESS`
environment variable for `less`) won't be taken into account because the pager will already get
expanded spaces instead of tabs. This behaviour is added to avoid indentation issues caused by the
sidebar. Calling `bat` with `--tabs=0` will override it and let tabs be consumed by the pager.
### Dark mode
If you make use of the dark mode feature in macOS, you might want to configure `bat` to use a different
@@ -478,6 +563,7 @@ and the `GitHub` theme when in the _light mode_.
alias cat="bat --theme=\$(defaults read -globalDomain AppleInterfaceStyle &> /dev/null && echo default || echo GitHub)"
```
## Configuration file
`bat` can also be customized with a configuration file. The location of the file is dependent
@@ -514,15 +600,16 @@ Example configuration file:
# Use C++ syntax for .ino files
--map-syntax "*.ino:C++"
# Use ".gitignore"-style highlighting for ".ignore" files
--map-syntax ".ignore:Git Ignore"
```
## Using `bat` on Windows
`bat` mostly works out-of-the-box on Windows, but a few features may need extra configuration.
### Prerequisites
You will need to install the [Visual C++ Redistributable](https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads) package.
### Paging
Windows only includes a very limited pager in the form of `more`. You can download a Windows binary
@@ -565,9 +652,10 @@ bat() {
### Terminals & colors
`bat` handles terminals *with* and *without* truecolor support. However, the colors in the syntax
highlighting themes are not optimized for 8-bit colors and it is therefore strongly recommended
that you use a terminal with 24-bit truecolor support (`terminator`, `konsole`, `iTerm2`, ...).
`bat` handles terminals *with* and *without* truecolor support. However, the colors in most syntax
highlighting themes are not optimized for 8-bit colors. It is therefore strongly recommended
that you use a terminal with 24-bit truecolor support (`terminator`, `konsole`, `iTerm2`, ...),
or use one of the basic [8-bit themes](#8-bit-themes) designed for a restricted set of colors.
See [this article](https://gist.github.com/XVilka/8346728) for more details and a full list of
terminals with truecolor support.
@@ -606,17 +694,32 @@ cargo build --bins
cargo test
# Install (release version)
cargo install
cargo install --path . --locked
# Build a bat binary with modified syntaxes and themes
bash assets/create.sh
cargo install -f
cargo install --path . --locked --force
```
If you want to build an application that uses `bat`s pretty-printing
features as a library, check out the [the API documentation](https://docs.rs/bat/).
Note that you have to use either `regex-onig` or `regex-fancy` as a feature
when you depend on `bat` as a library.
## Contributing
Take a look at the [`CONTRIBUTING.md`](CONTRIBUTING.md) guide.
## Maintainers
- [sharkdp](https://github.com/sharkdp)
- [eth-p](https://github.com/eth-p)
- [keith-hall](https://github.com/keith-hall)
- [Enselic](https://github.com/Enselic)
## Security vulnerabilities
Please contact [David Peter](https://david-peter.de/) via email if you want to report a vulnerability in `bat`.
## Project goals and alternatives
@@ -631,8 +734,8 @@ There are a lot of alternatives, if you are looking for similar programs. See
[this document](doc/alternatives.md) for a comparison.
## License
Copyright (c) 2018-2020 [bat-developers](https://github.com/sharkdp/bat).
Copyright (c) 2018-2021 [bat-developers](https://github.com/sharkdp/bat).
`bat` is distributed under the terms of both the MIT License and the Apache License 2.0.
`bat` is made available under the terms of either the MIT License or the Apache License 2.0, at your option.
See the [LICENSE-APACHE](LICENSE-APACHE) and [LICENSE-MIT](LICENSE-MIT) files for license details.
-49
View File
@@ -1,49 +0,0 @@
environment:
global:
TARGET: x86_64-pc-windows-msvc
RUST_VERSION: stable
CRATE_NAME: bat
CARGO_HOME: "c:\\cargo"
RUSTUP_HOME: "c:\\rustup"
install:
- appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
- rustup-init.exe -y --default-host %TARGET% --profile minimal
- set PATH=%PATH%;C:\cargo\bin
- rustc -Vv
- cargo -V
build: false
test_script:
- cargo test --target %TARGET% --verbose
- cargo run --target %TARGET% -- src/bin/bat/main.rs README.md --paging=never
before_deploy:
# Generate artifacts for release
- cargo build --bins --release --verbose
- ps: ci\before_deploy.ps1
deploy:
description: 'Automatically deployed release'
artifact: /.*\.zip/
# Here's how:
# - Go to 'https://github.com/settings/tokens/new' and generate a Token with only the
# `public_repo` scope enabled
# - Then go to 'https://ci.appveyor.com/tools/encrypt' and enter the newly generated token.
# - Enter the "encrypted value" below
auth_token:
secure: oO4/J+hcFXgXcEqEc8gzlQNqLG0IxU78s4EyH+uczGdsyWajb3yipxPR6nXUvmoj
provider: GitHub
on:
RUST_VERSION: stable
appveyor_repo_tag: true
cache:
- C:\Users\appveyor\.cargo\registry
- target
notifications:
- provider: Email
on_build_success: false
on_build_failure: false
on_build_status_changed: false
-44
View File
@@ -1,44 +0,0 @@
## Syntax Highlighting in bat
`bat` uses the [syntect](https://github.com/trishume/syntect) library to highlight source
code. As a basis, syntect uses [Sublime Text](https://www.sublimetext.com/) syntax definitions
in the `.sublime-syntax` format.
In order to add new syntaxes to `bat`, follow these steps:
1. Find a Sublime Text syntax for the given language, preferably in a separate Git repository
which can be included as a submodule (under `assets/syntaxes`).
2. If the Sublime Text syntax is only available as a `.tmLanguage` file, open the file in
Sublime Text and convert it to a `.sublime-syntax` file via *Tools* -> *Developer* ->
*New Syntax from XXX.tmLanguage...*. Save the new file in the `assets/syntaxes` folder.
3. Run the `create.sh` script. It calls `bat cache --build` to parse all available
`.sublime-syntax` files and serialize them to a `syntaxes.bin` file (in this folder).
4. Re-compile `bat`. At compilation time, the `syntaxes.bin` file will be stored inside the
`bat` binary.
5. If you send a pull request with your changes, please do *not* include the changed `syntaxes.bin`
file. A new binary cache file will be created once before every new release of `bat`.
### Troubleshooting
Make sure that the local cache does not interfere with the internally stored syntaxes and
themes (`bat cache --clear`).
### Manual modifications
The following files have been manually modified after converting from a `.tmLanguage` file:
* `Dart.sublime-syntax` => removed `#regex.dart` include.
* `INI.sublime-syntax` => added `.hgrc`, `hgrc`, and `desktop` file types.
* `Org mode.sublime-syntax` => removed `task` file type.
### Non-submodule additions
* `Assembly (x86_64)` has been manually added from https://github.com/13xforever/x86-assembly-textmate-bundle due to `git clone` recursion problems
* `Nim.sublime-syntax` has been added manually from https://github.com/getzola/zola/blob/master/sublime_syntaxes/Nim.sublime-syntax as there was no suitable Git repository for it. The original syntax seems to originate from https://github.com/Varriount/NimLime
* `Rego.sublime-syntax` has been added manually from https://github.com/open-policy-agent/opa/blob/master/misc/syntax/sublime/rego.sublime-syntax
as it is not kept in a standalone repository. The file is generated from
https://github.com/open-policy-agent/opa/blob/master/misc/syntax/textmate/Rego.tmLanguage
+88
View File
@@ -0,0 +1,88 @@
# shellcheck disable=SC2207
# Requires https://github.com/scop/bash-completion
_bat() {
local cur prev words cword split
_init_completion -s || return 0
if [[ ${words[1]-} == cache ]]; then
case $prev in
--source | --target)
_filedir -d
return 0
;;
esac
COMPREPLY=($(compgen -W "
--build --clear --source --target --blank --help
" -- "$cur"))
return 0
fi
case $prev in
-l | --language)
local IFS=$'\n'
COMPREPLY=($(compgen -W "$(
"$1" --list-languages | while IFS=: read -r lang _; do
printf "%s\n" "$lang"
done
)" -- "$cur"))
compopt -o filenames # for escaping
return 0
;;
-H | --highlight-line | --diff-context | --tabs | --terminal-width | \
-m | --map-syntax | --style | --line-range | -h | --help | -V | \
--version | --diagnostic | --config-file | --config-dir | \
--cache-dir | --generate-config-file)
# argument required but no completion available, or option
# causes an exit
return 0
;;
--file-name)
_filedir
return 0
;;
--wrap)
COMPREPLY=($(compgen -W "auto never character" -- "$cur"))
return 0
;;
--color | --decorations | --paging)
COMPREPLY=($(compgen -W "auto never always" -- "$cur"))
return 0
;;
--italic-text)
COMPREPLY=($(compgen -W "always never" -- "$cur"))
return 0
;;
--pager)
COMPREPLY=($(compgen -c -- "$cur"))
return 0
;;
--theme)
local IFS=$'\n'
COMPREPLY=($(compgen -W "$("$1" --list-themes)" -- "$cur"))
compopt -o filenames # for escaping
return 0
;;
esac
$split && return 0
if [[ $cur == -* ]]; then
COMPREPLY=($(compgen -W "
--show-all --plain --language --highlight-line
--file-name --diff --diff-context --tabs --wrap
--terminal-width --number --color --italic-text
--decorations --paging --pager --map-syntax --theme
--list-themes --style --line-range --list-languages
--help --version --force-colorization --unbuffered
--diagnostic --config-file --config-dir --cache-dir
--generate-config-file
" -- "$cur"))
return 0
fi
_filedir
((cword == 1)) && COMPREPLY+=($(compgen -W cache -- "$cur"))
} && complete -F _bat {{PROJECT_EXECUTABLE}}
+3 -1
View File
@@ -34,7 +34,7 @@ complete -c {{PROJECT_EXECUTABLE}} -s H -l highlight-line -x -d "<N> Highlight t
complete -c {{PROJECT_EXECUTABLE}} -l italic-text -xka "always never" -d "Specify when to use ANSI sequences for italic text (default: never)" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s l -l language -d "Set the language for syntax highlighting" -n "not __fish_seen_subcommand_from cache" -xa "(__{{PROJECT_EXECUTABLE}}_autocomplete_languages)"
complete -c {{PROJECT_EXECUTABLE}} -s l -l language -d "Set the language for syntax highlighting" -n "not __fish_seen_subcommand_from cache" -xa "(__{{PROJECT_EXECUTABLE}}_autocomplete_languages)"
complete -c {{PROJECT_EXECUTABLE}} -s r -l line-range -x -d "<N:M> Only print the specified range of lines for each file" -n "not __fish_seen_subcommand_from cache"
@@ -52,6 +52,8 @@ complete -c {{PROJECT_EXECUTABLE}} -l paging -xka "auto never always" -d "Specif
complete -c {{PROJECT_EXECUTABLE}} -s p -l plain -d "Only show plain style, no decorations. Alias for '--style=plain'" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s P -d "Disable paging. Alias for '--paging=never'" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s A -l show-all -d "Show non-printable characters like space/tab/newline" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l style -xka "auto full plain changes header grid numbers" -d "Comma-separated list of style elements or presets to display with file contents" -n "not __fish_seen_subcommand_from cache"
+99
View File
@@ -0,0 +1,99 @@
#compdef {{PROJECT_EXECUTABLE}}
local context 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]'
'*: :'
)
_arguments -S -s $args
}
(( $+functions[_{{PROJECT_EXECUTABLE}}_main] )) ||
_{{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]'
'(: --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'
)
_arguments -S -s $args
case "$state" in
language)
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
;;
theme)
local IFS=$'\n'
local -a themes
themes=( $({{PROJECT_EXECUTABLE}} --list-themes | sort) )
_values 'theme' $themes
;;
style)
_values -s , 'style' auto full plain changes header grid numbers snip
;;
esac
}
# first positional argument
if (( ${#words} == 2 )); then
local -a subcommands
subcommands=('cache:Modify the syntax-definition and theme cache')
_describe subcommand subcommands
_{{PROJECT_EXECUTABLE}}_main
else
case $words[2] in
cache)
_{{PROJECT_EXECUTABLE}}_cache_subcommand
;;
*)
_{{PROJECT_EXECUTABLE}}_main
;;
esac
fi
+2 -2
View File
@@ -1,11 +1,11 @@
#!/bin/bash
#!/usr/bin/env bash
set -euo pipefail
ASSET_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
REPO_DIR="$ASSET_DIR/.."
# Ensure submodules are initialized.
function update_submodules() {
update_submodules() {
local submodule
local submodule_prompt=unspecified
local submodule_path
+68 -10
View File
@@ -1,4 +1,4 @@
.TH {{PROJECT_EXECUTABLE | upcase}} "1"
.TH {{PROJECT_EXECUTABLE_UPPERCASE}} "1"
.SH NAME
{{PROJECT_EXECUTABLE}} \- a cat(1) clone with syntax highlighting and Git integration.
.SH "USAGE"
@@ -40,7 +40,7 @@ language names and file extensions.
.HP
\fB\-H\fR, \fB\-\-highlight\-line\fR <N:M>...
.IP
Highlight the specified line ranges with a different background color For example:
Highlight the specified line ranges with a different background color. For example:
.RS
.IP "\-\-highlight\-line 40"
highlights line 40
@@ -52,6 +52,18 @@ highlights lines 1 to 40
highlights lines 40 to the end of the file
.RE
.HP
\fB\-\-file\-name\fR <name>...
.IP
Specify the name to display for a file. Useful when piping data to {{PROJECT_EXECUTABLE}} from STDIN when {{PROJECT_EXECUTABLE}} does not otherwise know the filename. Note that the provided file name is also used for syntax detection.
.HP
\fB\-d\fR, \fB\-\-diff\fR
.IP
Only show lines that have been added/removed/modified with respect to the Git index. Use '\-\-diff\-context=N' to control how much context you want to see.
.HP
\fB\-\-diff\-context\fR <N>...
.IP
Include N lines of context around added/removed/modified lines when using '\-\-diff'.
.HP
\fB\-\-tabs\fR <T>
.IP
Set the tab width to T spaces. Use a width of 0 to pass tabs through directly
@@ -87,17 +99,22 @@ Specify when to use the decorations that have been specified via '\-\-style'. Th
automatic mode only enables decorations if an interactive terminal is detected. Possible
values: *auto*, never, always.
.HP
\fB\-f\fR, \fB\-\-force\-colorization\fR
.IP
Alias for '--decorations=always --color=always'. This is useful \
if the output of {{PROJECT_EXECUTABLE}} is piped to another program, but you want \
to keep the colorization/decorations.
.HP
\fB\-\-paging\fR <when>
.IP
Specify when to use the pager. To control which pager is used, set the PAGER or
BAT_PAGER environment variables (the latter takes precedence) or use the '\-\-pager'
option. To disable the pager permanently, set BAT_PAGER to an empty string or set
\&'\-\-paging=never' in the configuration file. Possible values: *auto*, never, always.
Specify when to use the pager. To disable the pager, use \&'\-\-paging=never' or its alias,
\fB-P\fR. To disable the pager permanently, set BAT_PAGER to an empty string. To control
which pager is used, see the '\-\-pager' option. Possible values: *auto*, never, always.
.HP
\fB\-\-pager\fR <command>
.IP
Determine which pager is used. This option will overwrite the PAGER and BAT_PAGER
environment variables. The default pager is 'less'. To disable the pager completely, use
Determine which pager is used. This option will override the PAGER and BAT_PAGER
environment variables. The default pager is 'less'. To control when the pager is used, see
the '\-\-paging' option. Example: '\-\-pager "less \fB\-RF\fR"'.
.HP
\fB\-m\fR, \fB\-\-map\-syntax\fR <glob-pattern:syntax-name>...
@@ -106,6 +123,7 @@ Map a glob pattern to an existing syntax name. The glob pattern is matched on th
path and the filename. For example, to highlight *.build files with the Python syntax,
use -m '*.build:Python'. To highlight files named '.myignore' with the Git Ignore
syntax, use -m '.myignore:Git Ignore'.
Note that the right-hand side is the *name* of the syntax, not a file extension.
.HP
\fB\-\-theme\fR <theme>
.IP
@@ -124,7 +142,7 @@ Configure which elements (line numbers, file headers, grid borders, Git modifica
of components to display (e.g. 'numbers,changes,grid') or a pre\-defined style ('full').
To set a default style, add the '\-\-style=".."' option to the configuration file or
export the BAT_STYLE environment variable (e.g.: export BAT_STYLE=".."). Possible
values: *auto*, full, plain, changes, header, grid, numbers, snip.
values: *full*, auto, plain, changes, header, grid, rule, numbers, snip.
.HP
\fB\-r\fR, \fB\-\-line\-range\fR <N:M>...
.IP
@@ -169,5 +187,45 @@ is dependent on your operating system. To get the default path for your system,
\fB{{PROJECT_EXECUTABLE}} --config-file\fR
Alternatively, you can use the BAT_CONFIG_PATH environment variable to point bat to a non-default
Alternatively, you can use the BAT_CONFIG_PATH environment variable to point {{PROJECT_EXECUTABLE}} to a non-default
location of the configuration file.
To generate a default configuration file, call:
\fB{{PROJECT_EXECUTABLE}} --generate-config-file\fR
.SH "ADDING CUSTOM LANGUAGES"
{{PROJECT_EXECUTABLE}} supports Sublime Text \fB.sublime-syntax\fR language files, and can be
customized to add additional languages to your local installation. To do this, add the \fB.sublime-syntax\fR language
files to `\fB$({{PROJECT_EXECUTABLE}} --config-dir)/syntaxes\fR` and run `\fB{{PROJECT_EXECUTABLE}} cache --build\fR`.
\fBExample:\fR
.RS 0.5i
mkdir -p "$({{PROJECT_EXECUTABLE}} --config-dir)/syntaxes"
.br
cd "$({{PROJECT_EXECUTABLE}} --config-dir)/syntaxes"
# Put new '.sublime-syntax' language definition files
.br
# in this folder (or its subdirectories), for example:
.br
git clone https://github.com/tellnobody1/sublime-purescript-syntax
# And then build the cache.
.br
{{PROJECT_EXECUTABLE}} cache --build
.RE
Once the cache is built, the new language will be visible in `\fB{{PROJECT_EXECUTABLE}} --list-languages\fR`.
.br
If you ever want to remove the custom languages, you can clear the cache with `\fB{{PROJECT_EXECUTABLE}} cache --clear\fR`.
.SH "ADDING CUSTOM THEMES"
Similarly to custom languages, {{PROJECT_EXECUTABLE}} supports Sublime Text \fB.tmTheme\fR themes.
These can be installed to `\fB$({{PROJECT_EXECUTABLE}} --config-dir)/themes\fR`, and are added to the cache with
`\fB{{PROJECT_EXECUTABLE}} cache --build`.
.SH "MORE INFORMATION"
For more information and up-to-date documentation, visit the {{PROJECT_EXECUTABLE}} repo:
.br
\fBhttps://github.com/sharkdp/bat\fR
+16
View File
@@ -0,0 +1,16 @@
diff --git syntaxes/02_Extra/Groff/Man Page/Man Page.sublime-syntax syntaxes/02_Extra/Groff/Man Page/Man Page.sublime-syntax
index 57834af..6648664 100644
--- syntaxes/02_Extra/Groff/Man Page/Man Page.sublime-syntax
+++ syntaxes/02_Extra/Groff/Man Page/Man Page.sublime-syntax
@@ -4,9 +4,9 @@
# - man-pages(7)
# - groff(7)
---
-name: Man Page (groff/troff)
+name: Groff/troff
scope: text.groff
-file_extensions: [man, groff, troff, '1', '2', '3', '4', '5', '6', '7']
+file_extensions: [groff, troff, '1', '2', '3', '4', '5', '6', '7', '8', '9']
contexts:
main:
+177
View File
@@ -0,0 +1,177 @@
diff --git syntaxes/01_Packages/Markdown/Markdown.sublime-syntax syntaxes/01_Packages/Markdown/Markdown.sublime-syntax
index 19dc685d..44440c7f 100644
--- syntaxes/01_Packages/Markdown/Markdown.sublime-syntax
+++ syntaxes/01_Packages/Markdown/Markdown.sublime-syntax
@@ -24,7 +24,6 @@ variables:
)
[ \t]*$ # followed by any number of tabs or spaces, followed by the end of the line
)
- setext_escape: ^(?=\s{0,3}(?:---+|===+)\s*$)
block_quote: (?:[ ]{,3}>(?:.|$)) # between 0 and 3 spaces, followed by a greater than sign, followed by any character or the end of the line
atx_heading: (?:[#]{1,6}\s*) # between 1 and 6 hashes, followed by any amount of whitespace
indented_code_block: (?:[ ]{4}|\t) # 4 spaces or a tab
@@ -277,69 +276,40 @@ contexts:
8: markup.underline.link.markdown
push: [link-ref-def, after-link-title, link-title]
- match: '^(?=\S)(?![=-]{3,}\s*$)'
- branch_point: heading2-branch
- branch:
- - not-heading2
- - heading2
-
- not-paragraph:
- - match: |-
- (?x) # pop out of this context when one of the following conditions are met:
- ^(?:
- \s*$ # the line is blank (or only contains whitespace)
- | (?=
- {{block_quote}} # a block quote begins the line
- | [ ]{,3}[*+-][ ] # an unordered list item begins the line
- | [ ]{,3}1[.][ ] # an ordered list item with number "1" begins the line
- | \# # an ATX heading begins the line
- | [ ]{,3}<( # all types of HTML blocks except type 7 may interrupt a paragraph
- {{html_tag_block_end_at_close_tag}} # 1
- | !-- # 2
- | \? # 3
- | ![A-Z] # 4
- | !\[CDATA\[ # 5
- | {{html_tag_block_end_at_blank_line}} # 6
+ push:
+ - meta_scope: meta.paragraph.markdown
+ - match: |-
+ (?x) # pop out of this context when one of the following conditions are met:
+ ^(?:
+ \s*$ # the line is blank (or only contains whitespace)
+ | (?=
+ {{block_quote}} # a block quote begins the line
+ | [ ]{,3}[*+-][ ] # an unordered list item begins the line
+ | [ ]{,3}1[.][ ] # an ordered list item with number "1" begins the line
+ | \# # an ATX heading begins the line
+ | [ ]{,3}<( # all types of HTML blocks except type 7 may interrupt a paragraph
+ {{html_tag_block_end_at_close_tag}} # 1
+ | !-- # 2
+ | \? # 3
+ | ![A-Z] # 4
+ | !\[CDATA\[ # 5
+ | {{html_tag_block_end_at_blank_line}} # 6
+ )
)
)
- )
- pop: true
-
- not-heading2:
- - include: not-paragraph
- - match: (?=\S)
- branch_point: heading1-branch
- branch:
- - paragraph
- - heading1
- - match: ''
- pop: true
-
- paragraph:
- - meta_scope: meta.paragraph.markdown
- - match: ^\s{0,3}===+\s*$
- fail: heading1-branch
- - match: ^\s{0,3}---+\s*$
- fail: heading2-branch
- - include: not-paragraph
- - include: inline-bold-italic-linebreak
- - include: scope:text.html.basic
-
- heading1:
- - meta_scope: markup.heading.1.markdown
- - include: inline-bold-italic-linebreak
- - match: '^[ \t]{0,3}(={3,})(?=[ \t]*$)'
- captures:
- 1: markup.heading.1.setext.markdown punctuation.definition.heading.setext.markdown
- pop: true
-
- heading2:
- - meta_scope: markup.heading.2.markdown
- - include: inline-bold-italic-linebreak
- - match: '^[ \t]{0,3}(-{3,})(?=[ \t]*$)'
- captures:
- 1: markup.heading.2.setext.markdown punctuation.definition.heading.setext.markdown
- pop: true
-
+ pop: true
+ - include: inline-bold-italic-linebreak
+ - include: scope:text.html.basic
+ - match: '^(={3,})(?=[ \t]*$)'
+ scope: markup.heading.1.setext.markdown
+ captures:
+ 1: punctuation.definition.heading.setext.markdown
+ pop: true
+ - match: '^(-{3,})(?=[ \t]*$)'
+ scope: markup.heading.2.setext.markdown
+ captures:
+ 1: punctuation.definition.heading.setext.markdown
+ pop: true
link-ref-def:
- meta_scope: meta.link.reference.def.markdown
- match: ''
@@ -430,8 +400,6 @@ contexts:
push:
- meta_scope: markup.bold.markdown
- meta_content_scope: markup.italic.markdown
- - match: '{{setext_escape}}'
- pop: true
- match: |-
(?x)
[ \t]*\*{4,} # if there are more than 3 its not applicable to be bold or italic
@@ -446,8 +414,6 @@ contexts:
scope: punctuation.definition.bold.end.markdown
set:
- meta_content_scope: markup.italic.markdown
- - match: '{{setext_escape}}'
- pop: true
- match: |-
(?x)
[ \t]*\*{3,} # if there are more than 3 its not applicable to be bold or italic
@@ -463,8 +429,6 @@ contexts:
scope: punctuation.definition.italic.end.markdown
set:
- meta_content_scope: markup.bold.markdown
- - match: '{{setext_escape}}'
- pop: true
- match: |-
(?x)
[ \t]*\*{3,} # if there are more than 3 its not applicable to be bold or italic
@@ -727,8 +691,6 @@ contexts:
scope: punctuation.definition.italic.begin.markdown
push:
- meta_scope: markup.italic.markdown
- - match: '{{setext_escape}}'
- pop: true
- match: |-
(?x)
[ \t]*\*{4,} # if there are more than 3 its not applicable to be bold or italic
@@ -745,8 +707,6 @@ contexts:
scope: punctuation.definition.italic.begin.markdown
push:
- meta_scope: markup.italic.markdown
- - match: '{{setext_escape}}'
- pop: true
- match: |-
(?x)
[ \t]*_{4,} # if there are more than 3 its not applicable to be bold or italic
@@ -773,8 +733,6 @@ contexts:
- include: bold-italic-trailing
bold-italic-trailing:
- include: scope:text.html.basic
- - match: '{{setext_escape}}'
- pop: true
- match: ^\s*$\n?
scope: invalid.illegal.non-terminated.bold-italic.markdown
pop: true
@@ -1152,7 +1110,7 @@ contexts:
- match: |-
(?x)
{{fenced_code_block_start}}
- ((?i:rust))
+ ((?i:rust|rs))
{{fenced_code_block_trailing_infostring_characters}}
captures:
0: meta.code-fence.definition.begin.rust.markdown-gfm
+36
View File
@@ -0,0 +1,36 @@
diff --git themes/sublime-monokai-extended/Monokai\ Extended.tmTheme themes/sublime-monokai-extended/Monokai\ Extended.tmTheme
index 9c2aa3e..180cbbf 100644
--- themes/sublime-monokai-extended/Monokai Extended.tmTheme
+++ themes/sublime-monokai-extended/Monokai Extended.tmTheme
@@ -810,11 +810,11 @@
<key>name</key>
<string>JSON String</string>
<key>scope</key>
- <string>meta.structure.dictionary.json string.quoted.double.json</string>
+ <string>meta.mapping.key.json string.quoted.double.json, punctuation.separator.sequence.csv</string>
<key>settings</key>
<dict>
<key>foreground</key>
- <string>#cfcfc2</string>
+ <string>#fd971f</string>
</dict>
</dict>
<dict>
@@ -1027,7 +1027,7 @@
<key>name</key>
<string>Invalid</string>
<key>scope</key>
- <string>invalid</string>
+ <string>invalid, markup.error</string>
<key>settings</key>
<dict>
<key>background</key>
@@ -1042,7 +1042,7 @@
<key>name</key>
<string>Invalid deprecated</string>
<key>scope</key>
- <string>invalid.deprecated</string>
+ <string>invalid.deprecated, markup.warning</string>
<key>settings</key>
<dict>
<key>background</key>
+15
View File
@@ -0,0 +1,15 @@
diff --git syntaxes/01_Packages/Python/Python.sublime-syntax syntaxes/01_Packages/Python/Python.sublime-syntax
index 2acd86d8..86257f7b 100644
--- syntaxes/01_Packages/Python/Python.sublime-syntax
+++ syntaxes/01_Packages/Python/Python.sublime-syntax
@@ -988,10 +988,6 @@ contexts:
- match: \}
scope: punctuation.section.mapping-or-set.end.python
set: after-expression
- - match: (?={{simple_expression}}:|\s*\*\*)
- set: inside-dictionary
- - match: (?={{simple_expression}}[,}]|\s*\*)
- set: inside-set
- match: ','
scope: punctuation.separator.set.python
set: inside-set
+20
View File
@@ -0,0 +1,20 @@
diff --git syntaxes/01_Packages/ShellScript/Bash.sublime-syntax syntaxes/01_Packages/ShellScript/Bash.sublime-syntax
index e973e319..07c170a7 100644
--- syntaxes/01_Packages/ShellScript/Bash.sublime-syntax
+++ syntaxes/01_Packages/ShellScript/Bash.sublime-syntax
@@ -30,12 +30,12 @@ file_extensions:
- .zshenv
- .zshrc
- PKGBUILD # https://jlk.fjfi.cvut.cz/arch/manpages/man/PKGBUILD.5
- - .ebuild
- - .eclass
+ - ebuild
+ - eclass
first_line_match: |
(?x)
- ^\#! .* \b(bash|zsh|sh|tcsh|ash)\b
+ ^\#! .* \b(bash|zsh|sh|tcsh|ash|dash)\b
| ^\# \s* -\*- [^*]* mode: \s* shell-script [^*]* -\*-
#-------------------------------------------------------------------------------
+12
View File
@@ -0,0 +1,12 @@
diff --git syntaxes/01_Packages/XML/XML.sublime-syntax syntaxes/01_Packages/XML/XML.sublime-syntax
index ad7d9c87..af4a00f0 100644
--- syntaxes/01_Packages/XML/XML.sublime-syntax
+++ syntaxes/01_Packages/XML/XML.sublime-syntax
@@ -12,6 +12,7 @@ file_extensions:
- rss
- opml
- svg
+ - xaml
first_line_match: |-
(?x:
^(?:
BIN
View File
Binary file not shown.
+221
View File
@@ -0,0 +1,221 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Apache Conf
file_extensions:
- envvars
- htaccess
- HTACCESS
- htgroups
- HTGROUPS
- htpasswd
- HTPASSWD
- .htaccess
- .HTACCESS
- .htgroups
- .HTGROUPS
- .htpasswd
- .HTPASSWD
scope: source.apacheconf
contexts:
main:
- match: ^(\s)*(#).*$\n?
scope: comment.line.hash.ini
captures:
1: punctuation.definition.comment.apacheconf
- match: (<)(Proxy|ProxyMatch|IfVersion|Directory|DirectoryMatch|Files|FilesMatch|IfDefine|IfModule|Limit|LimitExcept|Location|LocationMatch|VirtualHost|Macro|If|Else|ElseIf)(\s(.+?))?(>)
captures:
1: punctuation.definition.tag.apacheconf
2: entity.tag.apacheconf
4: string.value.apacheconf
5: punctuation.definition.tag.apacheconf
- match: (</)(Proxy|ProxyMatch|IfVersion|Directory|DirectoryMatch|Files|FilesMatch|IfDefine|IfModule|Limit|LimitExcept|Location|LocationMatch|VirtualHost|Macro|If|Else|ElseIf)(>)
captures:
1: punctuation.definition.tag.apacheconf
2: entity.tag.apacheconf
3: punctuation.definition.tag.apacheconf
- match: (?<=(Rewrite(Rule|Cond)))\s+(.+?)\s+(.+?)($|\s)
captures:
3: string.regexp.apacheconf
4: string.replacement.apacheconf
- match: (?<=RedirectMatch)(\s+(\d\d\d|permanent|temp|seeother|gone))?\s+(.+?)\s+((.+?)($|\s))?
captures:
2: entity.status.apacheconf
3: string.regexp.apacheconf
5: string.path.apacheconf
- match: (?<=Redirect)(\s+(\d\d\d|permanent|temp|seeother|gone))?\s+(.+?)\s+((.+?)($|\s))?
captures:
2: entity.status.apacheconf
3: string.path.apacheconf
5: string.path.apacheconf
- match: (?<=ScriptAliasMatch|AliasMatch)\s+(.+?)\s+((.+?)\s)?
captures:
1: string.regexp.apacheconf
3: string.path.apacheconf
- match: (?<=RedirectPermanent|RedirectTemp|ScriptAlias|Alias)\s+(.+?)\s+((.+?)($|\s))?
captures:
1: string.path.apacheconf
3: string.path.apacheconf
- match: \b(AcceptPathInfo|AccessFileName|AddDefaultCharset|AddOutputFilterByType|AllowEncodedSlashes|AllowOverride|AuthName|AuthType|CGIMapExtension|ContentDigest|DefaultType|Define|DocumentRoot|EnableMMAP|EnableSendfile|ErrorDocument|ErrorLog|FileETag|ForceType|HostnameLookups|IdentityCheck|Include(Optional)?|KeepAlive|KeepAliveTimeout|LimitInternalRecursion|LimitRequestBody|LimitRequestFields|LimitRequestFieldSize|LimitRequestLine|LimitXMLRequestBody|LogLevel|MaxKeepAliveRequests|Mutex|NameVirtualHost|Options|Require|RLimitCPU|RLimitMEM|RLimitNPROC|Satisfy|ScriptInterpreterSource|ServerAdmin|ServerAlias|ServerName|ServerPath|ServerRoot|ServerSignature|ServerTokens|SetHandler|SetInputFilter|SetOutputFilter|Time(O|o)ut|TraceEnable|UseCanonicalName|Use|ErrorLogFormat|GlobalLog|PHPIniDir|SSLHonorCipherOrder|SSLCompression|SSLUseStapling|SSLStapling\w+|SSLCARevocationCheck|SSLSRPVerifierFile|SSLSessionTickets|RequestReadTimeout|ProxyHTML\w+|MaxRanges)\b
captures:
1: keyword.core.apacheconf
- match: \b(AcceptMutex|AssignUserID|BS2000Account|ChildPerUserID|CoreDumpDirectory|EnableExceptionHook|Group|Listen|ListenBacklog|LockFile|MaxClients|MaxConnectionsPerChild|MaxMemFree|MaxRequestsPerChild|MaxRequestsPerThread|MaxRequestWorkers|MaxSpareServers|MaxSpareThreads|MaxThreads|MaxThreadsPerChild|MinSpareServers|MinSpareThreads|NumServers|PidFile|ReceiveBufferSize|ScoreBoardFile|SendBufferSize|ServerLimit|StartServers|StartThreads|ThreadLimit|ThreadsPerChild|ThreadStackSize|User|Win32DisableAcceptEx)\b
captures:
1: keyword.mpm.apacheconf
- match: \b(Allow|Deny|Order)\b
captures:
1: keyword.access.apacheconf
- match: \b(Action|Script)\b
captures:
1: keyword.actions.apacheconf
- match: \b(Alias|AliasMatch|Redirect|RedirectMatch|RedirectPermanent|RedirectTemp|ScriptAlias|ScriptAliasMatch)\b
captures:
1: keyword.alias.apacheconf
- match: \b(AuthAuthoritative|AuthGroupFile|AuthUserFile|AuthBasicProvider|AuthBasicFake|AuthBasicAuthoritative|AuthBasicUseDigestAlgorithm)\b
captures:
1: keyword.auth.apacheconf
- match: \b(Anonymous|Anonymous_Authoritative|Anonymous_LogEmail|Anonymous_MustGiveEmail|Anonymous_NoUserID|Anonymous_VerifyEmail)\b
captures:
1: keyword.auth_anon.apacheconf
- match: \b(AuthDBMAuthoritative|AuthDBMGroupFile|AuthDBMType|AuthDBMUserFile)\b
captures:
1: keyword.auth_dbm.apacheconf
- match: \b(AuthDigestAlgorithm|AuthDigestDomain|AuthDigestFile|AuthDigestGroupFile|AuthDigestNcCheck|AuthDigestNonceFormat|AuthDigestNonceLifetime|AuthDigestQop|AuthDigestShmemSize|AuthDigestProvider)\b
captures:
1: keyword.auth_digest.apacheconf
- match: \b(AuthLDAPAuthoritative|AuthLDAPBindDN|AuthLDAPBindPassword|AuthLDAPCharsetConfig|AuthLDAPCompareDNOnServer|AuthLDAPDereferenceAliases|AuthLDAPEnabled|AuthLDAPFrontPageHack|AuthLDAPGroupAttribute|AuthLDAPGroupAttributeIsDN|AuthLDAPRemoteUserIsDN|AuthLDAPUrl)\b
captures:
1: keyword.auth_ldap.apacheconf
- match: \b(AddAlt|AddAltByEncoding|AddAltByType|AddDescription|AddIcon|AddIconByEncoding|AddIconByType|DefaultIcon|HeaderName|IndexIgnore|IndexOptions|IndexOrderDefault|IndexStyleSheet|IndexHeadInsert|ReadmeName)\b
captures:
1: keyword.autoindex.apacheconf
- match: \b(BalancerMember|BalancerGrowth|BalancerPersist|BalancerInherit)\b
captures:
1: keyword.filter.apacheconf
- match: \b(CacheDefaultExpire|CacheDisable|CacheEnable|CacheForceCompletion|CacheIgnoreCacheControl|CacheIgnoreHeaders|CacheIgnoreNoLastMod|CacheLastModifiedFactor|CacheMaxExpire)\b
captures:
1: keyword.cache.apacheconf
- match: \b(MetaDir|MetaFiles|MetaSuffix)\b
captures:
1: keyword.cern_meta.apacheconf
- match: \b(ScriptLog|ScriptLogBuffer|ScriptLogLength)\b
captures:
1: keyword.cgi.apacheconf
- match: \b(ScriptLog|ScriptLogBuffer|ScriptLogLength|ScriptSock)\b
captures:
1: keyword.cgid.apacheconf
- match: \b(CharsetDefault|CharsetOptions|CharsetSourceEnc)\b
captures:
1: keyword.charset_lite.apacheconf
- match: \b(Dav|DavDepthInfinity|DavMinTimeout|DavLockDB)\b
captures:
1: keyword.dav.apacheconf
- match: \b(DeflateBufferSize|DeflateCompressionLevel|DeflateFilterNote|DeflateMemLevel|DeflateWindowSize)\b
captures:
1: keyword.deflate.apacheconf
- match: \b(DirectoryIndex|DirectorySlash|FallbackResource)\b
captures:
1: keyword.dir.apacheconf
- match: \b(CacheDirLength|CacheDirLevels|CacheExpiryCheck|CacheGcClean|CacheGcDaily|CacheGcInterval|CacheGcMemUsage|CacheGcUnused|CacheMaxFileSize|CacheMinFileSize|CacheRoot|CacheSize|CacheTimeMargin)\b
captures:
1: keyword.disk_cache.apacheconf
- match: \b(DumpIOInput|DumpIOOutput)\b
captures:
1: keyword.dumpio.apacheconf
- match: \b(PassEnv|SetEnv|UnsetEnv)\b
captures:
1: keyword.env.apacheconf
- match: \b(ExpiresActive|ExpiresByType|ExpiresDefault)\b
captures:
1: keyword.expires.apacheconf
- match: \b(ExtFilterDefine|ExtFilterOptions)\b
captures:
1: keyword.ext_filter.apacheconf
- match: \b(CacheFile|MMapFile)\b
captures:
1: keyword.file_cache.apacheconf
- match: \b(AddOutputFilterByType|FilterChain|FilterDeclare|FilterProtocol|FilterProvider|FilterTrace)\b
captures:
1: keyword.filter.apacheconf
- match: \b(Header|RequestHeader)\b
captures:
1: keyword.headers.apacheconf
- match: \b(ImapBase|ImapDefault|ImapMenu)\b
captures:
1: keyword.imap.apacheconf
- match: \b(SSIEndTag|SSIErrorMsg|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|XBitHack)\b
captures:
1: keyword.include.apacheconf
- match: \b(ISAPIAppendLogToErrors|ISAPIAppendLogToQuery|ISAPICacheFile|ISAPIFakeAsync|ISAPILogNotSupported|ISAPIReadAheadBuffer)\b
captures:
1: keyword.isapi.apacheconf
- match: \b(LDAPCacheEntries|LDAPCacheTTL|LDAPConnectionTimeout|LDAPOpCacheEntries|LDAPOpCacheTTL|LDAPSharedCacheFile|LDAPSharedCacheSize|LDAPTrustedCA|LDAPTrustedCAType)\b
captures:
1: keyword.ldap.apacheconf
- match: \b(BufferedLogs|CookieLog|CustomLog|LogFormat|TransferLog|ForensicLog)\b
captures:
1: keyword.log.apacheconf
- match: \b(MCacheMaxObjectCount|MCacheMaxObjectSize|MCacheMaxStreamingBuffer|MCacheMinObjectSize|MCacheRemovalAlgorithm|MCacheSize)\b
captures:
1: keyword.mem_cache.apacheconf
- match: \b(AddCharset|AddEncoding|AddHandler|AddInputFilter|AddLanguage|AddOutputFilter|AddType|DefaultLanguage|ModMimeUsePathInfo|MultiviewsMatch|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|TypesConfig)\b
captures:
1: keyword.mime.apacheconf
- match: \b(ProtocolEcho|Example|AddModuleInfo|MimeMagicFile|CheckSpelling|ExtendedStatus|SuexecUserGroup|UserDir)\b
captures:
1: keyword.misc.apacheconf
- match: \b(CacheNegotiatedDocs|ForceLanguagePriority|LanguagePriority)\b
captures:
1: keyword.negotiation.apacheconf
- match: \b(NWSSLTrustedCerts|NWSSLUpgradeable|SecureListen)\b
captures:
1: keyword.nw_ssl.apacheconf
- match: \b(AllowCONNECT|NoProxy|ProxyBadHeader|ProxyBlock|ProxyDomain|ProxyErrorOverride|ProxyFtpDirCharset|ProxyIOBufferSize|ProxyMaxForwards|ProxyPass|ProxyPassMatch|ProxyPassReverse|ProxyPreserveHost|ProxyReceiveBufferSize|ProxyRemote|ProxyRemoteMatch|ProxyRequests|ProxyTimeout|ProxyVia)\b
captures:
1: keyword.proxy.apacheconf
- match: \b(RewriteBase|RewriteCond|RewriteEngine|RewriteLock|RewriteLog|RewriteLogLevel|RewriteMap|RewriteOptions|RewriteRule)\b
captures:
1: keyword.rewrite.apacheconf
- match: \b(BrowserMatch|BrowserMatchNoCase|SetEnvIf|SetEnvIfNoCase)\b
captures:
1: keyword.setenvif.apacheconf
- match: \b(LoadFile|LoadModule)\b
captures:
1: keyword.so.apacheconf
- match: \b(SSLCACertificateFile|SSLCACertificatePath|SSLCARevocationFile|SSLCARevocationPath|SSLCertificateChainFile|SSLCertificateFile|SSLCertificateKeyFile|SSLCipherSuite|SSLEngine|SSLMutex|SSLOptions|SSLPassPhraseDialog|SSLProtocol|SSLProxyCACertificateFile|SSLProxyCACertificatePath|SSLProxyCARevocationFile|SSLProxyCARevocationPath|SSLProxyCipherSuite|SSLProxyEngine|SSLProxyMachineCertificateFile|SSLProxyMachineCertificatePath|SSLProxyProtocol|SSLProxyVerify|SSLProxyVerifyDepth|SSLRandomSeed|SSLRequire|SSLRequireSSL|SSLSessionCache|SSLSessionCacheTimeout|SSLUserName|SSLVerifyClient|SSLVerifyDepth|SSLInsecureRenegotiation|SSLOpenSSLConfCmd)\b
captures:
1: keyword.ssl.apacheconf
- match: \b(Substitute|SubstituteInheritBefore|SubstituteMaxLineLength)\b
captures:
1: keyword.substitute.apacheconf
- match: \b(CookieDomain|CookieExpires|CookieName|CookieStyle|CookieTracking)\b
captures:
1: keyword.usertrack.apacheconf
- match: \b(VirtualDocumentRoot|VirtualDocumentRootIP|VirtualScriptAlias|VirtualScriptAliasIP)\b
captures:
1: keyword.vhost_alias.apacheconf
- match: \b(php_value|php_flag|php_admin_value|php_admin_flag)\b(\s+(.+?)(\s+(".+?"|.+?))?)?\s
captures:
1: keyword.php.apacheconf
3: entity.property.apacheconf
5: string.value.apacheconf
- match: '(%\{)((HTTP_USER_AGENT|HTTP_REFERER|HTTP_COOKIE|HTTP_FORWARDED|HTTP_HOST|HTTP_PROXY_CONNECTION|HTTP_ACCEPT|REMOTE_ADDR|REMOTE_HOST|REMOTE_PORT|REMOTE_USER|REMOTE_IDENT|REQUEST_METHOD|SCRIPT_FILENAME|PATH_INFO|QUERY_STRING|AUTH_TYPE|DOCUMENT_ROOT|SERVER_ADMIN|SERVER_NAME|SERVER_ADDR|SERVER_PORT|SERVER_PROTOCOL|SERVER_SOFTWARE|TIME_YEAR|TIME_MON|TIME_DAY|TIME_HOUR|TIME_MIN|TIME_SEC|TIME_WDAY|TIME|API_VERSION|THE_REQUEST|REQUEST_URI|REQUEST_FILENAME|IS_SUBREQ|HTTPS)|(.*?))(\})'
captures:
1: punctuation.variable.apacheconf
3: variable.env.apacheconf
4: variable.misc.apacheconf
5: punctuation.variable.apacheconf
- match: \b((text|image|application|video|audio)/.+?)\s
captures:
1: entity.mime-type.apacheconf
- match: \b(?i)(export|from|unset|set|on|off)\b
captures:
1: entity.helper.apacheconf
- match: \b(\d+)\b
captures:
1: constant.numeric.integer.decimal.apacheconf
- match: '\s(\[)(.*?)(\])\s'
captures:
1: punctuation.definition.flag.apacheconf
2: string.flag.apacheconf
3: punctuation.definition.flag.apacheconf
File diff suppressed because it is too large Load Diff
+71 -39
View File
@@ -1,46 +1,78 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Advanced CSV
# See http://www.sublimetext.com/docs/3/syntax.html
name: Comma Separated Values
file_extensions:
- csv
- tsv
scope: text.advanced_csv
scope: text.csv
variables:
field_separator: (?:[,;\t])
record_separator: (?:$\n?)
contexts:
prototype:
- match: (?={{record_separator}})
pop: true
fields:
- match: ''
push:
- field_or_record_separator
- field4
- field_or_record_separator
- field3
- field_or_record_separator
- field2
- field_or_record_separator
- field1
main:
- match: (\")
captures:
1: string.quoted.double.advanced_csv
push:
- meta_scope: meta.quoted.advanced_csv
- match: (\")
captures:
1: string.quoted.double.advanced_csv
pop: true
- include: main
- match: '(\[([+-]?\d*)(\:)?([+-]?\d*)(\,)?([+-]?\d*)(\:)?([+-]?\d*)\])?\s*([<>v^])?\s*(=)'
captures:
1: keyword.operator.advanced_csv
2: constant.numeric.formula.advanced_csv
4: constant.numeric.formula.advanced_csv
6: constant.numeric.formula.advanced_csv
8: constant.numeric.formula.advanced_csv
9: keyword.operator.advanced_csv
10: keyword.operator.advanced_csv
push:
- meta_scope: meta.range.advanced_csv
- match: (?=(\")|$)
pop: true
- include: scope:source.python
- match: '(?<=^|,|\s|\")([0-9.eE+-]+)(?=$|,|\s|\")'
scope: meta.number.advanced_csv
captures:
1: constant.numeric.advanced_csv
- match: '(?<=^|,|\s|\")([^, \t\"]+)(?=$|,|\s|\")'
scope: meta.nonnumber.advanced_csv
captures:
1: storage.type.advanced_csv
- match: (\,)
scope: meta.delimiter.advanced_csv
captures:
1: keyword.operator.advanced_csv
- meta_include_prototype: false
- match: '^'
set: fields
field_or_record_separator:
- meta_include_prototype: false
- match: '{{record_separator}}'
scope: punctuation.terminator.record.csv
pop: true
- match: '{{field_separator}}'
scope: punctuation.separator.sequence.csv
pop: true
field_contents:
- match: '"'
scope: punctuation.definition.string.begin.csv
push: double_quoted_string
- match: (?={{field_separator}}|{{record_separator}})
pop: true
double_quoted_string:
- meta_include_prototype: false
- meta_scope: string.quoted.double.csv
- match: '""'
scope: constant.character.escape.csv
- match: '"'
scope: punctuation.definition.string.end.csv
pop: true
field1:
- match: ''
set:
- meta_content_scope: meta.field-1.csv support.type
- include: field_contents
field2:
- match: ''
set:
- meta_content_scope: meta.field-2.csv support.function
- include: field_contents
field3:
- match: ''
set:
- meta_content_scope: meta.field-3.csv constant.numeric
- include: field_contents
field4:
- match: ''
set:
- meta_content_scope: meta.field-4.csv keyword.operator
- include: field_contents
+4 -3
View File
@@ -108,7 +108,7 @@ contexts:
- match: (?<!\.)\belse(\s)+if\b
comment: else if is a common mistake carried over from other languages. it works if you put in a second end, but its never what you want.
scope: invalid.deprecated.crystal
- match: '(?<!\.)\b(BEGIN|alias|as|begin|case|select|abstract|class|END|ensure|for|fun|if|ifdef|in|lib|module|of|out|private|protected|rescue|struct|with|union|enum|macro|then|type|unless|until|while)\b(?![?!])'
- match: '(?<!\.)\b(BEGIN|alias|as|begin|case|select|abstract|class|END|ensure|for|fun|if|ifdef|in|lib|module|of|out|private|protected|rescue|struct|with|union|enum|macro|then|unless|until|while)\b(?![?!])|(?<!\.)\btype\b\s*(?=[A-Z])'
comment: everything being a reserved word, not a value and needing a 'end' is a..
scope: keyword.control.primary.crystal
- match: '(?<!\.)\b(when|else|elsif)\b(?![?!])'
@@ -131,7 +131,7 @@ contexts:
scope: keyword.control.pseudo-method.crystal
- match: '\b(nil|true|false)\b(?![?!])'
scope: constant.language.crystal
- match: '\b(__(DIR|FILE|LINE|END_LINE)__|self)\b(?![?!])'
- match: '\b(__(DIR|FILE|LINE|END_LINE)__|self)\b(?![?!])|self[?]'
scope: variable.language.crystal
- match: '\b(initialize|new|loop|include|extend|raise|getter|setter|property|class_getter|class_setter|class_property|describe|context|it|with|delegate|def_hash|def_equals|def_equals_and_hash|forward_missing_to|record|assert_responds_to|spawn|annotation|verbatim)\b[!?]?'
comment: everything being a method but having a special function is a..
@@ -190,7 +190,7 @@ contexts:
push:
- meta_scope: meta.function.method.with-arguments.crystal
- meta_content_scope: variable.parameter.function.crystal
- match: \)\s*$|\)\s*:|\)\s*;
- match: \)
captures:
0: punctuation.definition.parameters.crystal
pop: true
@@ -705,6 +705,7 @@ contexts:
0: punctuation.definition.string.end.crystal
pop: true
- include: heredoc
- include: scope:text.html.basic
- include: scope:source.js
- include: interpolated_crystal
- include: escaped_char
+4 -2
View File
@@ -4,7 +4,6 @@
name: DotENV
file_extensions:
- .env
- .envrc
- .env.dist
- .env.local
- .env.sample
@@ -19,8 +18,11 @@ file_extensions:
- .env.production
- .env.production.local
- .env.dusk.local
- .flaskenv
- .env.staging
- .env.default
- .env.defaults
- .envrc
- .flaskenv
scope: source.env
contexts:
main:
+2
View File
@@ -4,6 +4,8 @@
name: fstab
file_extensions:
- fstab
- crypttab
- mtab
scope: source.fstab
contexts:
+2 -1
View File
@@ -25,12 +25,13 @@ contexts:
scope: comment.line.semicolon.ini
captures:
1: punctuation.definition.comment.ini
- match: '^\s*(\[)(.*?)(\])'
- match: '^\s*(\[)(.*?)(\])\s*(;.*)?$\n?'
scope: meta.tag.section.ini
captures:
1: punctuation.definition.section.ini
2: entity.section.ini
3: punctuation.definition.section.ini
4: comment.definition.section.ini
- match: '^(\s*(["'']?)(.+?)(\2)\s*(=))?\s*((["'']?)(.*?)(\7))\s*(;.*)?$\n?'
scope: meta.declaration.ini
captures:
+125
View File
@@ -0,0 +1,125 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Lean
file_extensions:
- lean
scope: source.lean
contexts:
main:
- include: comments
- match: '\b(?<!\.)(inductive|coinductive|structure|theorem|axiom|axioms|abbreviation|lemma|definition|def|instance|class|constant)\b\s+(\{[^}]*\})?'
captures:
1: keyword.other.definitioncommand.lean
push:
- meta_scope: meta.definitioncommand.lean
- match: '(?=\bwith\b|\bextends\b|[:\|\(\[\{⦃<>])'
pop: true
- include: comments
- include: definitionName
- match: ","
- match: \b(Prop|Type|Sort)\b
scope: storage.type.lean
- match: '\battribute\b\s*\[[^\]]*\]'
scope: storage.modifier.lean
- match: '@\[[^\]]*\]'
scope: storage.modifier.lean
- match: \b(?<!\.)(private|meta|mutual|protected|noncomputable)\b
scope: keyword.control.definition.modifier.lean
- match: \b(sorry)\b
scope: invalid.illegal.lean
- match: '#print\s+(def|definition|inductive|instance|structure|axiom|axioms|class)\b'
scope: keyword.other.command.lean
- match: '#(print|eval|reduce|check|help|exit|find|where)\b'
scope: keyword.other.command.lean
- match: \b(?<!\.)(import|export|prelude|theory|definition|def|abbreviation|instance|renaming|hiding|exposing|parameter|parameters|begin|constant|constants|lemma|variable|variables|theorem|example|open|axiom|inductive|coinductive|with|structure|universe|universes|alias|precedence|reserve|postfix|prefix|infix|infixl|infixr|notation|end|using|namespace|section|local|set_option|extends|include|omit|class|classes|instances|raw|run_cmd|restate_axiom)(?!\.)\b
scope: keyword.other.lean
- match: \b(?<!\.)(calc|have|this|match|do|suffices|show|by|in|at|let|forall|fun|exists|assume|from|obtain|haveI|λ)(?!\.)\b
scope: keyword.other.lean
- match: «
push:
- meta_content_scope: entity.name.lean
- match: »
pop: true
- match: \b(?<!\.)(if|then|else)\b
scope: keyword.control.lean
- match: '"'
captures:
0: punctuation.definition.string.begin.lean
push:
- meta_scope: string.quoted.double.lean
- match: '"'
captures:
0: punctuation.definition.string.end.lean
pop: true
- match: '\\[\\"nt'']'
scope: constant.character.escape.lean
- match: '\\x[0-9A-Fa-f][0-9A-Fa-f]'
scope: constant.character.escape.lean
- match: '\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]'
scope: constant.character.escape.lean
- match: '''[^\\'']'''
scope: string.quoted.single.lean
- match: '''(\\(x..|u....|.))'''
scope: string.quoted.single.lean
captures:
1: constant.character.escape.lean
- match: '`+[^\[(]\S+'
scope: entity.name.lean
- match: '\b([0-9]+|0([xX][0-9a-fA-F]+))\b'
scope: constant.numeric.lean
blockComment:
- match: /-
push:
- meta_scope: comment.block.lean
- match: "-/"
pop: true
- include: scope:source.lean.markdown
- include: blockComment
comments:
- include: dashComment
- include: docComment
- include: stringBlock
- include: modDocComment
- include: blockComment
dashComment:
- match: (--)
captures:
0: punctuation.definition.comment.lean
push:
- meta_scope: comment.line.double-dash.lean
- match: $
pop: true
- include: scope:source.lean.markdown
definitionName:
- match: '\b[^:«»\(\)\{\}[:space:]=→λ∀?][^:«»\(\)\{\}[:space:]]*'
scope: entity.name.function.lean
- match: «
push:
- meta_content_scope: entity.name.function.lean
- match: »
pop: true
docComment:
- match: /--
push:
- meta_scope: comment.block.documentation.lean
- match: "-/"
pop: true
- include: scope:source.lean.markdown
- include: blockComment
modDocComment:
- match: /-!
push:
- meta_scope: comment.block.documentation.lean
- match: "-/"
pop: true
- include: scope:source.lean.markdown
- include: blockComment
stringBlock:
- match: /-"
push:
- meta_scope: comment.block.string.lean
- match: '"-/'
pop: true
- include: scope:source.lean.markdown
- include: blockComment
+147 -29
View File
@@ -7,47 +7,165 @@ file_extensions:
scope: source.man
variables:
section_heading: '^\S.*$'
section_heading: '^(?!#)\S.*$'
command_line_option: '(--?[A-Za-z0-9][_A-Za-z0-9-]*)'
contexts:
prototype:
# ignore syntax test lines
- match: '^#'
push:
- meta_scope: comment.syntax-test.man
- match: $\n?
pop: true
main:
- match: ^
push: first_line
first_line:
- match: '([A-Z0-9_\-]+)(\()([^)]+)(\))'
- match: '([A-Z0-9_\-]+)(\()([^)]+)(\))\s*'
captures:
1: meta.preprocessor
2: keyword.operator
3: string.quoted.other
4: keyword.operator
- match: '$'
push: body
body:
- match: '^(SYNOPSIS|SYNTAX|SINTASSI|SKŁADNIA|СИНТАКСИС|書式)'
push: Packages/C/C.sublime-syntax
scope: markup.heading
with_prototype:
- match: '(?={{section_heading}})'
1: meta.preprocessor.man
2: keyword.operator.man
3: string.quoted.other.man
4: keyword.operator.man
push:
- match: (?:[\w'-]+|\s(?!\s))
scope: markup.heading.title.man
- match: \s\s
pop: true
- match: '(?=\S|$)'
pop: true
- match: '^\S.*$'
scope: markup.heading
- match: '$'
set: body
- match: '\b([A-Za-z0-9_\-]+)(\()([^)]*)(\))'
body:
# English, ..., ..., ..., Russian, ...
- match: '^(?:SYNOPSIS|SYNTAX|SINTASSI|SKŁADNIA|СИНТАКСИС|書式)'
scope: markup.heading.synopsis.man
embed: synopsis
escape: '(?={{section_heading}})'
- match: '^(?:USAGE)'
scope: markup.heading.synopsis.man
embed: synopsis
escape: '(?={{section_heading}})'
- match: '{{section_heading}}'
scope: markup.heading.other.man
embed: options # some man pages put command line options under the description heading
escape: '(?={{section_heading}})'
function-call:
- match: '\b([A-Za-z0-9_\-]+\.)?([A-Za-z0-9_\-]+)(\()([^)]*)(\))'
captures:
1: entity.name.function
2: keyword.operator
3: constant.numeric
4: keyword.operator
1: entity.name.function.man
2: entity.name.function.man
3: keyword.operator.man
4: constant.numeric.man
5: keyword.operator.man
env-var:
- match: '(\$)(?!\d)(\w+)\b'
captures:
1: punctuation.definition.variable.man
2: constant.other.man
options:
# command-line options like --option=value, --some-flag, or -x
- match: '(?:[^a-zA-Z0-9_-]|^|\s)(--?[A-Za-z0-9][A-Za-z0-9-]*)(?:(=)?("?)([A-Za-z0-9]+)("?))?'
- match: '^[ ]{7}(?=-)'
push: expect-command-line-option
- match: '(?:[^a-zA-Z0-9_-]|^|\s){{command_line_option}}'
captures:
1: entity.name
2: keyword.operator
3: punctuation.definition.string.begin
4: variable.parameter
3: punctuation.definition.string.end
1: entity.name.command-line-option
push:
- match: '='
scope: keyword.operator.man
set:
- match: '[^],.() ]+'
scope: variable.parameter.man
pop: true
- match: $
pop: true
- match: ''
pop: true
- include: function-call
- include: c-code
- include: env-var
expect-command-line-option:
- match: '[A-Za-z0-9-]+'
scope: entity.name.command-line-option.man
- match: '(\[)(=)'
captures:
1: punctuation.section.brackets.begin.man
2: keyword.operator.man
push: [command-line-option-or-pipe, expect-parameter]
- match: '\['
push:
- meta_scope: entity.name.command-line-option.man
- match: '\]'
pop: true
- match: '='
scope: keyword.operator.man
push: expect-parameter
- match: (?=.*\.)
pop: true
- match: '\s'
push: expect-parameter
- match: '(,)\s*'
captures:
1: punctuation.separator.man
- match: $|(?=\])
pop: true
expect-parameter:
- match: '[A-Za-z0-9-]+'
scope: variable.parameter.man
- match: (?=\s+\|)
pop: true
- match: \|
scope: keyword.operator.logical.man
- match: '\['
scope: punctuation.section.brackets.begin.man
push:
- match: '\]'
scope: punctuation.section.brackets.end.man
pop: true
- include: expect-parameter
- match: '$|(?=[],]|{{command_line_option}})'
pop: true
c-code:
- match: '^(?=\s+(?:#include\b|#define\b|/\*|struct\s+(\w+\s*)?\{))'
embed: scope:source.c
#embed_scope: source.c.embedded.man
#escape: ^(?!#|\1|\s*(?:$|/\*|#include\b|#define\b))
escape: ^(?=\s*(?:\(.*\.\)\s*$|[A-Z](?![A-Z])))
synopsis:
- include: c-code
- match: \[
scope: punctuation.section.brackets.begin.man
push: command-line-option-or-pipe
- include: options
command-line-option-or-pipe:
- match: (\|)\s*
captures:
1: keyword.operator.logical.man
#- match: (?={{command_line_option}})
- match: \w+-\w+
- match: (?=-)
push:
- match: (?=\s*\|)
pop: true
- include: expect-command-line-option
- match: \]
scope: punctuation.section.brackets.end.man
pop: true
- match: \[
scope: punctuation.section.brackets.begin.man
push: command-line-option-or-pipe
+52
View File
@@ -0,0 +1,52 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Ninja
file_extensions:
- ninja
scope: source.ninja
contexts:
main:
- match: (#).*$\n?
comment: Comment line.
scope: comment.line.number-sign.ninja
captures:
1: punctuation.definition.comment.ninja
- match: ^(rule)\b
comment: Rule keyword and keywords for a rule.
captures:
1: keyword.other.ninja
push:
- match: ^(?=\S)
pop: true
- include: main
- match: \b(?:command|deps|depfile|description|generator|pool|restat|rspfile|rspfile_content)\b
scope: keyword.other.ninja
- match: ^(pool)\b
comment: Pool keyword and keywords for a pool.
captures:
1: keyword.other.ninja
push:
- match: ^(?=\S)
pop: true
- include: main
- match: \b(?:depth)\b
scope: keyword.other.ninja
- match: ^(?:build|rule|default|include|subninja)\b
comment: Other Keywords.
scope: keyword.other.ninja
- match: '(?:[=:]|\|{1,2})(?=\s)'
comment: Operators for variable assignment (=), rule definition (:), implicit (|) and order only (||) dependencies.
scope: keyword.operator.ninja
- match: \$$
comment: Line wrap.
scope: keyword.operator.ninja
- match: \$\$
comment: Dollar literal.
scope: keyword.operator.ninja
- match: '\$[[:alnum:]_-]+'
comment: Simple variables, e.g. $var.
scope: variable.other.ninja
- match: '\${[[:alnum:]_.-]+}'
comment: "Variables, e.g. ${some.var.name}."
scope: variable.other.ninja
+103
View File
@@ -0,0 +1,103 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: QML
file_extensions:
- qml
- qmlproject
scope: source.qml
contexts:
main:
- match: /\*(?!/)
comment: Block comment.
push:
- meta_scope: comment.block.documentation.qml
- match: \*/
pop: true
- match: //.*$
comment: Line comment.
scope: comment.line.double-slash.qml
- match: \b(import)\s+
comment: import statement.
captures:
1: keyword.other.import.qml
push:
- meta_scope: meta.import.qml
- match: $
pop: true
- match: '([\w\d\.]+)\s+(\d+\.\d+)(?:\s+(as)\s+([A-Z][\w\d]*))?'
comment: "import Namespace VersionMajor.VersionMinor [as SingletonTypeIdentifier]"
scope: meta.import.namespace.qml
captures:
1: entity.name.class.qml
2: constant.numeric.qml
3: keyword.other.import.qml
4: entity.name.class.qml
- match: '(\"[^\"]+\")(?:\s+(as)\s+([A-Z][\w\d]*))?'
comment: "import <string> [as Script]"
scope: meta.import.dirjs.qml
captures:
1: string.quoted.double.qml
2: keyword.other.import.qml
3: entity.name.class.qml
- match: '\b[A-Z]\w*\b'
comment: Capitalized word (class or enum).
scope: support.class.qml
- match: '(((^|\{)\s*)|\b)on[A-Z]\w*\b'
comment: onSomething - handler.
scope: support.class.qml
- match: '(?:^|\{)\s*(id)\s*\:\s*([^;\s]+)\b'
comment: "id: <something>"
scope: meta.id.qml
captures:
1: keyword.other.qml
2: storage.modifier.qml
- match: '^\s*(?:(default|readonly)\s+)?(property)\s+(?:(alias)|([\w\<\>]+))\s+(\w+)'
comment: property definition.
scope: meta.propertydef.qml
captures:
1: keyword.other.qml
2: keyword.other.qml
3: keyword.other.qml
4: storage.type.qml
5: entity.other.attribute-name.qml
- match: \b(signal)\s+(\w+)\s*
comment: "signal <signalName>[([<type> <parameter>[, ...]])]"
captures:
1: keyword.other.qml
2: support.function.qml
push:
- meta_scope: meta.signal.qml
- match: ;|(?=/)|$
pop: true
- match: (\w+)\s+(\w+)
scope: meta.signal.parameters.qml
captures:
1: storage.type.qml
2: variable.parameter.qml
- match: (?:\b|\s+)(?:(true|false|null|undefined)|(var|void)|(on|as|enum|connect|break|case|catch|continue|debugger|default|delete|do|else|finally|for|if|in|instanceof|new|return|switch|this|throw|try|typeof|while|with))\b
comment: js keywords.
scope: meta.keyword.qml
captures:
1: constant.language.qml
2: storage.type.qml
3: keyword.control.qml
- match: '\b(function)\s+([\w_]+)\s*(?=\()'
comment: function definition.
scope: meta.function.qml
captures:
1: storage.type.qml
2: entity.name.function.untitled
- match: '\b[\w_]+\s*(?=\()'
comment: function call.
scope: support.function.qml
- match: '(?:^|\{|;)\s*[a-z][\w\.]*\s*(?=\:)'
comment: "property (property: <something>)."
scope: entity.other.attribute-name.qml
- match: (?<=\.)\b\w*
comment: property of the variable (name.property).
scope: entity.other.attribute-name.qml
- match: '\b([a-z_]\w*)\b'
comment: All non colored words are assumed to be variables.
scope: variable.parameter
- include: scope:source.js
+2 -1
View File
@@ -1,9 +1,10 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Robot Framework syntax highlighting.
name: Robot Framework
file_extensions:
- robot
- resource
scope: source.robot
contexts:
main:
+33
View File
@@ -0,0 +1,33 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: SML
file_extensions:
- sml
- cm
- sig
scope: source.sml
contexts:
main:
- match: \b(EQUAL|GREATER|LESS|NONE|SOME|abstraction|abstype|and|andalso|array|as|before|bool|case|char|datatype|do|else|end|eqtype|exception|exn|false|fn|fun|functor|handle|if|in|include|infix|infixr|int|let|list|local|nil|nonfix|not|o|of|op|open|option|orelse|overload|print|raise|real|rec|ref|sharing|sig|signature|string|struct|structure|substring|then|true|type|unit|val|vector|where|while|with|withtype|word)\b
comment: SML keywords
scope: keyword.source.sml
- match: '\b[0-9]+\b'
comment: Numeric constants
scope: constant.numeric.sml
- match: '\b[A-Z]([A-z0-9]*)\b'
comment: Built in types
scope: support.type.sml
- match: '"(\\"|[^"])*"'
comment: String constant
scope: string.sml
- match: \(\*
comment: Comment
push:
- meta_scope: comment.sml
- match: \*\)
pop: true
- match: '(\(\)|=>|::|\[\]|->|:>)'
comment: Character
scope: constant.character.sml
+306
View File
@@ -0,0 +1,306 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/syntax.html
name: Ruby Slim
file_extensions:
- slim
- skim
scope: text.slim
contexts:
main:
- match: ^(\s*)(ruby):$
captures:
2: constant.language.name.ruby.filter.slim
push:
- meta_scope: text.ruby.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.ruby
- match: ^(\s*)(javascript):$
captures:
2: constant.language.name.javascript.filter.slim
push:
- meta_scope: source.js.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.js
- match: ^(---)\s*\n
captures:
1: storage.frontmatter.slim
push:
- meta_scope: source.yaml.meta.slim
- match: ^(---)\s*\n
captures:
1: storage.frontmatter.slim
pop: true
- include: scope:source.yaml
- match: ^(\s*)(coffee):$
captures:
2: constant.language.name.coffeescript.filter.slim
push:
- meta_scope: text.coffeescript.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.coffee
- match: ^(\s*)(markdown):$
captures:
2: constant.language.name.markdown.filter.slim
push:
- meta_scope: text.markdown.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:text.html.markdown
- match: ^(\s*)(css):$
captures:
2: constant.language.name.css.filter.slim
push:
- meta_scope: text.css.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.css
- match: ^(\s*)(sass):$
captures:
2: constant.language.name.sass.filter.slim
push:
- meta_scope: text.sass.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.sass
- match: ^(\s*)(scss):$
captures:
2: constant.language.name.scss.filter.slim
push:
- meta_scope: text.scss.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.scss
- match: ^(\s*)(less):$
captures:
2: constant.language.name.less.filter.slim
push:
- meta_scope: text.less.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.less
- match: ^(\s*)(erb):$
captures:
2: constant.language.name.erb.filter.slim
push:
- meta_scope: text.erb.filter.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:source.erb
- match: ^(! )($|\s.*)
scope: meta.prolog.slim
captures:
1: punctuation.definition.prolog.slim
- match: ^(\s*)(/)\s*.*$
captures:
2: comment.line.slash.slim
push:
- meta_scope: comment.block.slim
- match: ^(?!(\1\s)|\s*$)
pop: true
- match: ^\s*(?=-)
push:
- match: $
pop: true
- include: rubyline
- match: (?==+|~)
push:
- match: $
pop: true
- include: rubyline
- include: tag-attribute
- include: embedded-ruby
- match: ^(\s*)(\||')\s*
comment: Verbatim text (can include HTML tags and copied lines)
push:
- match: ^(?!(\1\s)|\s*$)
pop: true
- include: scope:text.html.basic
- include: embedded-ruby
- match: '^\s*(\.|#|[-a-zA-Z0-9]+)([\w-]+)?'
comment: '1 - dot OR hash OR any combination of word, number; 2 - OPTIONAL any combination of word, number, dash or underscore (following a . or'
captures:
1: entity.name.tag.slim
2: entity.other.attribute-name.event.slim
push:
- meta_scope: meta.tag
- match: '$|(?!\.|#|:|-|~|/|\}|\]|\*|\s?[\*\{])'
captures:
1: entity.name.tag.slim
2: entity.other.attribute-name.event.slim
pop: true
- match: '(:[\w\d]+)+'
comment: XML
push:
- meta_scope: entity.name.tag.slim
- match: $|\s
pop: true
- match: '(:\s)(\.|#|[a-zA-Z0-9]+)([\w-]+)?'
comment: Inline HTML / 1 - colon; 2 - dot OR hash OR any combination of word, number; 3 - OPTIONAL any combination of word, number, dash or underscore (following a . or
captures:
1: punctuation.definition.tag.end.slim
2: entity.name.tag.slim
3: entity.other.attribute-name.event.slim
push:
- match: '$|(?!\.|#|=|-|~|/|\}|\]|\*|\s?[\*\{])'
captures:
1: punctuation.definition.tag.end.slim
2: entity.name.tag.slim
3: entity.other.attribute-name.event.slim
pop: true
- include: root-class-id-tag
- include: tag-attribute
- match: '(\*\{)(?=.*\}|.*\|\s*$)'
comment: Splat attributes
captures:
1: punctuation.section.embedded.ruby
push:
- meta_scope: source.ruby.embedded.slim
- match: '(\})|$|^(?!.*\|\s*$)'
captures:
1: punctuation.section.embedded.ruby
pop: true
- include: embedded-ruby
- include: root-class-id-tag
- include: rubyline
- match: /
scope: punctuation.terminator.tag.slim
- match: ^\s*(\\.)
captures:
1: meta.escape.slim
- match: ^\s*(?=\||')
push:
- match: $
pop: true
- include: embedded-ruby
- include: scope:text.html.basic
- match: '(?=<[\w\d\:]+)'
comment: Inline and root-level HTML tags
push:
- match: $|\/\>
pop: true
- include: scope:text.html.basic
continuation:
- match: '([\\,])\s*\n'
captures:
1: punctuation.separator.continuation.slim
delimited-ruby-a:
- match: '=\('
push:
- meta_scope: source.ruby.embedded.slim
- match: \)(?=( \w|$))
pop: true
- include: scope:source.ruby.rails
delimited-ruby-b:
- match: '=\['
push:
- meta_scope: source.ruby.embedded.slim
- match: '\](?=( \w|$))'
pop: true
- include: scope:source.ruby.rails
delimited-ruby-c:
- match: '=\{'
push:
- meta_scope: source.ruby.embedded.slim
- match: '\}(?=( \w|$))'
pop: true
- include: scope:source.ruby.rails
embedded-ruby:
- match: '(?<!\\)#\{{1,2}'
captures:
0: punctuation.section.embedded.ruby
push:
- meta_scope: source.ruby.embedded.html
- match: '\}{1,2}'
captures:
0: punctuation.section.embedded.ruby
pop: true
- include: scope:source.ruby.rails
entities:
- match: '(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)'
scope: constant.character.entity.html
captures:
1: punctuation.definition.entity.html
3: punctuation.definition.entity.html
- match: '&'
scope: invalid.illegal.bad-ampersand.html
interpolated-ruby:
- match: '=(?=\b)'
push:
- meta_scope: source.ruby.embedded.html
- match: \s|\w$
pop: true
root-class-id-tag:
- match: '(\.|#)([\w\d\-]+)'
captures:
1: punctuation.separator.key-value.html
2: entity.other.attribute-name.html
rubyline:
- match: (==|=)(<>|><|<'|'<|<|>)?|-
comment: Hack to thwart Sublime's Ruby highlighter. It thinks do without a variable continues the next line (this can be muted with a / at the end of the line). For things like yields, do is unnecessary without an argument, so this hack will suffice
push:
- meta_scope: meta.line.ruby.slim
- meta_content_scope: source.ruby.embedded.slim
- match: (do\s*\n$)|(?<!\\|,|,\n|\\\n)$
captures:
1: keyword.control.start-block.ruby
pop: true
- match: '#.*$'
comment: Hack to let ruby comments work in this context properly
scope: comment.line.number-sign.ruby
- include: continuation
- include: scope:source.ruby.rails
string-double-quoted:
- match: (")(?=.*")
captures:
0: punctuation.definition.string.begin.html
push:
- meta_scope: string.quoted.double.html
- meta_content_scope: meta.toc-list.id.html
- match: '"'
captures:
0: punctuation.definition.string.end.html
pop: true
- include: embedded-ruby
- include: entities
string-single-quoted:
- match: (')(?=.*')
captures:
0: punctuation.definition.string.begin.html
push:
- meta_scope: string.quoted.single.html
- meta_content_scope: meta.toc-list.id.html
- match: "'"
captures:
0: punctuation.definition.string.end.html
pop: true
- include: embedded-ruby
- include: entities
tag-attribute:
- match: '([\w.#_-]+)(=)(?!\s)(true|false|nil)?(\s*\(|\{)?'
captures:
1: entity.other.attribute-name.event.slim
2: punctuation.separator.key-value.html
3: constant.language.slim
push:
- meta_scope: meta.attribute-with-value.slim
- match: '\}|\)|$'
captures:
1: entity.other.attribute-name.event.slim
2: punctuation.separator.key-value.html
3: constant.language.slim
pop: true
- include: tag-stuff
- include: string-double-quoted
- include: string-single-quoted
tag-stuff:
- include: tag-attribute
- include: interpolated-ruby
- include: delimited-ruby-a
- include: delimited-ruby-b
- include: delimited-ruby-c
- include: rubyline
- include: embedded-ruby
+63 -35
View File
@@ -9,10 +9,7 @@ contexts:
main:
- include: directives
- include: statements
- match: \A(#!).*(?=$)
scope: comment.line.shebang.ts
captures:
1: punctuation.definition.comment.ts
- include: shebang
comment:
- match: /\*\*(?!/)
captures:
@@ -120,7 +117,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -815,7 +812,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -856,7 +853,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -918,7 +915,7 @@ contexts:
captures:
1: keyword.control.as.ts
push:
- match: '(?=$|^|[;,:})\]]|\|\||\&\&|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))(as)\s+)|(\s+\<))'
- match: '(?=^|[;),}\]:?\-\+\>]|\|\||\&\&|\!\=\=|$|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))(as)\s+)|(\s+\<))'
pop: true
- include: type
- match: \.\.\.
@@ -933,7 +930,7 @@ contexts:
scope: keyword.operator.comparison.ts
- match: <=|>=|<>|<|>
scope: keyword.operator.relational.ts
- match: '(\!)\s*(/)(?![/*])'
- match: '(?<=[_$[:alnum:]])(\!)\s*(/)(?![/*])'
captures:
1: keyword.operator.logical.ts
2: keyword.operator.arithmetic.ts
@@ -1038,7 +1035,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -1079,7 +1076,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -1125,25 +1122,42 @@ contexts:
- match: \*
scope: keyword.generator.asterisk.ts
function-call:
- match: '(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\)]))\s*(?:(\?\.\s*)|(\!))?(<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?\()'
- match: '(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\)]))\s*(?:(\?\.\s*)|(\!))?((<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?\())'
push:
- match: '(?<=\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\)]))\s*(?:(\?\.\s*)|(\!))?(<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?\()'
- match: '(?<=\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\)]))\s*(?:(\?\.\s*)|(\!))?((<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?\())'
pop: true
- match: '(?=(([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))'
push:
- meta_scope: meta.function-call.ts
- match: '(?=\s*(?:(\?\.\s*)|(\!))?(<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?\()'
- match: '(?=\s*(?:(\?\.\s*)|(\!))?((<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?\())'
pop: true
- include: support-function-call-identifiers
- match: '(\#?[_$[:alpha:]][_$[:alnum:]]*)'
scope: entity.name.function.ts
- include: function-call-target
- include: comment
- match: \?\.
scope: meta.function-call.ts punctuation.accessor.optional.ts
- match: \!
scope: meta.function-call.ts keyword.operator.definiteassignment.ts
- include: function-call-optionals
- include: type-arguments
- include: paren-expression
- match: '(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\)]))(<\s*[\{\[\(]\s*$))'
push:
- match: '(?<=\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\)]))(<\s*[\{\[\(]\s*$))'
pop: true
- match: '(?=(([_$[:alpha:]][_$[:alnum:]]*)(\s*\??\.\s*(\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\??\.\s*\#?[_$[:alpha:]][_$[:alnum:]]*))'
push:
- meta_scope: meta.function-call.ts
- match: '(?=(<\s*[\{\[\(]\s*$))'
pop: true
- include: function-call-target
- include: comment
- include: function-call-optionals
- include: type-arguments
function-call-optionals:
- match: \?\.
scope: meta.function-call.ts punctuation.accessor.optional.ts
- match: \!
scope: meta.function-call.ts keyword.operator.definiteassignment.ts
function-call-target:
- include: support-function-call-identifiers
- match: '(\#?[_$[:alpha:]][_$[:alnum:]]*)'
scope: entity.name.function.ts
function-declaration:
- match: '(?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))(?:(\bexport)\s+)?(?:(\bdeclare)\s+)?(?:(async)\s+)?(function\b)(?:\s*(\*))?(?:(?:\s+|(?<=\*))([_$[:alpha:]][_$[:alnum:]]*))?\s*'
captures:
@@ -1221,7 +1235,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -1431,7 +1445,7 @@ contexts:
captures:
1: keyword.operator.expression.instanceof.ts
push:
- match: '(?<=\))|(?=[;),}\]:?]|\|\||\&\&|$|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))function((\s+[_$[:alpha:]][_$[:alnum:]]*)|(\s*[\(]))))'
- match: '(?<=\))|(?=[;),}\]:?\-\+\>]|\|\||\&\&|\!\=\=|$|(([\&\~\^\|]\s*)?[_$[:alpha:]][_$[:alnum:]]*\s+instanceof(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.)))|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))function((\s+[_$[:alpha:]][_$[:alnum:]]*)|(\s*[\(]))))'
pop: true
- include: type
interface-declaration:
@@ -1582,7 +1596,7 @@ contexts:
1: keyword.operator.new.ts
push:
- meta_scope: new.expr.ts
- match: '(?<=\))|(?=[;),}\]:\-\+]|\|\||\&\&|$|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))new(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.)))|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))function((\s+[_$[:alpha:]][_$[:alnum:]]*)|(\s*[\(]))))'
- match: '(?<=\))|(?=[;),}\]:?\-\+\>]|\|\||\&\&|\!\=\=|$|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))new(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.)))|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))function((\s+[_$[:alpha:]][_$[:alnum:]]*)|(\s*[\(]))))'
pop: true
- include: paren-expression
- include: class-declaration
@@ -1864,7 +1878,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -1900,7 +1914,7 @@ contexts:
1: keyword.control.as.ts
push:
- meta_scope: meta.object.member.ts
- match: '(?=$|^|[,}]|\|\||\&\&|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))(as)\s+))'
- match: '(?=[;),}\]:?\-\+\>]|\|\||\&\&|\!\=\=|$|^|((?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))(as)\s+))'
pop: true
- include: type
- match: '(?=[_$[:alpha:]][_$[:alnum:]]*\s*=)'
@@ -2010,7 +2024,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -2051,7 +2065,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -2313,6 +2327,11 @@ contexts:
- include: type-object
- include: type-predicate-operator
- include: type
shebang:
- match: \A(#!).*(?=$)
scope: comment.line.shebang.ts
captures:
1: punctuation.definition.comment.ts
single-line-comment-consuming-line-ending:
- match: '(^[ \t]+)?((//)(?:\s*((@)internal)(?=\s|$))?)'
captures:
@@ -2684,20 +2703,20 @@ contexts:
0: case-clause.expr.ts punctuation.definition.section.case-statement.ts
- include: statements
template:
- match: '(?=(([_$[:alpha:]][_$[:alnum:]]*\s*\??\.\s*)*|(\??\.\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?`)'
- match: '(?=(([_$[:alpha:]][_$[:alnum:]]*\s*\??\.\s*)*|(\??\.\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?`)'
push:
- meta_scope: string.template.ts
- match: (?=`)
pop: true
- match: '(?=(([_$[:alpha:]][_$[:alnum:]]*\s*\??\.\s*)*|(\??\.\s*)?)([_$[:alpha:]][_$[:alnum:]]*))'
push:
- match: '(?=(<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?`)'
- match: '(?=(<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)?`)'
pop: true
- include: support-function-call-identifiers
- match: "([_$[:alpha:]][_$[:alnum:]]*)"
scope: entity.name.function.tagged-template.ts
- include: type-arguments
- match: '([_$[:alpha:]][_$[:alnum:]]*)\s*(?=(<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''[^\'']*\'')|(\"[^\"]*\")|(\`[^\`]*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)`)'
- match: '([_$[:alpha:]][_$[:alnum:]]*)\s*(?=(<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))(([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>|\<\s*(((keyof|infer|awaited|typeof|readonly)\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\''([^\''\\]|\\.)*\'')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))(?=\s*([\<\>\,\.\[]|=>|&(?!&)|\|(?!\|)))))([^<>\(]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(?<==)\>)*(?<!=)\>))*(?<!=)\>)*(?<!=)>\s*)`)'
captures:
1: entity.name.function.tagged-template.ts
push:
@@ -2974,6 +2993,8 @@ contexts:
scope: keyword.operator.ternary.ts
- match: '(?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))infer(?=\s+[_$[:alpha:]])'
scope: keyword.operator.expression.infer.ts
- match: '(?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))awaited(?=\s+[_$[:alpha:]])'
scope: keyword.operator.expression.awaited.ts
- match: '(?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))import(?=\s*\()'
scope: keyword.operator.expression.import.ts
type-parameters:
@@ -3063,6 +3084,13 @@ contexts:
captures:
0: meta.brace.square.ts
pop: true
- match: \.\.\.
scope: keyword.operator.rest.ts
- match: '(?<![_$[:alnum:]])(?:(?<=\.\.\.)|(?<!\.))([_$[:alpha:]][_$[:alnum:]]*)\s*(\?)?\s*(:)'
captures:
1: entity.name.label.ts
2: keyword.operator.optional.ts
3: punctuation.separator.label.ts
- include: type
- include: punctuation-comma
typeof-operator:
@@ -3159,7 +3187,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -3200,7 +3228,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -3246,7 +3274,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
@@ -3287,7 +3315,7 @@ contexts:
# arrow function possible to detect only with => on same line
(
(<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<]|\<\s*([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\[([^\[\]]|(\[[^\[\]]*\]))*\]))([^=<>]|=[^<])*\>)*\>)*>\s*)? # typeparameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()]|(\(([^\(\)]|(\([^\(\)]*\)))*\)))*)?\) # parameters
\(\s*(\/\*([^\*]|(\*[^\/]))*\*\/\s*)*(([_$[:alpha:]]|(\{([^\{\}]|(\{[^\{\}]*\}))*\})|(\[([^\[\]]|(\[[^\[\]]*\]))*\])|(\.\.\.\s*[_$[:alpha:]]))([^()\'\"\`]|(\(([^\(\)]|(\([^\(\)]*\)))*\))|(\'([^\'\\]|\\.)*\')|(\"([^\"\\]|\\.)*\")|(\`([^\`\\]|\\.)*\`))*)?\) # parameters
(\s*:\s*([^<>\(\)\{\}]|\<([^<>]|\<[^<>]+\>)+\>|\([^\(\)]+\)|\{[^\{\}]+\})+)? # return type
\s*=> # arrow operator
)
-91
View File
@@ -1,91 +0,0 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: VimL
file_extensions:
- vim
- .vimrc
scope: source.viml
contexts:
main:
- include: comment
- include: string_quoted_double
- include: string_quoted_single
- include: string_regex
- include: inline_comment
- include: number_int
- include: number_hex
- include: keyword
- include: support_function
- include: support_variable
- include: support_type
- include: function_params
- include: function_definition
- include: function_call
- include: function
- include: variable
- include: expr
comment:
- match: ^\s*".*$
scope: comment.line.quotes.viml
captures:
1: punctuation.definition.comment.vim
expr:
- match: (\|\||&&|==(\?|#)?|(!|>|<)=(#|\?)?|(=|!)~(#|\?)?|(>|<)(#|\?)is|isnot|\.|\*|\\|%)
scope: storage.function.viml
function:
- match: \b(fu(n|nction)?|end(f|fu|fun|function)?)\b
scope: storage.function.viml
function_call:
- match: '(([sgbwtl]|)?:?[0-9a-zA-Z_#]+)(?=\()'
scope: support.function.any-method
function_definition:
- match: '^\s*(function)\s*!?\s+(?=(s:)?[0-9a-zA-Z_#]+\s*\()'
captures:
1: storage.function.viml
push:
- meta_scope: meta.function.viml
- match: (\()
captures:
1: punctuation.definition.parameters.begin.viml
pop: true
- match: "(s:)?[0-9a-zA-Z_#]+"
scope: entity.name.function.viml
function_params:
- match: '-\w+='
scope: support.type.viml
inline_comment:
- match: '(?!\$)(")(?!\{).*$\n?'
scope: comment.line.quotes.viml
captures:
1: punctuation.definition.comment.vim
keyword:
- match: \b(if|while|for|try|return|throw|end(if|for|while|try)?|au(g|group)|else(if|)?|do|in|catch|finally|:)\b
scope: keyword.control.viml
number_hex:
- match: "0x[0-9a-f]+"
scope: constant.numeric.hex
number_int:
- match: '-?\d+'
scope: constant.numeric.integer
string_quoted_double:
- match: '"(\\\\|\\"|\n[^\S\n]*\\|[^\n"])*"'
scope: string.quoted.double.viml
string_quoted_single:
- match: '''(''''|\n[^\S\n]*\\|[^\n''])*'''
scope: string.quoted.single.viml
string_regex:
- match: '/(\\\\|\\/|\n[^\S\n]*\\|[^\n/])*/'
scope: string.regexp.viml
support_function:
- match: \b(set(local|global)?|let|command|filetype|colorscheme|\w*map|\w*a(b|brev)?|syn|exe(c|cute)?|ec(ho|)?|au(tocmd|)?)\b
scope: support.function.viml
support_type:
- match: <.*?>
scope: support.type.viml
support_variable:
- match: '\b(am(enu|)?|(hl|inc)?search|[Bb]uf([Nn]ew[Ff]ile|[Rr]ead)?|[Ff]ile[Tt]ype)\b'
scope: support.variable.viml
variable:
- match: '([sSgGbBwWlLaAvV]:|@|$|&(?!&))\w*'
scope: variable.other.viml
+182
View File
@@ -0,0 +1,182 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: gnuplot
file_extensions:
- gp
- gpl
- gnuplot
- gnu
- plot
- plt
scope: source.gnuplot
contexts:
main:
- include: number
- include: string_single
- include: string_double
- match: '\b(for)\b\s*(\[)'
comment: |
gnuplot iteration statement.
There are two forms:
numeric [n = 1:2{:inc}]
string based [str in "x y z"]
but both can also iterate over lists etc, so this is kept loose.
captures:
1: keyword.other.iteration.gnuplot
2: punctuation.definition.range.begin.gnuplot
push:
- meta_scope: meta.structure.iteration.gnuplot
- match: '\]'
captures:
0: punctuation.definition.range.end.gnuplot
pop: true
- include: number
- include: operator
- include: string_double
- include: string_single
- match: ":"
scope: punctuation.separator.range.gnuplot
- match: '\b([a-zA-Z]\w*)\b\s*(=|in)'
scope: variable-assignment.range.gnuplot
- match: '(?i:[^\s(pi|e)\]])'
scope: invalid.illegal.expected-range-separator.gnuplot
- match: '\['
comment: "gnuplot range statement [a:b]. Lots of things are legal, still more make no sense!"
captures:
0: punctuation.definition.range.begin.gnuplot
push:
- meta_scope: meta.structure.range.gnuplot
- match: '\]'
captures:
0: punctuation.definition.range.end.gnuplot
pop: true
- include: number
- include: operator
- match: ":"
scope: punctuation.separator.range.gnuplot
- match: '(?i:[^\s(pi|e)\]])'
scope: invalid.illegal.expected-range-separator.gnuplot
- match: \\.
scope: constant.character.escape.gnuplot
- match: '(?<!\$)(#)(?!\{).*$\n?'
scope: comment.line.number-sign.gnuplot
captures:
1: punctuation.definition.comment.gnuplot
- match: for
comment: introduce in gnuplot 4.3.
scope: keyword.other.iteration.gnuplot
- match: \b(angles|arrow|autoscale|bars|border|boxwidth|clabel|clip|cntrparam|colorbox|contour|decimalsign|dgrid3d|dummy|encoding|fit|format|grid|hidden3d|historysize|isosamples|key|label|locale|logscale|macros|bmargin|lmargin|rmargin|tmargin|mapping|mouse|multiplot|offsets|origin|output|palette|parametric|pm3d|pointsize|polar|print|rrange|trange|urange|vrange|samples|size|style|surface|tics|ticscale|ticslevel|timestamp|timefmt|title|view|xyplane|x2data|xdata|y2data|ydata|z2data|zdata|x2label|xlabel|y2label|ylabel|z2label|zlabel|x2range|xrange|y2range|yrange|z2range|zrange|mx2tics|mxtics|my2tics|mytics|mz2tics|mztics|nomx2tics|nomxtics|nomy2tics|nomytics|nomz2tics|nomztics|nox2tics|noxtics|noy2tics|noytics|noz2tics|noztics|x2tics|xtics|y2tics|ytics|z2tics|ztics|x2dtics|x2mtics|xdtics|xmtics|y2dtics|y2mtics|ydtics|ymtics|z2dtics|z2mtics|zdtics|zmtics|x2zeroaxis|xzeroaxis|y2zeroaxis|yzeroaxis|z2zeroaxis|zeroaxis|zzeroaxis|zero|)\b
scope: keyword.other.setting.gnuplot
- match: \b(cd|call|clear|exit|plot|splot|help|load|pause|quit|fit|replot|if|FIT_LIMIT|FIT_MAXITER|FIT_START_LAMBDA|FIT_LAMBDA_FACTOR|FIT_LOG|FIT_SCRIPT|print|pwd|reread|reset|save|show|test|!|functions|var)\b
comment: missuse of scopes alert! Just for pretty colours
scope: keyword.other.command.gnuplot
- match: \b(abs|acos|acosh|arg|asin|asinh|atan|atan2|atanh|besj0|besj1|besy0|besy1|ceil|cos|cosh|erf|erfc|exp|floor|gamma|ibeta|igamma|imag|int|inverf|invnorm|lambertw|lgamma|log|log10|norm|rand|real|sgn|sin|sinh|sqrt|tan|tanh)\b
scope: support.function.gnuplot
- match: \b(gprintf|sprintf|strlen|strstrt|substr|system|word|words)\b
scope: support.function.string.gnuplot
- match: \b(on|off|default|inside|outside|lmargin|rmargin|tmargin|bmargin|at|left|right|center|top|bottom|center|vertical|horizontal|Left|Right|noreverse|noinvert|samplen|spacing|width|height|noautotitle|columnheader|title|noenhanced|nobox|linestyle|ls|linetype|lt|linewidth|lw)\b
scope: constant.other.type.gnuplot
- match: \b(aed512|aed767|aifm|aqua|bitgraph|cgm|corel|dumb|dxf|eepic|emf|emtex|epslatex|epson_180dpi|epson_60dpi|epson_lx800|fig|gif|gpic|hp2623A|hp2648|hp500c|hpdj|hpgl|hpljii|hppj|imagen|jpeg|kc_tek40xx|km_tek40xx|latex|mf|mif|mp|nec_cp6|okidata|pbm|pcl5|pdf|png|postscript|pslatex|pstex|pstricks|qms|regis|selanar|starc|svg|tandy_60dpi|tek40xx|tek410x|texdraw|tgif|tkcanvas|tpic|unknown|vttek)\b
scope: constant.other.terminal.gnuplot
- match: \b(u(sing)?|t(it(le)?)?|notit(le)?|w(i(th)?)?|steps|fs(teps)?|notitle|l(i(nes)?)?|linespoints|via)\b
scope: keyword.modifier.gnuplot
- match: |-
(?x:
\b # Start with a word boundary
(?=\b[\w$]*(\(|.*=)) # Look-ahead for a bracket or equals
(?![^(]*\)) # negative look ahead for a closing bracket without an opening one. This stops a from matching in f(a)
( # Group variable name
[A-Za-z] # A letter
[\w$]* # Any word chars or $
) # That is it for the name.
)
comment: user defined function / variable
scope: variable.other.gnuplot
- match: \b(if)\b
scope: keyword.control.gnuplot
- match: \b(show)\b
captures:
0: keyword.other.command.gnuplot
push:
- meta_scope: keyword.line.show.gnuplot
- meta_content_scope: keyword.line.show.gnuplot
- match: (?!\#)($\n?)
pop: true
- include: main
- match: \b(set)\b\s*\b(terminal|term)\b
captures:
1: keyword.other.command.gnuplot
2: keyword.other.setting.gnuplot
push:
- meta_scope: keyword.line.set.terminal.gnuplot
- match: (?!\#)($\n?)
pop: true
- include: main
- match: \b(set)\b\s*\b(key)\b
captures:
1: keyword.other.command.gnuplot
2: keyword.other.setting.gnuplot
push:
- meta_scope: keyword.line.set.key.gnuplot
- match: (?!\#)($\n?)
pop: true
- include: main
- match: \b(set|unset)\b\s*(?!\b(terminal|key|for)\b)
captures:
1: keyword.other.command.gnuplot
2: keyword.other.setting.gnuplot
push:
- meta_scope: keyword.line.set.gnuplot
- meta_content_scope: keyword.line.set.gnuplot
- match: (?!\#)($\n?)
pop: true
- include: main
number:
- match: |-
(?x: # turn on extended mode
-? # an optional minus
(?:
0 # a zero
| # ...or...
[1-9] # a 1-9 character
\d* # followed by zero or more digits
)
(?:
\. # a period
\d+ # followed by one or more digits
(?:
[eE] # an e character
[+-]? # followed by an option +/-
\d+ # followed by one or more digits
)? # make exponent optional
)? # make decimal portion optional
)
comment: borrowed from textmate book
scope: constant.numeric.gnuplot
operator:
- match: \s*(==|~=|>|>=|<|<=|&|&&|:|\||\|\||\+|-|\*|\.\*|/|\./|\\|\.\\|\^|\.\^)\s*
comment: Operator symbols
scope: keyword.operator.symbols.matlab
string_double:
- match: '"'
captures:
0: punctuation.definition.string.begin.gnuplot
push:
- meta_scope: string.quoted.double.gnuplot
- match: '"'
captures:
0: punctuation.definition.string.end.gnuplot
pop: true
- match: '\\[\$`"\\\n]'
scope: constant.character.escape.gnuplot
string_single:
- match: "'"
captures:
0: punctuation.definition.string.begin.gnuplot
push:
- meta_scope: string.quoted.single.gnuplot
- match: "'"
captures:
0: punctuation.definition.string.end.gnuplot
pop: true
+116
View File
@@ -0,0 +1,116 @@
%YAML 1.2
---
# See http://www.sublimetext.com/docs/3/syntax.html
file_extensions:
- log
scope: text.log
variables:
ipv4_part: (?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)
contexts:
main:
- match: (\w+)(=)
captures:
1: variable.parameter.log
2: keyword.operator.assignment.log
- match: (')([^']*)(')
scope: string.quoted.single.log
captures:
1: punctuation.definition.string.begin.log
3: punctuation.definition.string.end.log
- match: (")([^"]*)(")
scope: string.quoted.double.log
captures:
1: punctuation.definition.string.begin.log
3: punctuation.definition.string.end.log
- include: dates
- include: ip_addresses
- include: numbers
- match: \b(?i:fail(?:ure|ed)?|error|exception)\b
scope: markup.error.log
- match: \b(?i:warn(?:ing)?)\b
scope: markup.warning.log
#- include: scope:text.html.markdown#autolink-inet
- match: \b\w+:/{2,3}
scope: markup.underline.link.scheme.log
push: url-host
dates:
- match: \b\d{4}-\d{2}-\d{2}\b
scope: meta.date.log meta.number.integer.decimal.log constant.numeric.value.log
- match: \b\d{4}/\d{2}/\d{2}\b
scope: meta.date.log meta.number.integer.decimal.log constant.numeric.value.log
- match: \b(?:[01]\d|2[0-3]):(?:[0-5]\d):(?:[0-5]\d)(?:(\.)\d{3})?\b
scope: meta.time.log meta.number.integer.decimal.log constant.numeric.value.log
captures:
1: punctuation.separator.decimal.log
ip_addresses:
- match: \b(?=(?:{{ipv4_part}}\.){3}{{ipv4_part}}\b)
push:
- meta_scope: meta.ipaddress.v4.log meta.number.integer.decimal.log
- match: \d+
scope: constant.numeric.value.log
- match: \.
scope: punctuation.separator.sequence.log
- match: ''
pop: true
- match: (?=(?:\h{0,4}:){2,6}\h{1,4}\b)
push:
- meta_scope: meta.ipaddress.v6.log meta.number.integer.hexadecimal.log
- match: \h{1,4}
scope: constant.numeric.value.log
- match: ':'
scope: punctuation.separator.sequence.log
- match: ''
pop: true
numbers:
- match: \b(0x)(\h+)(?:(\.)(\h+))?\b
scope: meta.number.float.hexadecimal.log
captures:
1: constant.numeric.base.log
2: constant.numeric.value.log
3: constant.numeric.value.log punctuation.separator.decimal.log
4: constant.numeric.value.log
- match: \b\d+(\.)\d+\b
scope: meta.number.float.log constant.numeric.value.log
captures:
1: punctuation.separator.decimal.log
- match: \b\d+\b
scope: meta.number.integer.log constant.numeric.value.log
url-host:
- meta_content_scope: markup.underline.link.host.log
- match: \[
scope: punctuation.section.brackets.begin.log
push:
- match: \]
scope: punctuation.section.brackets.end.log
pop: true
- include: ip_addresses
- match: '[^:/\s]+'
- match: ''
set: url-after-host
url-after-host:
- match: (:)(\d+)
scope: markup.underline.link.port.log
captures:
1: punctuation.separator.mapping.port.log
2: constant.numeric.value.log
#- include: scope:text.html.markdown#url-escaped-chars
- match: (%)\h{2}
scope: markup.underline.link.path.log constant.character.escape.url.log
captures:
1: punctuation.definition.escape.log
# After a valid domain, zero or more non-space non-< characters may follow
- match: (?=[?!.,:*_~]*[\s<]) # Trailing punctuation (specifically, ?, !, ., ,, :, *, _, and ~) will not be considered part of the autolink, though they may be included in the interior of the link
pop: true
- match: \( # When an autolink ends in ), we scan the entire autolink for the total number of parentheses. If there is a greater number of closing parentheses than opening ones, we dont consider the last character part of the autolink, in order to facilitate including an autolink inside a parenthesis
push:
- meta_scope: markup.underline.link.path.log
- match: (?=[?!.,:*_~]*[\s<])
pop: true
- match: \)
pop: true
- match: (?=\)[?!.,:*_~]*[\s<])
pop: true
- match: '[^?!.,:*_~\s<&()%]+|\S'
scope: markup.underline.link.path.log
- match: ''
pop: true
+1 -1
View File
@@ -7,7 +7,7 @@ file_extensions:
scope: whitespace
contexts:
main:
- match: ""
- match: "·"
scope: support.function.show-nonprintable.space
- match: "├─*┤"
scope: constant.character.escape.show-nonprintable.tab
+60
View File
@@ -0,0 +1,60 @@
# SYNTAX TEST "CSV.sublime-syntax"
Forename,Surname,House No.,Street,City,Postcode
#^^^^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^^^^^^^^ meta.field-3
# ^ punctuation.separator.sequence
# ^^^^^^ meta.field-4
# ^ punctuation.separator.sequence
# ^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
John,Doe,87,Logon Road,Citiville,TU43 6GH
#^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^ meta.field-3
# ^ punctuation.separator.sequence
# ^^^^^^^^^^ meta.field-4
# ^ punctuation.separator.sequence
# ^^^^^^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
Jane,Doe,22,"""Fun"" Street","The City, County",FA90 1XA
#^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^ meta.field-3
# ^ punctuation.separator.sequence
# ^^^^^^^^^^^^^^^^ meta.field-4 string.quoted.double
# ^^ constant.character.escape
# ^^ constant.character.escape
# ^ punctuation.separator.sequence
# ^ meta.field-1 string.quoted.double punctuation.definition.string.begin
# ^^^^^^^^^^^^^^^^^ meta.field-1 string.quoted.double
# ^ meta.field-1 string.quoted.double punctuation.definition.string.end
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
Fred,Bloggs,"19","Street
#^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^^ meta.field-3 string.quoted.double
# ^ punctuation.separator.sequence
# ^ meta.field-4 punctuation.definition.string.begin
# ^^^^^^^^ meta.field-4 string.quoted.double
Spanning Multiple ""
#^^^^^^^^^^^^^^^^^^^^ meta.field-4 string.quoted.double
# ^^ constant.character.escape
Lines",Citee,P0stc0d3
#^^^^^ meta.field-4 string.quoted.double
# ^ meta.field-4 punctuation.definition.string.end
# ^ punctuation.separator.sequence
# ^^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
Can't render this file because it contains an unexpected character in line 1 and column 15.
+162
View File
@@ -0,0 +1,162 @@
# SYNTAX TEST "Manpage.sublime-syntax"
SOMETHING(8) System Manager's Manual SOMETHING(8)
# ^^^^^ meta.preprocessor
# ^^^^^^^^^^^^^^^^^^^^^^^ markup.heading.title
# ^^^^^^^ meta.preprocessor
NAME
#^^^ markup.heading.other
example - do something useful
SYNOPSIS
example [options] [--home DIR] [--shell SHELL] [--no-create-home]
# ^ punctuation.section.brackets.begin
# ^^^^^^ entity.name.command-line-option
# ^^^ variable.parameter
# ^ punctuation.section.brackets.end
# ^ punctuation.section.brackets.begin
# ^^^^^^^ entity.name.command-line-option
# ^^^^^ variable.parameter
# ^ punctuation.section.brackets.end
# ^ punctuation.section.brackets.begin
# ^^^^^^^^^^^^^^^^ entity.name.command-line-option
# ^ punctuation.section.brackets.end
[-u | --set-upstream] [-o <string> | --push-option=<string>]
# ^ punctuation.section.brackets.begin
# ^^ entity.name.command-line-option
# ^ keyword.operator.logical
# ^^^^^^^^^^^^^^ entity.name.command-line-option
# ^ punctuation.section.brackets.end
# ^^^^^^^^^^^^^ entity.name.command-line-option
[--force-with-lease[=<refname>[:<expect>]]]
# ^ punctuation.section.brackets.begin
# ^^^^^^^^^^^^^^^^^^ entity.name.command-line-option
# ^ punctuation.section.brackets.begin
# ^ keyword.operator
# ^^^^^^^ variable.parameter
# ^ punctuation.section.brackets.begin
# ^^^^^^ variable.parameter
# ^^^ punctuation.section.brackets.end
example --system [options]
# ^^^^^^^^ entity.name
COMMON OPTIONS
[--quiet] [--debug] [--help|-h] [--version] [--conf FILE]
/* According to POSIX.1-2001, POSIX.1-2008 */
# ^^ source.c comment.block punctuation.definition.comment
#include <sys/select.h>
# ^^^^^^^^ source.c meta.preprocessor.include keyword.control.import.include
struct timeval {
# ^^^^^^ source.c storage.type
time_t tv_sec; /* seconds */
suseconds_t tv_usec; /* microseconds */
};
DESCRIPTION
example does something useful in relation to the command line options
and configuration information in /etc/example.conf.
OPTIONS
--conf FILE
# ^^^^^^ entity.name.command-line-option
#^^^^^^ - variable - entity - markup
# ^^^^ variable.parameter
Use FILE instead of /etc/example.conf.
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - variable - entity
--disabled-login
Do not run passwd to set the password. The user won't be able
to use her account until the password is set.
--disabled-password
Like --disabled-login, but logins are still possible (for exam-
# ^^^^^^^^^^^^^^^^ entity.name
#^^^^^^^^^^^^^^^^^^ - entity - variable - markup
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - entity - variable - markup
ple using SSH RSA keys) but not using password authentication.
--help Display brief instructions.
# ^^^^^^ entity.name.command-line-option
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - variable.parameter
--home DIR
# ^^^^^^ entity.name.command-line-option
# ^^^ variable.parameter
# ^ - variable - entity - markup
Use DIR as the user's home directory, rather than the default
specified by the configuration file. If the directory does not
exist, it is created and skeleton files are copied.
--[no-]signed, --signed=(true|false|if-asked)
# ^^^^^^^^^^^^^ entity.name.command-line-option
# ^ punctuation.separator
# ^^^^^^^^ entity.name.command-line-option
# ^ keyword.operator
# ^ - variable
# ^^^^ variable.parameter
# ^ keyword.operator.logical
# ^^^^^ variable.parameter
# ^ keyword.operator.logical
# ^^^^^^^^ variable.parameter
# ^ - variable
--no-recurse-submodules, --recurse-submodules=check|on-demand|only|no
# ^^^^^^^^^^^^^^^^^^^^^^^ entity.name.command-line-option
# ^ punctuation.separator
# ^^^^^^^^^^^^^^^^^^^^ entity.name.command-line-option
# ^ keyword.operator
# ^^^^^ variable.parameter
# ^ keyword.operator.logical
# ^^^^^^^^^ variable.parameter
# ^ keyword.operator.logical
# ^^^^ variable.parameter
# ^ keyword.operator.logical
# ^^ variable.parameter
May be used to make sure all submodule commits used by the
-c, -C NUM, --context[=NUM]
# ^^ entity.name.command-line-option
# ^ punctuation.separator
# ^^ entity.name.command-line-option
# ^^^ variable.parameter
# ^ punctuation.separator
# ^^^^^^^^^ entity.name.command-line-option
# ^^^^^^^ - entity.name
# ^ keyword.operator
# ^^^ variable.parameter
# ^^ - variable
output NUM (default 3) lines of copied context
EXAMPLE
#include <stdio.h>
# ^^^^^^^^ source.c meta.preprocessor.include keyword.control.import.include
(This is not C code.)
# ^^^^^^^^^^^^^^^^^^^^^^ - source.c
struct timeval {
time_t tv_sec; /* seconds */
suseconds_t tv_usec; /* microseconds */
};
# ^ source.c punctuation.terminator
The corresponding argument for pselect() has the following type:
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - source.c
#define POLLIN_SET (EPOLLRDNORM | EPOLLRDBAND | EPOLLIN |
EPOLLHUP | EPOLLERR)
# ^ source.c meta.preprocessor.macro meta.group punctuation.section.group.end
ENVIRONMENT
$SYSTEMD_LOG_LEVEL
# ^ punctuation.definition.variable
# ^^^^^^^^^^^^^^^^^ constant.other
systemd reads the log level from this environment variable. This
can be overridden with --log-level=.
SEE ALSO
The systemd Homepage[11], systemd-system.conf(5), locale.conf(5)
# ^^^^^^^^^^^^^^^^^^^ entity.name.function
+60
View File
@@ -0,0 +1,60 @@
# SYNTAX TEST "CSV.sublime-syntax"
Forename Surname House No. Street City Postcode
#^^^^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^^^^^^^^ meta.field-3
# ^ punctuation.separator.sequence
# ^^^^^^ meta.field-4
# ^ punctuation.separator.sequence
# ^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
John Doe 87 Logon Road Citiville TU43 6GH
#^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^ meta.field-3
# ^ punctuation.separator.sequence
# ^^^^^^^^^^ meta.field-4
# ^ punctuation.separator.sequence
# ^^^^^^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
Jane Doe 22 """Fun"" Street" "The City County" FA90 1XA
#^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^ meta.field-3
# ^ punctuation.separator.sequence
# ^^^^^^^^^^^^^^^^ meta.field-4 string.quoted.double
# ^^ constant.character.escape
# ^^ constant.character.escape
# ^ punctuation.separator.sequence
# ^ meta.field-1 string.quoted.double punctuation.definition.string.begin
# ^^^^^^^^^^^^^^^^^ meta.field-1 string.quoted.double
# ^ meta.field-1 string.quoted.double punctuation.definition.string.end
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
Fred Bloggs "19" "Street
#^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^ meta.field-2
# ^ punctuation.separator.sequence
# ^^^ meta.field-3 string.quoted.double
# ^ punctuation.separator.sequence
# ^ meta.field-4 punctuation.definition.string.begin
# ^^^^^^^^ meta.field-4 string.quoted.double
Spanning Multiple ""
#^^^^^^^^^^^^^^^^^^^^ meta.field-4 string.quoted.double
# ^^ constant.character.escape
Lines" Citee P0stc0d3
#^^^^^ meta.field-4 string.quoted.double
# ^ meta.field-4 punctuation.definition.string.end
# ^ punctuation.separator.sequence
# ^^^^^ meta.field-1
# ^ punctuation.separator.sequence
# ^^^^^^^^ meta.field-2
Can't render this file because it contains an unexpected character in line 1 and column 15.
+63
View File
@@ -0,0 +1,63 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: syslog
file_extensions:
- syslog
scope: text.log.syslog
contexts:
main:
- match: ^(\w+\s+\d+)\s+(\d{2}:\d{2}:\d{2})
scope: meta.datetime.syslog constant.numeric.syslog
captures:
1: meta.date.syslog
2: meta.time.syslog
push: loghost
- match: ^
push: text
loghost:
- match: '[\w:.-]+'
scope: entity.other.attribute-name.loghost.syslog
set: process
process:
- match: ([\w.-]+)(?:(\[)(\d+)(\]))?([ :])
captures:
1: support.function.process.syslog
2: punctuation.separator.pid.begin.syslog
3: meta.pid.syslog meta.number.integer.syslog constant.numeric.value.syslog
4: punctuation.separator.pid.end.syslog
5: punctuation.separator.mapping.syslog
set: structured-data
structured-data:
- match: '\['
scope: punctuation.section.mapping.begin.syslog
push:
- match: \]
scope: punctuation.section.mapping.end.syslog
pop: true
- match: \w+
scope: variable.parameter.syslog
- match: =
scope: keyword.operator.assignment.syslog
push:
- match: '[^\s\]]+'
scope: constant.other.syslog
pop: true
- match: (?=\])
pop: true
- match: (?=\S)
set: text
text:
- match: $
pop: true
- match: '<\w+>'
scope: constant.language.syslog
- match: \b(CMD)\b\s+(\()
captures:
1: entity.name.label.syslog
2: punctuation.section.block.begin.syslog
embed: scope:source.shell.bash
escape: \)$
escape_captures:
0: punctuation.section.block.end.syslog
- include: scope:text.log
BIN
View File
Binary file not shown.
Vendored Submodule
+1
Submodule assets/themes/Coldark added at e44750b2a9
@@ -3,14 +3,14 @@
<plist version="1.0">
<dict>
<!--
The colors in this theme are encoded as #RRGGBBAA where RR is an ANSI
palette number from 00 to 0f, and AA is the special value 00 to indicate
that this encoding is being used.
The colors in this theme are encoded as #RRGGBBAA where:
* If AA is 00, then RR is an ANSI palette number from 00 to 07.
* If AA is 01, the terminal's default fg/bg color is used.
-->
<key>author</key>
<string>Template: Chris Kempson, Scheme: Mitchell Kember</string>
<key>name</key>
<string>ANSI Light</string>
<string>ANSI</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>settings</key>
@@ -19,32 +19,17 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#07000000</string>
<key>caret</key>
<string>#00000000</string>
<string>#00000001</string>
<key>foreground</key>
<string>#00000000</string>
<key>invisibles</key>
<string>#00000000</string>
<key>lineHighlight</key>
<string>#00000000</string>
<key>selection</key>
<string>#00000000</string>
<string>#00000001</string>
<!--
Explicitly set the gutter color since bat falls back to a
hardcoded DEFAULT_GUTTER_COLOR otherwise.
-->
<key>gutter</key>
<string>#07000000</string>
<string>#00000001</string>
<key>gutterForeground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Text</string>
<key>scope</key>
<string>variable.parameter.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00000000</string>
<string>#00000001</string>
</dict>
</dict>
<dict>
@@ -58,39 +43,6 @@
<string>#02000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation</string>
<key>scope</key>
<string>punctuation.definition.string, punctuation.definition.variable, punctuation.definition.string, punctuation.definition.parameters, punctuation.definition.string, punctuation.definition.array</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Delimiters</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operators</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keywords</string>
@@ -102,17 +54,6 @@
<string>#05000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variables</string>
<key>scope</key>
<string>variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Functions</string>
@@ -146,17 +87,6 @@
<string>#03000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Classes</string>
<key>scope</key>
<string>meta.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Methods</string>
@@ -480,8 +410,6 @@
<dict>
<key>background</key>
<string>#01000000</string>
<key>foreground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
@@ -493,8 +421,6 @@
<dict>
<key>background</key>
<string>#03000000</string>
<key>foreground</key>
<string>#07000000</string>
</dict>
</dict>
</array>
@@ -3,14 +3,22 @@
<plist version="1.0">
<dict>
<!--
Most base16 users should use the base16 theme. This theme, base16-256,
is for users who configure their terminal with a 256-color variant of a
base16 theme, and who use base16-shell. DO NOT use this theme simply
because your terminal supports 256 colors.
base16: https://github.com/chriskempson/base16
base16-shell: https://github.com/chriskempson/base16-shell
The colors in this theme are encoded as #RRGGBBAA where RR is an ANSI
palette number from 00 to 0f, and AA is the special value 00 to indicate
that this encoding is being used.
palette number from 00 to ff (the 256 terminal colors), and AA is the
special value 00 to indicate this encoding is being used.
-->
<key>author</key>
<string>Template: Chris Kempson, Scheme: Mitchell Kember</string>
<key>name</key>
<string>ANSI Dark</string>
<string>Base16 256</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>settings</key>
@@ -25,15 +33,15 @@
<key>foreground</key>
<string>#07000000</string>
<key>invisibles</key>
<string>#07000000</string>
<string>#08000000</string>
<key>lineHighlight</key>
<string>#07000000</string>
<string>#08000000</string>
<key>selection</key>
<string>#07000000</string>
<string>#13000000</string>
<key>gutter</key>
<string>#00000000</string>
<string>#12000000</string>
<key>gutterForeground</key>
<string>#07000000</string>
<string>#08000000</string>
</dict>
</dict>
<dict>
@@ -55,7 +63,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#02000000</string>
<string>#08000000</string>
</dict>
</dict>
<dict>
@@ -132,7 +140,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#06000000</string>
<string>#11000000</string>
</dict>
</dict>
<dict>
@@ -154,7 +162,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#07000000</string>
<string>#0f000000</string>
</dict>
</dict>
<dict>
@@ -209,7 +217,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -220,7 +228,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -231,7 +239,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -242,7 +250,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -264,7 +272,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -297,7 +305,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -321,7 +329,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -380,7 +388,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
@@ -391,7 +399,20 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#03000000</string>
<string>#10000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Separator</string>
<key>scope</key>
<string>meta.separator</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#13000000</string>
<key>foreground</key>
<string>#07000000</string>
</dict>
</dict>
<dict>
@@ -481,7 +502,7 @@
<key>background</key>
<string>#01000000</string>
<key>foreground</key>
<string>#07000000</string>
<string>#0f000000</string>
</dict>
</dict>
<dict>
@@ -492,11 +513,37 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#03000000</string>
<string>#10000000</string>
<key>foreground</key>
<string>#00000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Deprecated</string>
<key>scope</key>
<string>invalid.deprecated</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#11000000</string>
<key>foreground</key>
<string>#0f000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Unimplemented</string>
<key>scope</key>
<string>invalid.unimplemented</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#08000000</string>
<key>foreground</key>
<string>#0f000000</string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>uuid</string>
+67 -60
View File
@@ -3,9 +3,16 @@
<plist version="1.0">
<dict>
<!--
The colors in this theme are encoded as #RRGGBBAA where RR is an base16
color number from 00 to 0f, and AA is the special value 0f to indicate
that this encoding is being used.
This theme is meant for users who configure their terminal with a base16
color theme. If you use a 256-color variant along with base16-shell, use
the bat theme base16-256 instead.
base16: https://github.com/chriskempson/base16
base16-shell: https://github.com/chriskempson/base16-shell
The colors in this theme are encoded as #RRGGBBAA where RR is an ANSI
palette number from 00 to 0f (the 8 colors and their bright versions),
and AA is the special value 00 to indicate this encoding is being used.
-->
<key>author</key>
<string>Template: Chris Kempson, Scheme: Mitchell Kember</string>
@@ -19,21 +26,21 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#0000000f</string>
<string>#00000000</string>
<key>caret</key>
<string>#0700000f</string>
<string>#07000000</string>
<key>foreground</key>
<string>#0700000f</string>
<string>#07000000</string>
<key>invisibles</key>
<string>#0800000f</string>
<string>#08000000</string>
<key>lineHighlight</key>
<string>#0800000f</string>
<string>#08000000</string>
<key>selection</key>
<string>#0b00000f</string>
<string>#0b000000</string>
<key>gutter</key>
<string>#0a00000f</string>
<string>#0a000000</string>
<key>gutterForeground</key>
<string>#0800000f</string>
<string>#08000000</string>
</dict>
</dict>
<dict>
@@ -44,7 +51,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0700000f</string>
<string>#07000000</string>
</dict>
</dict>
<dict>
@@ -55,7 +62,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0800000f</string>
<string>#08000000</string>
</dict>
</dict>
<dict>
@@ -66,7 +73,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0700000f</string>
<string>#07000000</string>
</dict>
</dict>
<dict>
@@ -77,7 +84,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0700000f</string>
<string>#07000000</string>
</dict>
</dict>
<dict>
@@ -88,7 +95,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0700000f</string>
<string>#07000000</string>
</dict>
</dict>
<dict>
@@ -99,7 +106,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0500000f</string>
<string>#05000000</string>
</dict>
</dict>
<dict>
@@ -110,7 +117,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0700000f</string>
<string>#07000000</string>
</dict>
</dict>
<dict>
@@ -121,7 +128,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0400000f</string>
<string>#04000000</string>
</dict>
</dict>
<dict>
@@ -132,7 +139,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0e00000f</string>
<string>#0e000000</string>
</dict>
</dict>
<dict>
@@ -143,7 +150,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0300000f</string>
<string>#03000000</string>
</dict>
</dict>
<dict>
@@ -154,7 +161,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0f00000f</string>
<string>#0f000000</string>
</dict>
</dict>
<dict>
@@ -165,7 +172,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0400000f</string>
<string>#04000000</string>
</dict>
</dict>
<dict>
@@ -176,7 +183,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0500000f</string>
<string>#05000000</string>
</dict>
</dict>
<dict>
@@ -187,7 +194,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0600000f</string>
<string>#06000000</string>
</dict>
</dict>
<dict>
@@ -198,7 +205,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0200000f</string>
<string>#02000000</string>
</dict>
</dict>
<dict>
@@ -209,7 +216,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -220,7 +227,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -231,7 +238,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -242,7 +249,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -253,7 +260,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0100000f</string>
<string>#01000000</string>
</dict>
</dict>
<dict>
@@ -264,7 +271,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -275,7 +282,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0400000f</string>
<string>#04000000</string>
</dict>
</dict>
<dict>
@@ -286,7 +293,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0500000f</string>
<string>#05000000</string>
</dict>
</dict>
<dict>
@@ -297,7 +304,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -310,7 +317,7 @@
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#0400000f</string>
<string>#04000000</string>
</dict>
</dict>
<dict>
@@ -321,7 +328,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -334,7 +341,7 @@
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#0300000f</string>
<string>#03000000</string>
</dict>
</dict>
<dict>
@@ -347,7 +354,7 @@
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#0500000f</string>
<string>#05000000</string>
</dict>
</dict>
<dict>
@@ -358,7 +365,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0200000f</string>
<string>#02000000</string>
</dict>
</dict>
<dict>
@@ -369,7 +376,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0100000f</string>
<string>#01000000</string>
</dict>
</dict>
<dict>
@@ -380,7 +387,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -391,7 +398,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0900000f</string>
<string>#09000000</string>
</dict>
</dict>
<dict>
@@ -402,9 +409,9 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#0b00000f</string>
<string>#0b000000</string>
<key>foreground</key>
<string>#0700000f</string>
<string>#07000000</string>
</dict>
</dict>
<dict>
@@ -415,7 +422,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0200000f</string>
<string>#02000000</string>
</dict>
</dict>
<dict>
@@ -426,7 +433,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0100000f</string>
<string>#01000000</string>
</dict>
</dict>
<dict>
@@ -437,7 +444,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0500000f</string>
<string>#05000000</string>
</dict>
</dict>
<dict>
@@ -448,7 +455,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0600000f</string>
<string>#06000000</string>
</dict>
</dict>
<dict>
@@ -459,7 +466,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0600000f</string>
<string>#06000000</string>
</dict>
</dict>
<dict>
@@ -470,7 +477,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0600000f</string>
<string>#06000000</string>
</dict>
</dict>
<dict>
@@ -481,7 +488,7 @@
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0500000f</string>
<string>#05000000</string>
</dict>
</dict>
<dict>
@@ -492,9 +499,9 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#0100000f</string>
<string>#01000000</string>
<key>foreground</key>
<string>#0f00000f</string>
<string>#0f000000</string>
</dict>
</dict>
<dict>
@@ -505,9 +512,9 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#0900000f</string>
<string>#09000000</string>
<key>foreground</key>
<string>#0000000f</string>
<string>#00000000</string>
</dict>
</dict>
<dict>
@@ -518,9 +525,9 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#0e00000f</string>
<string>#0e000000</string>
<key>foreground</key>
<string>#0f00000f</string>
<string>#0f000000</string>
</dict>
</dict>
<dict>
@@ -531,9 +538,9 @@
<key>settings</key>
<dict>
<key>background</key>
<string>#0800000f</string>
<string>#08000000</string>
<key>foreground</key>
<string>#0f00000f</string>
<string>#0f000000</string>
</dict>
</dict>
</array>
Vendored Submodule
+1
Submodule assets/themes/gruvbox added at 64c47250e5

Some files were not shown because too many files have changed in this diff Show More