1
0
mirror of https://github.com/sharkdp/bat.git synced 2025-07-13 18:43:21 +01:00

Compare commits

..

312 Commits

Author SHA1 Message Date
5edd8260e8 Fix path to assets 2020-03-22 13:16:47 +01:00
02f2b55d5f Write completions and manfile to cargo outdir (cargo publish restriction) 2020-03-22 11:33:50 +01:00
6386a4b812 Update dependencies, see 2020-03-22 11:23:19 +01:00
c13935f3c0 Bump version to 0.13, see 2020-03-22 11:23:16 +01:00
eb2f3ddb7c Rename test methods 2020-03-22 11:02:51 +01:00
dfd3ef022e Add more default mappings, reverse traversal 2020-03-22 11:02:51 +01:00
978def2d40 Update documentation 2020-03-22 11:02:51 +01:00
57aed07814 Use absolute path for lookup in database 2020-03-22 11:02:51 +01:00
bd8a13dbc9 Initial implementation of glob-based syntax mapping 2020-03-22 11:02:51 +01:00
ba29e07636 Remove superfluous files 2020-03-22 00:04:33 +01:00
32346612b7 Move syntaxes, fixes 2020-03-21 23:53:53 +01:00
0550a286bd Cargo fmt 2020-03-21 23:53:53 +01:00
dfe5eb3e98 Add an even simple example 2020-03-21 22:21:23 +01:00
2c2861db6a Further simplify module structure 2020-03-21 22:21:23 +01:00
bb0a3d586e Simplify public API module structure 2020-03-21 22:21:23 +01:00
90397a8aac Hide SyntaxMapping::replace 2020-03-21 22:21:23 +01:00
84ba323b1c Rename output component to 'style compinent', move wrap to separate module 2020-03-21 22:21:23 +01:00
a8851e1307 Hide methods from line_range 2020-03-21 22:21:23 +01:00
d4a39f99d2 Hide API of InputFileReader 2020-03-21 22:21:23 +01:00
8c500a7e40 Hide get_syntax, move tests to module 2020-03-21 22:21:23 +01:00
acf51bd7b3 Rename methods and parameters 2020-03-21 22:21:23 +01:00
83dc13a86d Add fallback theme, remove BAT_THEME_DEFAULT 2020-03-21 22:21:23 +01:00
094c526a0e Hide some methods from HighlightingAssets 2020-03-21 22:21:23 +01:00
62f2d0c100 Do not export syntax_set and theme_set 2020-03-21 22:21:23 +01:00
fc1ca0875a Move error handling to a callback 2020-03-21 22:21:23 +01:00
a7338e2ea2 Run cargo fmt 2020-03-21 22:21:23 +01:00
9b8ddb24d1 move Config struct to separate file 2020-03-21 22:21:23 +01:00
7e0115641d Move error module to separate file 2020-03-21 22:21:23 +01:00
fedd32173e Restructure and fix bug in line range module 2020-03-21 19:19:15 +01:00
4855a47105 Rename enum field 2020-03-21 19:19:15 +01:00
06b7be7ee9 Major restructuring of theme/syntax handling 2020-03-21 19:19:15 +01:00
b1b8addf7e remove unnecessary Some() 2020-03-18 17:03:03 +01:00
4be5adc6f5 remove absolute path restraint from BAT_CACHE_PATH 2020-03-18 17:03:03 +01:00
a9a31dca7f Specify cache dir with BAT_CACHE_DIR
- if set, BAT_CACHE_DIR is used. otherwise use OS default.
2020-03-18 17:03:03 +01:00
9a9902bf9b Remove custom .github settings 2020-03-16 07:54:55 +01:00
4e40d4c720 Major update for the man page, closes 2020-03-15 23:15:30 +01:00
916c1e4359 Update assets 2020-03-15 22:33:26 +01:00
439be03634 Remove duplicate F# syntax 2020-03-15 22:33:26 +01:00
b611d2aef4 Add no-duplicate-extensions unit test 2020-03-15 22:33:26 +01:00
a2075b0f24 Update git dependency 2020-03-15 21:00:23 +01:00
3c1dd8558d Update links 2020-03-15 12:03:25 +01:00
17382d36b7 Update dependencies 2020-03-15 11:46:24 +01:00
2e07aabb74 fix links 2020-03-15 10:38:45 +01:00
f525fb974e fix typo and broken links 2020-03-15 10:38:45 +01:00
edf62953c4 add README-ko.md 2020-03-15 10:38:45 +01:00
260c5dcb75 fix: doc/README-ja.md
- Synchronized the contents of `README.md`.
- Fixed `README.md` to match the line number of text.
- Translated to Japanese.
- Fixed menu link anchor.
2020-03-11 22:36:09 +01:00
1bc62cd7b5 Add syntax detection unit tests 2020-03-11 10:08:11 +01:00
b1183f72a5 Update to new assert_cmd 2020-03-09 21:30:46 +01:00
a5e98146fb Bump assert_cmd from 0.11.1 to 0.12.0
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 0.11.1 to 0.12.0.
- [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/v0.11.1...v0.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-09 21:30:46 +01:00
6d32d3dbec Bump assert_cmd from 0.11.1 to 0.12.0
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 0.11.1 to 0.12.0.
- [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/v0.11.1...v0.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-09 21:30:46 +01:00
c6bbca62ef Bump console from 0.9.2 to 0.10.0
Bumps [console](https://github.com/mitsuhiko/console) from 0.9.2 to 0.10.0.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-09 06:35:56 +01:00
dd9755f223 Update dependencies 2020-03-06 23:54:58 +01:00
61e39158de Install fish completions into 'vendor_completions.d', fixes 2020-03-06 23:47:26 +01:00
65023a987e Bump assets/syntaxes/Packages from 71fd0ec to 759d6ee
Bumps [assets/syntaxes/Packages](https://github.com/sublimehq/Packages) from `71fd0ec` to `759d6ee`.
- [Release notes](https://github.com/sublimehq/Packages/releases)
- [Commits](71fd0ec9e4...759d6eed9b)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-06 23:43:34 +01:00
91843f6f65 Update 'JavaScript (Babel).sublime-syntax' 2020-03-06 23:43:16 +01:00
696547b646 Bump assets/syntaxes/JavaScript (Babel) from a9a908f to f4579f9
Bumps [assets/syntaxes/JavaScript (Babel)](https://github.com/babel/babel-sublime) from `a9a908f` to `f4579f9`.
- [Release notes](https://github.com/babel/babel-sublime/releases)
- [Commits](a9a908fe1d...f4579f9107)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-06 23:43:16 +01:00
4d2682325b Update TypeScript.sublime-syntax 2020-03-06 23:40:53 +01:00
65811d9034 Bump assets/syntaxes/TypeScript from ab51614 to 9cd994a
Bumps [assets/syntaxes/TypeScript](https://github.com/Microsoft/TypeScript-Sublime-Plugin) from `ab51614` to `9cd994a`.
- [Release notes](https://github.com/Microsoft/TypeScript-Sublime-Plugin/releases)
- [Commits](ab51614c07...9cd994af73)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-06 23:40:53 +01:00
f2b7c060a3 Add link to Choco package 2020-03-06 23:39:17 +01:00
08dd251b9c Update Windows install instructions 2020-03-06 23:38:07 +01:00
d081473261 Update README.md 2020-03-06 23:38:07 +01:00
3901480c59 Move VC++ to Windows section 2020-03-06 23:38:07 +01:00
1cad3f56ec Explain how to fix no output issue
I just ran into this so I figured it might be helpful for others.
2020-03-06 23:38:07 +01:00
147503bd56 Add CoffeeScript syntax, closes 2020-03-06 23:29:08 +01:00
d1b0e955ea Update dependencies 2020-03-06 23:29:08 +01:00
4021cf8128 Support combination of multiple styles at the same time
Old version of the code did not allowed for `bold italic` or `bold underline` styles
2020-03-04 23:28:53 +01:00
7155f76963 Merge pull request from eth-p/master
Fix broken link in issue template.
2020-03-03 13:41:18 -08:00
b63f31e15d Fix broken link in issue template. 2020-03-03 13:09:31 -08:00
9c3d8c4028 Bump assets/syntaxes/ssh-config from e84b78f to 16e19d5
Bumps [assets/syntaxes/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `e84b78f` to `16e19d5`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](e84b78f9f9...16e19d5da4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-01 11:00:18 +01:00
d33b7071e3 Bump assets/syntaxes/GraphQL from 66ce871 to c9d8458
Bumps [assets/syntaxes/GraphQL](https://github.com/dncrews/GraphQL-SublimeText3) from `66ce871` to `c9d8458`.
- [Release notes](https://github.com/dncrews/GraphQL-SublimeText3/releases)
- [Commits](66ce8713d8...c9d84587eb)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-01 10:59:58 +01:00
ca066bf7cd Run 'cargo fmt' 2020-02-28 10:27:06 +01:00
4ac3161c19 Rename label syntax-request 2020-02-28 09:47:27 +01:00
d479e07bcb Rename label 2020-02-28 09:46:33 +01:00
369ba7bb0a Remove title prefix (we already have labels for that) 2020-02-28 09:39:38 +01:00
9df85edc4c Add 'question' template 2020-02-28 09:36:46 +01:00
d007caf39c Add simple "Feature request" template 2020-02-28 09:32:47 +01:00
7d453dfdc5 Simplify issue templates 2020-02-28 09:30:28 +01:00
60f48a0c91 Update test data
Avoid using existing text
2020-02-28 09:06:51 +01:00
25640a8a81 Fix bug where max_width is not initialized after line break 2020-02-28 09:06:51 +01:00
944866affd Fix wrapping method to support unicode text
Related issues:
- 
- 
2020-02-28 09:06:51 +01:00
22ded00824 Add test for unicode wrapping 2020-02-28 09:06:51 +01:00
85e84ab3eb Add unicode-width dependency 2020-02-28 09:06:51 +01:00
993b76654d Change bug_report template to accomodate info.sh output 2020-02-28 08:03:13 +01:00
2b2743b120 Change output format of info.sh to markdown 2020-02-28 08:03:13 +01:00
f01263bcff Fix typo causing missing command warning in info.sh 2020-02-28 08:03:13 +01:00
8648b86a73 Add detection of a wrapper function to info.sh 2020-02-28 08:03:13 +01:00
39d9343a7d Change a word in bug_report.md 2020-02-28 08:03:13 +01:00
5faf7ca158 Change ISSUE_TEMPLATE files based on feedback in 2020-02-28 08:03:13 +01:00
ebe475247c Change consent banner (and fix tput) in info.sh 2020-02-28 08:03:13 +01:00
63f6343cf1 Add issue templates 2020-02-28 08:03:13 +01:00
ad42b275a9 Add script to use for diagnosing issues 2020-02-28 08:03:13 +01:00
2dac1c8785 Add @sharkdp's regression test for 2020-02-28 07:56:24 +01:00
1225e65299 Fix 2020-02-28 07:56:24 +01:00
d1bb47d741 Bump min. required Rust version to 1.36 2020-02-27 23:09:03 +01:00
f079c14068 Bump git2 from 0.11.0 to 0.12.0
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.11.0 to 0.12.0.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.11.0...git2-curl-0.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-27 23:09:03 +01:00
388f4c71fd Add ja-transration of Paging on Using bat on Windows 2020-02-27 21:51:50 +01:00
b675e1bb61 Add Vue syntax 2020-02-25 20:12:33 +01:00
f96220f33d Bump error-chain from 0.12.1 to 0.12.2
Bumps [error-chain](https://github.com/rust-lang-nursery/error-chain) from 0.12.1 to 0.12.2.
- [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)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-22 12:10:39 +01:00
6739230039 Bump assets/syntaxes/ssh-config from fcd4378 to e84b78f
Bumps [assets/syntaxes/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `fcd4378` to `e84b78f`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](fcd4378567...e84b78f9f9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-16 18:56:35 +01:00
710018b845 Bump assets/syntaxes/Fish from ad6a6ca to 2c254cc
Bumps [assets/syntaxes/Fish](https://github.com/Phidica/sublime-fish) from `ad6a6ca` to `2c254cc`.
- [Release notes](https://github.com/Phidica/sublime-fish/releases)
- [Commits](ad6a6ca83c...2c254cc851)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-16 18:44:27 +01:00
7779d9f622 Allow for non-unicode filenames, closes 2020-02-13 08:25:04 +01:00
e98f34b1e8 Bump assets/syntaxes/LESS from 8cd08e3 to 3020993
Bumps [assets/syntaxes/LESS](https://github.com/danro/LESS-sublime) from `8cd08e3` to `3020993`.
- [Release notes](https://github.com/danro/LESS-sublime/releases)
- [Commits](8cd08e30e6...3020993658)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-10 20:23:01 +01:00
9ace915d71 Bump assets/themes/dracula-sublime from c31934f to 811a634
Bumps [assets/themes/dracula-sublime](https://github.com/dracula/sublime) from `c31934f` to `811a634`.
- [Release notes](https://github.com/dracula/sublime/releases)
- [Commits](c31934f43f...811a634420)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-10 19:54:04 +01:00
e5c415555d Bump console from 0.9.1 to 0.9.2
Bumps [console](https://github.com/mitsuhiko/console) from 0.9.1 to 0.9.2.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/0.9.1...0.9.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-27 06:56:43 +01:00
5ef1c6cce2 Grammar touch-ups, more descriptive error message for invalid line
ranges
2020-01-27 06:54:00 +01:00
93881d9a64 Adds range syntax for line highlights 2020-01-27 06:54:00 +01:00
87776ae07e Bump assets/syntaxes/TypeScript from 1d5160e to ab51614
Bumps [assets/syntaxes/TypeScript](https://github.com/Microsoft/TypeScript-Sublime-Plugin) from `1d5160e` to `ab51614`.
- [Release notes](https://github.com/Microsoft/TypeScript-Sublime-Plugin/releases)
- [Commits](1d5160e8a1...ab51614c07)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-26 13:52:14 +01:00
6c71a4324b Bump assets/syntaxes/Terraform from c683495 to 64208ea
Bumps [assets/syntaxes/Terraform](https://github.com/alexlouden/Terraform.tmLanguage) from `c683495` to `64208ea`.
- [Release notes](https://github.com/alexlouden/Terraform.tmLanguage/releases)
- [Commits](c683495c64...64208ea816)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-26 13:51:59 +01:00
90ee939671 Add information about the license to README files 2020-01-18 20:45:56 +01:00
cae06bf649 Fix invalid link 2020-01-18 20:45:56 +01:00
89220da47b Update copyright year of the MIT License file 2020-01-18 20:45:56 +01:00
903af3ee09 Show master state 2020-01-12 10:59:24 +01:00
0418e6294b Bump atty from 0.2.13 to 0.2.14
Bumps [atty](https://github.com/softprops/atty) from 0.2.13 to 0.2.14.
- [Release notes](https://github.com/softprops/atty/releases)
- [Changelog](https://github.com/softprops/atty/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/atty/compare/0.2.13...0.2.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-06 08:14:51 +01:00
eabd100dad Simplify Travis caching 2020-01-04 16:02:57 +01:00
f66a5bfa42 Bump assets/themes/dracula-sublime from 1d068cb to c31934f
Bumps [assets/themes/dracula-sublime](https://github.com/dracula/sublime) from `1d068cb` to `c31934f`.
- [Release notes](https://github.com/dracula/sublime/releases)
- [Commits](1d068cb1ba...c31934f43f)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-27 18:34:13 +01:00
8d0b8a227b Add test for less 529 2019-12-23 13:01:14 +01:00
e400ebd1bd Also pass '--no-init' if version could not be retrieved 2019-12-23 12:45:23 +01:00
6684c0b07a Remove example line from config file 2019-12-23 12:45:23 +01:00
6568d03924 Update README 2019-12-23 12:45:23 +01:00
67fe804256 Do not pass '--no-init' on newer less versions
With this change, we do not pass the `--no-init` option in newer
versions of less (530 or higher).

This fixes 
2019-12-23 12:45:23 +01:00
126729f87a Enable LTO
closes 
2019-12-22 16:46:55 +01:00
0aca27511a Add simple /proc/meminfo syntax, see 2019-12-22 16:25:39 +01:00
77ff853739 Add simple /proc/cpuinfo syntax, see 2019-12-22 16:22:32 +01:00
20ba984c6d Update help text, closes 2019-12-22 16:05:00 +01:00
6311ca22f9 Add check for terminal-width in output_wrap config value in not interactive case
Co-authored-by: allevo <tomallevi@gmail.com>
Co-authored-by: gildo <gildo.fiorito@gmail.com>
2019-12-22 15:20:34 +01:00
41d547532f Fix '日本文' to '日本語' 2019-12-21 10:03:53 +01:00
e9156f8090 Bump assets/syntaxes/SCSS_Sass from 0e8e0f9 to b98a3f3
Bumps [assets/syntaxes/SCSS_Sass](https://github.com/braver/SublimeSass) from `0e8e0f9` to `b98a3f3`.
- [Release notes](https://github.com/braver/SublimeSass/releases)
- [Commits](0e8e0f9d2f...b98a3f3ccf)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-20 17:57:16 +01:00
1eaa681c7e Bump assets/themes/dracula-sublime from b7e8961 to 1d068cb
Bumps [assets/themes/dracula-sublime](https://github.com/dracula/sublime) from `b7e8961` to `1d068cb`.
- [Release notes](https://github.com/dracula/sublime/releases)
- [Commits](b7e8961afa...1d068cb1ba)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-20 17:57:02 +01:00
d96ae099ef Bump assets/syntaxes/Elixir from 044d9af to 89b3bad
Bumps [assets/syntaxes/Elixir](https://github.com/princemaple/elixir-sublime-syntax) from `044d9af` to `89b3bad`.
- [Release notes](https://github.com/princemaple/elixir-sublime-syntax/releases)
- [Commits](044d9af8a1...89b3bada32)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-20 17:56:33 +01:00
40e5befdc7 Minor change 2019-12-15 20:55:48 +01:00
f94ff93953 Accept "default" as a theme 2019-12-15 20:55:48 +01:00
3523f60299 Leave blank lines blank terminal output.
Would add some ANSI colour codes previously.
2019-12-15 20:32:02 +01:00
83dc8468b0 feat(theme): Solarized light and dark themes 2019-12-15 20:10:32 +01:00
826624c9fa Bump git2 from 0.10.2 to 0.11.0
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.10.2 to 0.11.0.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.10.2...git2-curl-0.11.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-15 19:30:34 +01:00
0fed098c53 Bump assets/syntaxes/LESS from 4eada94 to 8cd08e3
Bumps [assets/syntaxes/LESS](https://github.com/danro/LESS-sublime) from `4eada94` to `8cd08e3`.
- [Release notes](https://github.com/danro/LESS-sublime/releases)
- [Commits](4eada94009...8cd08e30e6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-15 19:05:10 +01:00
cc7eafb7fb Bump assets/syntaxes/TypeScript from 8bfce29 to 1d5160e
Bumps [assets/syntaxes/TypeScript](https://github.com/Microsoft/TypeScript-Sublime-Plugin) from `8bfce29` to `1d5160e`.
- [Release notes](https://github.com/Microsoft/TypeScript-Sublime-Plugin/releases)
- [Commits](8bfce299be...1d5160e8a1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-15 19:04:46 +01:00
f35c41ba13 Bump assets/syntaxes/Fish from 0f7d31b to ad6a6ca
Bumps [assets/syntaxes/Fish](https://github.com/Phidica/sublime-fish) from `0f7d31b` to `ad6a6ca`.
- [Release notes](https://github.com/Phidica/sublime-fish/releases)
- [Commits](0f7d31b43e...ad6a6ca83c)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-15 19:03:49 +01:00
1f4246eb3c Bump assets/syntaxes/ssh-config from 17e23d7 to fcd4378
Bumps [assets/syntaxes/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `17e23d7` to `fcd4378`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](17e23d7d38...fcd4378567)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-15 19:03:34 +01:00
9300392c43 Bump assets/themes/zenburn from b7f27e2 to cb746f6
Bumps [assets/themes/zenburn](https://github.com/colinta/zenburn) from `b7f27e2` to `cb746f6`.
- [Release notes](https://github.com/colinta/zenburn/releases)
- [Commits](b7f27e2f65...cb746f6962)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-15 19:03:06 +01:00
8d3ce5f88a Manually convert PowerShell.sublime-syntax 2019-12-09 23:40:31 +01:00
a1d18d8c8c Bump assets/syntaxes/PowerShell from 12b7d72 to 4a0a076
Bumps [assets/syntaxes/PowerShell](https://github.com/PowerShell/EditorSyntax) from `12b7d72` to `4a0a076`.
- [Release notes](https://github.com/PowerShell/EditorSyntax/releases)
- [Commits](12b7d7257e...4a0a076661)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-09 23:40:31 +01:00
d43431d8f1 Manually convert Crystal.sublime-syntax 2019-12-09 23:39:07 +01:00
8baa76aa8f Bump assets/syntaxes/Crystal from 2f96cec to 2ee9d66
Bumps [assets/syntaxes/Crystal](https://github.com/crystal-lang-tools/sublime-crystal) from `2f96cec` to `2ee9d66`.
- [Release notes](https://github.com/crystal-lang-tools/sublime-crystal/releases)
- [Commits](2f96cec2ca...2ee9d667ae)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-09 23:39:07 +01:00
01846fad30 Manually convert Nix.sublime-syntax 2019-12-09 23:37:41 +01:00
18255f9835 Bump assets/syntaxes/Nix from ebf0657 to 9032bd6
Bumps [assets/syntaxes/Nix](https://github.com/wmertens/sublime-nix) from `ebf0657` to `9032bd6`.
- [Release notes](https://github.com/wmertens/sublime-nix/releases)
- [Commits](ebf06571f3...9032bd6137)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-09 23:37:41 +01:00
7b94f2c1d7 Manually convert Cabal.sublime-syntax 2019-12-09 23:36:28 +01:00
7ca73c2e79 Bump assets/syntaxes/Cabal from 1c054d9 to 2d98cb7
Bumps [assets/syntaxes/Cabal](https://github.com/SublimeHaskell/SublimeHaskell) from `1c054d9` to `2d98cb7`.
- [Release notes](https://github.com/SublimeHaskell/SublimeHaskell/releases)
- [Commits](1c054d9b36...2d98cb79eb)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-09 23:36:28 +01:00
75cb1ce196 Manually convert Robot.sublime-syntax 2019-12-09 23:34:50 +01:00
35026a033a Bump assets/syntaxes/Robot from 8e5a349 to fcd3323
Bumps [assets/syntaxes/Robot](https://github.com/andriyko/sublime-robot-framework-assistant) from `8e5a349` to `fcd3323`.
- [Release notes](https://github.com/andriyko/sublime-robot-framework-assistant/releases)
- [Commits](8e5a349a3e...fcd3323b56)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-09 23:34:50 +01:00
48031f282c Update Japanese README file
The beginning part of untranslated was translated into Japanese text.
2019-12-06 20:09:34 +01:00
7b2e98d5b7 added Nord color theme 2019-12-04 22:05:26 +01:00
fb71b67a8d Remove the already translated line
This line was already translated at 159f234.
2019-11-24 23:27:33 +01:00
d48f51e39d Bump git2 from 0.10.1 to 0.10.2
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.10.1...0.10.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-24 23:09:35 +01:00
9b1930b2b3 Bump assets/syntaxes/Packages from d1494f4 to 71fd0ec
Bumps [assets/syntaxes/Packages](https://github.com/sublimehq/Packages) from `d1494f4` to `71fd0ec`.
- [Release notes](https://github.com/sublimehq/Packages/releases)
- [Commits](d1494f4a5a...71fd0ec9e4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-08 10:44:29 +01:00
96d8013581 Bump assets/syntaxes/Docker from 6e521ea to 9e9a518
Bumps [assets/syntaxes/Docker](https://github.com/asbjornenge/Docker.tmbundle) from `6e521ea` to `9e9a518`.
- [Release notes](https://github.com/asbjornenge/Docker.tmbundle/releases)
- [Commits](6e521ead6c...9e9a518aed)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-08 10:38:32 +01:00
46b345f2c2 Bump assets/syntaxes/Jsonnet from 80775c6 to e2c917e
Bumps [assets/syntaxes/Jsonnet](https://github.com/gburiola/sublime-jsonnet-syntax) from `80775c6` to `e2c917e`.
- [Release notes](https://github.com/gburiola/sublime-jsonnet-syntax/releases)
- [Commits](80775c616e...e2c917ed7d)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-08 10:37:48 +01:00
4e5b40e274 Bump assets/syntaxes/SCSS_Sass from 1195db9 to 0e8e0f9
Bumps [assets/syntaxes/SCSS_Sass](https://github.com/braver/SublimeSass) from `1195db9` to `0e8e0f9`.
- [Release notes](https://github.com/braver/SublimeSass/releases)
- [Commits](1195db9f16...0e8e0f9d2f)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-08 10:36:43 +01:00
d0e7ca159a Bump assets/syntaxes/Julia from 581805e to 0ca4cc2
Bumps [assets/syntaxes/Julia](https://github.com/JuliaEditorSupport/Julia-sublime) from `581805e` to `0ca4cc2`.
- [Release notes](https://github.com/JuliaEditorSupport/Julia-sublime/releases)
- [Commits](581805e47c...0ca4cc2990)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-08 10:35:57 +01:00
e981e97407 Manually convert DotENV.sublime-syntax 2019-11-06 20:23:07 +01:00
a8ec3b826c Bump assets/syntaxes/DotENV from f6cad11 to a1c9176
Bumps [assets/syntaxes/DotENV](https://github.com/zaynali53/DotENV) from `f6cad11` to `a1c9176`.
- [Release notes](https://github.com/zaynali53/DotENV/releases)
- [Commits](f6cad1140c...a1c917633d)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 20:23:07 +01:00
f4a59d74f1 Manually convert TypeScript.sublime-syntax 2019-11-06 20:21:53 +01:00
b9b6d9e31e Bump assets/syntaxes/TypeScript from 19a599a to 8bfce29
Bumps [assets/syntaxes/TypeScript](https://github.com/Microsoft/TypeScript-Sublime-Plugin) from `19a599a` to `8bfce29`.
- [Release notes](https://github.com/Microsoft/TypeScript-Sublime-Plugin/releases)
- [Commits](19a599ad0e...8bfce299be)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 20:21:53 +01:00
d65ae517dd Rename Fish syntax folder 2019-11-06 20:19:01 +01:00
bb675e57c7 Remove manually converted fish syntax 2019-11-06 20:16:25 +01:00
9fe38e200e Bump assets/syntaxes/sublime-fish from 0795764 to 0f7d31b
Bumps [assets/syntaxes/sublime-fish](https://github.com/Phidica/sublime-fish) from `0795764` to `0f7d31b`.
- [Release notes](https://github.com/Phidica/sublime-fish/releases)
- [Commits](079576415a...0f7d31b43e)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 20:16:25 +01:00
a2fcb09d7a Bump assets/syntaxes/Protobuf from 5115c1c to 726e21d
Bumps [assets/syntaxes/Protobuf](https://github.com/VcamX/protobuf-syntax-highlighting) from `5115c1c` to `726e21d`.
- [Release notes](https://github.com/VcamX/protobuf-syntax-highlighting/releases)
- [Commits](5115c1c59a...726e21d74d)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 20:03:57 +01:00
8c7916e128 Bump assets/themes/sublime-monokai-extended from 1658f51 to 0ca4e75
Bumps [assets/themes/sublime-monokai-extended](https://github.com/jonschlinkert/sublime-monokai-extended) from `1658f51` to `0ca4e75`.
- [Release notes](https://github.com/jonschlinkert/sublime-monokai-extended/releases)
- [Commits](1658f51c15...0ca4e75291)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-06 20:03:21 +01:00
3d23daa7b4 Bump assets/syntaxes/LESS from d3ddfe7 to 4eada94
Bumps [assets/syntaxes/LESS](https://github.com/danro/LESS-sublime) from `d3ddfe7` to `4eada94`.
- [Release notes](https://github.com/danro/LESS-sublime/releases)
- [Commits](d3ddfe7b51...4eada94009)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-05 20:42:09 +01:00
572cbb00e2 Bump assets/syntaxes/PureScript from 42a61e3 to 5acebc1
Bumps [assets/syntaxes/PureScript](https://github.com/tellnobody1/sublime-purescript-syntax) from `42a61e3` to `5acebc1`.
- [Release notes](https://github.com/tellnobody1/sublime-purescript-syntax/releases)
- [Commits](42a61e39ad...5acebc1850)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-05 20:41:54 +01:00
dedaebdf15 Bump assets/syntaxes/Terraform from 3227a2d to c683495
Bumps [assets/syntaxes/Terraform](https://github.com/alexlouden/Terraform.tmLanguage) from `3227a2d` to `c683495`.
- [Release notes](https://github.com/alexlouden/Terraform.tmLanguage/releases)
- [Commits](3227a2d2a2...c683495c64)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-05 20:41:47 +01:00
3d90c6adee Bump assets/syntaxes/ssh-config from 86bfd1b to 17e23d7
Bumps [assets/syntaxes/ssh-config](https://github.com/robballou/sublimetext-sshconfig) from `86bfd1b` to `17e23d7`.
- [Release notes](https://github.com/robballou/sublimetext-sshconfig/releases)
- [Commits](86bfd1b090...17e23d7d38)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-05 20:41:37 +01:00
06a521ec34 Bump assets/themes/onehalf from 2516b37 to fdcbffe
Bumps [assets/themes/onehalf](https://github.com/sonph/onehalf) from `2516b37` to `fdcbffe`.
- [Release notes](https://github.com/sonph/onehalf/releases)
- [Commits](2516b37c3f...fdcbffe317)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-05 20:41:26 +01:00
37f7c94ba4 Properly add Twig submodule, closes 2019-11-05 20:33:16 +01:00
396e1ac6b6 Add simple pattern for command-line options 2019-11-05 07:13:33 +01:00
49e2073910 Highlight capitalized function calls / man page references 2019-11-05 07:13:33 +01:00
7d18649284 Bump console from 0.9.0 to 0.9.1
Bumps [console](https://github.com/mitsuhiko/console) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/0.9.0...0.9.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-04 20:38:01 +01:00
850677f121 Remove 'advanced' example 2019-10-30 19:47:51 +01:00
c132e19e74 Make a few modules private 2019-10-30 19:47:51 +01:00
3334f74b72 Remove custom 'transpose' function 2019-10-30 19:47:51 +01:00
b9ce3c248c Simplify 'using_controller' example 2019-10-30 19:47:51 +01:00
310654d49f Format "delta" like the other programs. 2019-10-30 19:47:37 +01:00
3f37d292ec Point to delta in usage-with-git section of README 2019-10-30 19:47:37 +01:00
0a42d2b897 Add Nim syntax, closes 2019-10-30 19:47:24 +01:00
3b5fcf4619 Update options sort order in --help and manpage file
This commit updates the sort order of --help options in order to improve
usability/importance putting most useful/used commands on top. In
addition to that, similar options were grouped together.
2019-10-29 19:54:25 +01:00
ab2a6ad1d5 Add more colors to fstab syntax 2019-10-29 09:20:14 +01:00
7db30f9123 Merge pull request from MarcoFalke/patch-1
doc: Add Ubuntu/Debian bat package to Readme
2019-10-28 15:44:06 -07:00
59f2b30768 Merge pull request from flopp/fstab-syntax
Add fstab syntax definitions
2019-10-28 15:41:56 -07:00
9fb14d78e1 Add syntax highlighting for /etc/resolv.conf 2019-10-28 21:29:29 +01:00
921a65f0a1 Update README.md 2019-10-28 16:26:28 -04:00
b9c07e52e8 doc: Add Ubuntu/Debian bat package to Readme
Documentation update to fix 
2019-10-26 10:33:17 -04:00
edbb4b2fc9 Add syntax highlighting for /etc/passwd file 2019-10-24 08:20:46 +02:00
15b1676b72 Add syntax highlighting for /etc/group file 2019-10-24 08:20:46 +02:00
753a124ef2 Add some comments 2019-10-21 22:00:39 +02:00
58a4d009fa Add fstab file syntax 2019-10-21 21:56:24 +02:00
4664fb6f91 Remove comment in both examples
```diff
-// add_file()
```
2019-10-20 21:43:51 +02:00
e287594654 Fix compile-error on Rust v1.35.0 2019-10-20 21:43:51 +02:00
1e19404736 Add 2 examples 2019-10-20 21:43:51 +02:00
2253d07341 Derive fmt::Debug whenever possible 2019-10-20 21:43:51 +02:00
7208a63a49 Implement trait Default for struct Config 2019-10-20 21:43:51 +02:00
0273848f54 Run cargo fmt 2019-10-20 21:43:51 +02:00
e542621125 Move back printer.rs and others into lib
others:
bin/bat/{controller,decorations,output,printer}.rs
2019-10-20 21:43:51 +02:00
26439b41d2 Move Config,PagingMode from app.rs into lib.rs 2019-10-20 21:43:51 +02:00
a2ee753b25 Move config.rs into src/bin/bat/ 2019-10-20 21:43:51 +02:00
d3243903c0 Add --bins flag in CI before_deploy 2019-10-20 21:43:51 +02:00
cf68b13322 Fix CI 'src/main.rs': No such file or directory 2019-10-20 21:43:51 +02:00
837d0998da Remove unused macros in bin/bat 2019-10-20 21:43:51 +02:00
23d80f9e84 Fix all compile errors in bin/bat
* Change `mod errors` in lib.rs to public

* Add `fn handle_error` in lib.rs errors module
2019-10-20 21:43:51 +02:00
e981bd88c1 Move src/bin/* into src/bin/bat/
This will limit [[bin]] to *bat* only which will make:
- `cargo run` works without specifying --bin
- prevent `cargo build --bins` to produce multiple binaries (app,clap_app,...)
2019-10-20 21:43:51 +02:00
710a1df4ff Fix all compile warnings in lib.rs 2019-10-20 21:43:51 +02:00
cfd33168af Fix all compile errors in lib.rs 🚚
* Move {controller,output,printer,decorations}.rs into src/bin/

* Add `mod errors` from main.rs
2019-10-20 21:43:51 +02:00
eefdb186b8 Add lib.rs 2019-10-20 21:43:51 +02:00
fc0ad4db2e Move {main,app,clap_app}.rs into src/bin/ 2019-10-20 21:43:51 +02:00
f03b45f3e5 Update TOML syntax 2019-10-20 20:48:14 +02:00
9a74bf1a88 Disable nightly build 2019-10-19 18:20:15 +02:00
ff0b331dd6 Add llvm/libclang install instructions. 2019-10-15 21:40:38 +02:00
00bfbbf884 Add section concerning file encodings, see 2019-10-11 21:47:40 +02:00
e44045a71a Add Dracula theme 2019-10-11 20:18:22 +02:00
962abcef80 Update create.sh to quickly check for and update missing submodules 2019-10-10 23:49:39 +02:00
95f2e5bbb7 Ensure submodules are updated before creating asset cache 2019-10-10 23:49:39 +02:00
f46123e149 Add sponsor links as an experiment :-) 2019-10-07 19:43:36 +02:00
f0f77b1673 Add SaltStack SLS syntax 2019-10-06 21:26:46 +02:00
39112e80c3 cmake and libz are not needed to install bat
Closes sharkdp#649
2019-10-06 20:34:14 +02:00
a84c598e2c cmake and libz are not needed to install bat
Closes 
2019-10-06 20:34:14 +02:00
6b2f78ec51 Add MacPorts instructions 2019-09-30 21:21:43 +02:00
938005864f Merge pull request from sharkdp/dependabot/cargo/liquid-0.19.0
Bump liquid from 0.18.2 to 0.19.0
2019-09-30 10:37:13 -07:00
3a5f8ece49 Bump liquid from 0.18.2 to 0.19.0
Bumps [liquid](https://github.com/cobalt-org/liquid-rust) from 0.18.2 to 0.19.0.
- [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/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-30 02:17:48 +00:00
047a6f3b85 Merge pull request from eth-p/fix-659
Parameterized documentation.
2019-09-28 18:58:35 -07:00
f09b75dafa Revert changing generated file names based on parameters
It should be handled by a packaging script, not a build script.
2019-09-27 12:34:08 -07:00
54ec2e7bd0 Fix CI before_deploy to use parameterized names 2019-09-27 12:29:22 -07:00
e57b2e9528 Add generated files to gitignore 2019-09-27 12:14:43 -07:00
ea2179b352 Update fish completions to use parameterized names 2019-09-27 12:13:55 -07:00
c8478cedc5 Update manual page to use parameterized names 2019-09-27 12:06:54 -07:00
1692e5fef7 Merge pull request from sharkdp/fix-666
Fix 'bat cache other-arg'
2019-09-27 10:57:01 -07:00
7ba5bc78b7 Update sublimehq/Packages to master 2019-09-23 08:58:56 +02:00
25c2e1725e Bump syntect from 3.2.1 to 3.3.0
Bumps [syntect](https://github.com/trishume/syntect) from 3.2.1 to 3.3.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/v3.2.1...v3.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-23 08:14:41 +02:00
853e48e3f3 Allow underscores and dashes in page names to fix highlighting issues with pages such as signal-safety or posix_openpt. 2019-09-22 22:26:58 +02:00
f5d359927a Fix 'bat cache other-arg', closes 2019-09-21 09:10:12 +02:00
4df5973fde Replace 'Printer' by 'needle' 2019-09-21 09:01:54 +02:00
45f3c73331 Extend 'man' integration section 2019-09-21 08:51:26 +02:00
4102175d98 Add '-x' flag for 'col', see , see 2019-09-21 08:44:26 +02:00
30ee2a464f Add eth-p/bat-extras integrations to README 2019-09-21 08:42:56 +02:00
7a5d1f27e7 Fix missing and inconsistent code fences in REAMDE 2019-09-21 08:42:56 +02:00
ac5ff9d454 Bump console from 0.8.0 to 0.9.0
Bumps [console](https://github.com/mitsuhiko/console) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/0.8.0...0.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-15 22:10:29 +02:00
c9c3341a38 Use bash syntax highlighting 2019-09-15 15:54:44 +02:00
a736889ef1 add dark mode script 2019-09-15 15:54:44 +02:00
ea5e096705 Bump git2 from 0.10.0 to 0.10.1
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.10.0...git2-curl-0.10.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-14 09:31:34 +02:00
12330fd154 Add Jinja2 syntax 2019-09-09 20:13:21 +02:00
337ee568b1 Add list of maintainers to README 2019-09-07 08:57:07 +02:00
608cefb05c Bump version 2019-09-03 08:07:42 +02:00
8d0aa39181 Bump ansi_term from 0.12.0 to 0.12.1
Bumps [ansi_term](https://github.com/ogham/rust-ansi-term) from 0.12.0 to 0.12.1.
- [Release notes](https://github.com/ogham/rust-ansi-term/releases)
- [Commits](https://github.com/ogham/rust-ansi-term/compare/v0.12.0...v0.12.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-03 07:21:05 +02:00
5815364206 Add packaging status from repology.org 2019-09-01 11:03:35 +02:00
79f016e15c Update syntaxes 2019-08-31 20:58:16 +02:00
26f9125ebb Re-formulate help text 2019-08-31 20:56:53 +02:00
9814eab13f Suppress warning in -A mode 2019-08-31 20:56:53 +02:00
82ca8804a2 Handle non-unicode characters in the preprocessor 2019-08-31 20:56:53 +02:00
b48b9fcf3b Display binary file content for bat -A 2019-08-31 20:56:53 +02:00
c64ab29739 Update min. required rust version 2019-08-31 14:48:42 +02:00
83dd3fb551 Update man page 2019-08-31 14:47:04 +02:00
ed345f2889 Fix headline 2019-08-31 14:44:11 +02:00
d2492980c0 Update syntaxes and themes 2019-08-31 14:43:20 +02:00
47d5130764 Bump version 2019-08-31 14:43:04 +02:00
4ba45e2ba2 Add first version of 'man page' syntax, closes 2019-08-31 14:32:37 +02:00
7076ae5cd9 Update dependencies 2019-08-31 14:14:08 +02:00
2e71146801 Fix another instance of the 'bat cache' bug, closes 2019-08-31 14:13:36 +02:00
f3824bad17 Add explicit terminal width for test 2019-08-31 13:46:48 +02:00
ec908d5937 Run 'cargo fmt' 2019-08-31 13:46:48 +02:00
3a75d85b80 Add test for 'snip' feature 2019-08-31 13:46:48 +02:00
63d652dab5 Add 'dyn' keyword for trait references 2019-08-31 13:46:48 +02:00
7f2e61d579 Add new style component to separate multiple '--line-range's 2019-08-31 13:46:48 +02:00
e289a2c698 Add short '-L' option as an alias for --list-languages 2019-08-31 13:22:16 +02:00
83a213bae7 Add 'strace' syntax, closes 2019-08-31 13:13:42 +02:00
3967e28ded Add SCSS and Sass syntax, closes 2019-08-31 13:09:38 +02:00
2dc2a3712a Add Verilog syntax, closes 2019-08-31 12:59:02 +02:00
10e0f9efb0 Install fish completions in DEB package, closes 2019-08-28 21:06:52 +02:00
f8ea075e78 Bump console from 0.7.7 to 0.8.0
Bumps [console](https://github.com/mitsuhiko/console) from 0.7.7 to 0.8.0.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/0.7.7...0.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-26 21:44:57 +02:00
c187dce2c2 Bump lazy_static from 1.3.0 to 1.4.0
Bumps [lazy_static](https://github.com/rust-lang-nursery/lazy-static.rs) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/rust-lang-nursery/lazy-static.rs/releases)
- [Commits](https://github.com/rust-lang-nursery/lazy-static.rs/compare/1.3.0...1.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-26 07:13:01 +02:00
108c907d69 Bump git2 from 0.9.2 to 0.10.0
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.9.2 to 0.10.0.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.9.2...git2-curl-0.10.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-24 08:47:50 +02:00
187a3b9341 Use consistent syntax for command-line options
closes 
2019-08-15 21:57:32 +02:00
9c2d4f6a51 Add libc6-dev dependency for aarch64 2019-08-10 15:58:13 +02:00
c1126157d4 Re-enable aarch64 builds 2019-08-10 15:58:13 +02:00
dcfa810112 Bump syntect from 3.2.0 to 3.2.1
Bumps [syntect](https://github.com/trishume/syntect) from 3.2.0 to 3.2.1.
- [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/v3.2.0...v3.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-10 14:06:13 +02:00
f963104006 Add GraphQL sublime syntax submodule 2019-08-10 13:17:02 +02:00
45e1c0ea6f Temporarily disable aarch64 2019-08-02 21:14:44 +02:00
590a1e9a4b Bump minimum supported version to 1.33 2019-08-02 21:00:33 +02:00
8e2c6abb13 Update dependencies 2019-08-02 20:57:16 +02:00
28266ee441 use explicit dyn with Write to appease compiler 2019-08-02 18:50:55 +02:00
21821f1d4c Updated snapshot tests 2019-07-26 06:51:33 +02:00
772ce2e4fe Print a horizontal header line when 'grid' style without 'header' style 2019-07-26 06:51:33 +02:00
35ca1c5191 Bump atty from 0.2.12 to 0.2.13
Bumps [atty](https://github.com/softprops/atty) from 0.2.12 to 0.2.13.
- [Release notes](https://github.com/softprops/atty/releases)
- [Changelog](https://github.com/softprops/atty/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/atty/compare/0.2.12...0.2.13)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-25 21:34:19 +02:00
0cc60a1519 Bump wild from 2.0.1 to 2.0.2
Bumps [wild](https://gitlab.com/kornelski/wild) from 2.0.1 to 2.0.2.
- [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>
2019-07-24 21:50:05 +02:00
ee6659dacf Bump ansi_term from 0.11.0 to 0.12.0
Bumps [ansi_term](https://github.com/ogham/rust-ansi-term) from 0.11.0 to 0.12.0.
- [Release notes](https://github.com/ogham/rust-ansi-term/releases)
- [Commits](https://github.com/ogham/rust-ansi-term/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-24 21:45:44 +02:00
76c615a304 Allow leading minus in '--terminal-width <value>'
closes 
2019-07-24 21:44:25 +02:00
e8c04672f0 Small improvements for Fedora instructions
Anything older than F29 is EOL now, so no need to mention it. Also in F29+ you can use standard `dnf install`.
2019-07-24 21:38:11 +02:00
7f5a5612e4 Bump atty from 0.2.11 to 0.2.12
Bumps [atty](https://github.com/softprops/atty) from 0.2.11 to 0.2.12.
- [Release notes](https://github.com/softprops/atty/releases)
- [Changelog](https://github.com/softprops/atty/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/atty/compare/0.2.11...0.2.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-12 07:15:42 +02:00
eee5d424bb [Security] Bump smallvec from 0.6.9 to 0.6.10
Bumps [smallvec](https://github.com/servo/rust-smallvec) from 0.6.9 to 0.6.10. **This update includes security fixes.**
- [Release notes](https://github.com/servo/rust-smallvec/releases)
- [Commits](https://github.com/servo/rust-smallvec/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-07 15:34:01 +02:00
e5311e4b30 Bump console from 0.7.6 to 0.7.7
Bumps [console](https://github.com/mitsuhiko/console) from 0.7.6 to 0.7.7.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/0.7.6...0.7.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-05 14:34:15 +02:00
a1b9334a44 Bump console from 0.7.5 to 0.7.6
Bumps [console](https://github.com/mitsuhiko/console) from 0.7.5 to 0.7.6.
- [Release notes](https://github.com/mitsuhiko/console/releases)
- [Commits](https://github.com/mitsuhiko/console/compare/0.7.5...0.7.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-20 10:04:08 +02:00
d86b7cf7e0 Add Alpine Linux installation instructions
Resolves 
2019-06-11 07:40:23 +02:00
67834da681 Bump git2 from 0.9.0 to 0.9.1
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.9.0...0.9.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-10 11:15:51 +02:00
dcdf8dfaa7 Add install instructions(ja) for Gentoo Users. 2019-06-09 17:50:18 +02:00
9a44fa11c0 Add install instructions for Gentoo Users. 2019-06-09 17:50:18 +02:00
4ee0b2e16d Merge branch 'issmirnov-ssh-config' 2019-06-07 08:17:17 +02:00
518997135e Merge branch 'ssh-config' of https://github.com/issmirnov/bat into issmirnov-ssh-config 2019-06-07 08:17:04 +02:00
69fc1caead Add support for "etc/hosts" files.
- Syntax author: https://github.com/brandonwamboldt/sublime-hosts

Since the upstream version only has a tmLanguage, added a sublime-syntax
file manually.
2019-06-07 08:02:38 +02:00
175dd4c290 Add SSH config syntax
Tested:
```
bash assets/create.sh
cargo build
target/debug/bat --language ssh_config ~/.ssh/config
```
2019-06-06 20:01:23 -07:00
e9210c0f6c Bump git2 from 0.8.0 to 0.9.0
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/git2-curl-0.8.0...0.9.0)
2019-06-05 07:17:09 +02:00
3795acbd17 Add '.env' (DotENV) syntax 2019-05-31 21:05:34 +02:00
c7d08cfcfd Add 'requirements.txt' syntax 2019-05-31 20:58:08 +02:00
8ec96da9f0 Bump dirs from 2.0.0 to 2.0.1
Bumps [dirs](https://github.com/soc/dirs-rs) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/soc/dirs-rs/releases)
- [Commits](https://github.com/soc/dirs-rs/commits)
2019-05-31 08:57:04 +02:00
c9d7e3652b Enforce the creation of the full cache dir path
Fixes 
2019-05-30 22:28:52 +02:00
dfa024f9e6 Add Org mode syntax, closes sharkdp#36 2019-05-29 19:52:06 +02:00
b2757cb461 Bump dirs from 1.0.5 to 2.0.0
Bumps [dirs](https://github.com/soc/dirs-rs) from 1.0.5 to 2.0.0.
- [Release notes](https://github.com/soc/dirs-rs/releases)
- [Commits](https://github.com/soc/dirs-rs/commits)
2019-05-28 21:32:57 +02:00
168 changed files with 6391 additions and 3951 deletions
.github/ISSUE_TEMPLATE
.gitignore.gitmodules.travis.ymlCargo.lockCargo.tomlLICENSE-MITREADME.mdappveyor.yml
assets
build.rs
ci
diagnostics
doc
examples
src
tests

39
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file

@ -0,0 +1,39 @@
---
name: Bug Report
about: Report a bug.
title: ""
labels: bug
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]
**Describe the bug you encountered:**
...
**Describe what you expected to happen?**
...
**How did you install `bat`?**
apt-get, homebrew, GitHub release, etc.
---
[paste the output of `info.sh` here]

2
.github/ISSUE_TEMPLATE/config.yml vendored Normal file

@ -0,0 +1,2 @@
blank_issues_enabled: true

@ -0,0 +1,10 @@
---
name: Feature Request
about: Suggest an idea for this project.
title: ''
labels: feature-request
assignees: ''
---

10
.github/ISSUE_TEMPLATE/question.md vendored Normal file

@ -0,0 +1,10 @@
---
name: Question
about: Ask a question about 'bat'.
title: ''
labels: question
assignees: ''
---

@ -0,0 +1,29 @@
---
name: Syntax Request
about: Request adding a new syntax to bat.
title: ""
labels: syntax-request
assignees: ''
---
<!--
BEFORE YOU MAKE A REQUEST:
Are you looking to add a new syntax to use on one of your devices?
Bat supports locally-installed language definitions. See the link below:
https://github.com/sharkdp/bat#adding-new-syntaxes--language-definitions
If you think adding this syntax would help others as well, please make sure that it meets our
guidelines for adding new syntaxes:
- 10,000 downloads on packagecontrol.io
-->
**Syntax:**
[Name or description of the syntax/language here]
**Guideline Criteria:**
[packagecontro.io link here]

5
.gitignore vendored

@ -1,3 +1,6 @@
/target/
**/*.rs.bk
# Generated files
/assets/completions/bat.fish
/assets/manual/bat.1

122
.gitmodules vendored

@ -1,32 +1,32 @@
[submodule "assets/syntaxes/Elixir"]
path = assets/syntaxes/Elixir
path = assets/syntaxes/02_Extra/Elixir
url = https://github.com/princemaple/elixir-sublime-syntax/
[submodule "assets/syntaxes/Packages"]
path = assets/syntaxes/Packages
path = assets/syntaxes/01_Packages
url = https://github.com/sublimehq/Packages/
[submodule "assets/syntaxes/TOML"]
path = assets/syntaxes/TOML
path = assets/syntaxes/02_Extra/TOML
url = https://github.com/jasonwilliams/sublime_toml_highlighting
[submodule "assets/syntaxes/Julia"]
path = assets/syntaxes/Julia
path = assets/syntaxes/02_Extra/Julia
url = https://github.com/JuliaEditorSupport/Julia-sublime
[submodule "assets/themes/sublime-monokai-extended"]
path = assets/themes/sublime-monokai-extended
url = https://github.com/jonschlinkert/sublime-monokai-extended
[submodule "assets/syntaxes/Docker"]
path = assets/syntaxes/Docker
path = assets/syntaxes/02_Extra/Docker
url = https://github.com/asbjornenge/Docker.tmbundle
[submodule "assets/syntaxes/VimL"]
path = assets/syntaxes/VimL
path = assets/syntaxes/02_Extra/VimL
url = https://github.com/SalGnt/Sublime-VimL
[submodule "assets/syntaxes/INI"]
path = assets/syntaxes/INI
path = assets/syntaxes/02_Extra/INI
url = https://github.com/clintberry/sublime-text-2-ini
[submodule "assets/syntaxes/CMake"]
path = assets/syntaxes/CMake
path = assets/syntaxes/02_Extra/CMake
url = https://github.com/zyxar/Sublime-CMakeLists
[submodule "assets/syntaxes/LESS"]
path = assets/syntaxes/LESS
path = assets/syntaxes/02_Extra/LESS
url = https://github.com/danro/LESS-sublime
[submodule "assets/themes/DarkNeon"]
path = assets/themes/DarkNeon
@ -41,88 +41,138 @@
path = assets/themes/TwoDark
url = https://github.com/erremauro/TwoDark
[submodule "assets/syntaxes/AWK"]
path = assets/syntaxes/AWK
path = assets/syntaxes/02_Extra/AWK
url = https://github.com/JohnNilsson/awk-sublime
[submodule "assets/syntaxes/Nix"]
path = assets/syntaxes/Nix
path = assets/syntaxes/02_Extra/Nix
url = https://github.com/wmertens/sublime-nix
[submodule "assets/themes/zenburn"]
path = assets/themes/zenburn
url = https://github.com/colinta/zenburn.git
[submodule "assets/syntaxes/Kotlin"]
path = assets/syntaxes/Kotlin
path = assets/syntaxes/02_Extra/Kotlin
url = https://github.com/vkostyukov/kotlin-sublime-package
[submodule "assets/syntaxes/Elm"]
path = assets/syntaxes/Elm
path = assets/syntaxes/02_Extra/Elm
url = https://github.com/elm-community/SublimeElmLanguageSupport
[submodule "assets/syntaxes/TypeScript"]
path = assets/syntaxes/TypeScript
path = assets/syntaxes/02_Extra/TypeScript
url = https://github.com/Microsoft/TypeScript-Sublime-Plugin
[submodule "assets/syntaxes/Puppet"]
path = assets/syntaxes/Puppet
path = assets/syntaxes/02_Extra/Puppet
url = https://github.com/russCloak/SublimePuppet
[submodule "assets/syntaxes/CSV"]
path = 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/JavaScript (Babel)
path = assets/syntaxes/02_Extra/JavaScript (Babel)
url = https://github.com/babel/babel-sublime
[submodule "assets/syntaxes/Cabal"]
path = assets/syntaxes/Cabal
path = assets/syntaxes/02_Extra/Cabal
url = https://github.com/SublimeHaskell/SublimeHaskell
[submodule "assets/syntaxes/Dart"]
path = assets/syntaxes/Dart
path = assets/syntaxes/02_Extra/Dart
url = https://github.com/guillermooo/dart-sublime-bundle
[submodule "assets/syntaxes/FSharp"]
path = assets/syntaxes/FSharp
path = assets/syntaxes/02_Extra/FSharp
url = https://github.com/hoest/sublimetext-fsharp
[submodule "assets/syntaxes/PureScript"]
path = assets/syntaxes/PureScript
path = assets/syntaxes/02_Extra/PureScript
url = https://github.com/tellnobody1/sublime-purescript-syntax
[submodule "assets/syntaxes/Swift"]
path = assets/syntaxes/Swift
path = assets/syntaxes/02_Extra/Swift
url = https://github.com/quiqueg/Swift-Sublime-Package
[submodule "assets/syntaxes/Crystal"]
path = assets/syntaxes/Crystal
path = assets/syntaxes/02_Extra/Crystal
url = https://github.com/crystal-lang-tools/sublime-crystal.git
[submodule "assets/syntaxes/PowerShell"]
path = assets/syntaxes/PowerShell
path = assets/syntaxes/02_Extra/PowerShell
url = https://github.com/PowerShell/EditorSyntax
[submodule "assets/syntaxes/Robot"]
path = assets/syntaxes/Robot
path = assets/syntaxes/02_Extra/Robot
url = https://github.com/andriyko/sublime-robot-framework-assistant.git
[submodule "assets/themes/sublime-snazzy"]
path = assets/themes/sublime-snazzy
url = https://github.com/greggb/sublime-snazzy
[submodule "assets/syntaxes/HTML (Twig)"]
path = assets/syntaxes/HTML (Twig)
url = https://github.com/Anomareh/PHP-Twig.tmbundle.git
[submodule "assets/syntaxes/AsciiDoc"]
path = assets/syntaxes/AsciiDoc
path = assets/syntaxes/02_Extra/AsciiDoc
url = https://github.com/SublimeText/AsciiDoc.git
[submodule "assets/syntaxes/Assembly (ARM)"]
path = 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/Syslog
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/Protobuf
path = assets/syntaxes/02_Extra/Protobuf
url = https://github.com/VcamX/protobuf-syntax-highlighting.git
branch = master
[submodule "assets/syntaxes/Terraform"]
path = assets/syntaxes/Terraform
path = assets/syntaxes/02_Extra/Terraform
url = https://github.com/alexlouden/Terraform.tmLanguage.git
[submodule "assets/syntaxes/Jsonnet"]
path = assets/syntaxes/Jsonnet
path = assets/syntaxes/02_Extra/Jsonnet
url = https://github.com/gburiola/sublime-jsonnet-syntax.git
[submodule "assets/syntaxes/varlink"]
path = assets/syntaxes/varlink
path = assets/syntaxes/02_Extra/varlink
url = https://github.com/varlink/syntax-highlight-varlink.git
[submodule "assets/syntaxes/sublime-fish"]
path = assets/syntaxes/sublime-fish
path = assets/syntaxes/02_Extra/Fish
url = https://github.com/Phidica/sublime-fish.git
[submodule "assets/syntaxes/Org mode"]
path = assets/syntaxes/02_Extra/Org mode
url = https://github.com/jezcope/Org.tmbundle.git
[submodule "assets/syntaxes/requirementstxt"]
path = assets/syntaxes/02_Extra/requirementstxt
url = https://github.com/wuub/requirementstxt
[submodule "assets/syntaxes/DotENV"]
path = assets/syntaxes/02_Extra/DotENV
url = https://github.com/zaynali53/DotENV
[submodule "assets/syntaxes/hosts"]
path = assets/syntaxes/02_Extra/hosts
url = https://github.com/brandonwamboldt/sublime-hosts
[submodule "assets/syntaxes/ssh-config"]
path = assets/syntaxes/02_Extra/ssh-config
url = https://github.com/robballou/sublimetext-sshconfig.git
[submodule "assets/syntaxes/GraphQL"]
path = assets/syntaxes/02_Extra/GraphQL
url = https://github.com/dncrews/GraphQL-SublimeText3.git
[submodule "assets/syntaxes/Verilog"]
path = assets/syntaxes/02_Extra/Verilog
url = https://github.com/pro711/sublime-verilog
[submodule "assets/syntaxes/SCSS_Sass"]
path = assets/syntaxes/02_Extra/SCSS_Sass
url = https://github.com/braver/SublimeSass
[submodule "assets/syntaxes/Strace"]
path = assets/syntaxes/02_Extra/Strace
url = https://github.com/djuretic/SublimeStrace
[submodule "assets/syntaxes/Jinja2"]
path = assets/syntaxes/02_Extra/Jinja2
url = https://github.com/Martin819/sublime-jinja2
[submodule "assets/syntaxes/SLS"]
path = assets/syntaxes/02_Extra/SLS
url = https://github.com/saltstack/sublime-text
branch = master
[submodule "assets/themes/dracula-sublime"]
path = assets/themes/dracula-sublime
url = https://github.com/dracula/sublime.git
[submodule "assets/syntaxes/HTML (Twig)"]
path = assets/syntaxes/02_Extra/HTML (Twig)
url = https://github.com/Anomareh/PHP-Twig.tmbundle.git
[submodule "assets/themes/Nord-sublime"]
path = assets/themes/Nord-sublime
url = https://github.com/crabique/Nord-plist.git
[submodule "assets/themes/solarized-sublime"]
path = assets/themes/solarized-sublime
url = https://github.com/paulcpederson/solarized-sublime.git
[submodule "assets/syntaxes/Vue"]
path = assets/syntaxes/02_Extra/Vue
url = https://github.com/vuejs/vue-syntax-highlight.git
branch = new
[submodule "assets/syntaxes/CoffeeScript"]
path = assets/syntaxes/02_Extra/CoffeeScript
url = https://github.com/sustained/CoffeeScript-Sublime-Plugin

@ -1,4 +1,5 @@
language: rust
cache: cargo
matrix:
include:
@ -32,24 +33,25 @@ matrix:
# Minimum Rust supported channel.
- os: linux
rust: 1.31.0
rust: 1.36.0
env: TARGET=x86_64-unknown-linux-gnu
- os: linux
rust: 1.31.0
rust: 1.36.0
env:
- TARGET=x86_64-unknown-linux-musl
- CC_x86_64_unknown_linux_musl=/usr/bin/musl-gcc
- os: osx
rust: 1.31.0
rust: 1.36.0
env: TARGET=x86_64-apple-darwin
# Code formatting check
- os: linux
rust: nightly
# skip the global install step
install:
- cargo install --debug --force rustfmt-nightly
script: cargo fmt -- --check
# 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
@ -103,10 +105,3 @@ deploy:
notifications:
email:
on_success: never
# Caching
cache:
directories:
- /home/travis/.cargo
before_cache:
- rm -rf /home/travis/.cargo/registry

1346
Cargo.lock generated

File diff suppressed because it is too large Load Diff

@ -7,7 +7,7 @@ license = "MIT/Apache-2.0"
name = "bat"
readme = "README.md"
repository = "https://github.com/sharkdp/bat"
version = "0.11.0"
version = "0.13.0"
exclude = [
"assets/syntaxes/*",
"assets/themes/*",
@ -16,24 +16,26 @@ build = "build.rs"
edition = '2018'
[dependencies]
atty = "0.2.2"
ansi_term = "0.11"
atty = "0.2.14"
ansi_term = "^0.12.1"
ansi_colours = "^1.0"
console = "0.7"
dirs = "1.0"
lazy_static = "1.3"
console = "0.10"
dirs = "2.0"
lazy_static = "1.4"
wild = "2.0"
content_inspector = "0.2.4"
encoding = "0.2"
shell-words = "0.1.0"
unicode-width = "0.1.7"
globset = "0.4"
[dependencies.git2]
version = "0.8"
version = "0.13"
default-features = false
features = []
[dependencies.syntect]
version = "3.2.0"
version = "3.3.0"
default-features = false
features = ["parsing", "yaml-load", "dump-load", "dump-create"]
@ -49,8 +51,12 @@ features = []
[dev-dependencies]
tempdir = "0.3"
assert_cmd = "0.11.1"
escargot = "0.5.0"
assert_cmd = "0.12.0"
[build-dependencies]
clap = "2.33"
liquid = "0.19"
lazy_static = "1.4"
[profile.release]
lto = true

@ -1,4 +1,4 @@
Copyright (c) 2018 bat-developers (https://github.com/sharkdp/bat).
Copyright (c) 2018-2020 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

182
README.md

@ -1,7 +1,7 @@
<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?svg=true"></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>
<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.
@ -13,7 +13,7 @@
<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>]
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>]
</p>
### Syntax highlighting
@ -105,6 +105,14 @@ If you happen to use [`fd`](https://github.com/sharkdp/fd), you can use the `-X`
fd … -X bat
```
#### `ripgrep`
With [`batgrep`](https://github.com/eth-p/bat-extras/blob/master/doc/batgrep.md), `bat` can be used as the printer for [`ripgrep`](https://github.com/BurntSushi/ripgrep) search results.
```bash
batgrep needle src/
```
#### `tail -f`
`bat` can be combined with `tail -f` to continuously monitor a given file with syntax highlighting.
@ -114,7 +122,7 @@ tail -f /var/log/pacman.log | bat --paging=never -l log
Note that we have to switch off paging in order for this to work. We have also specified the syntax
explicitly (`-l log`), as it can not be auto-detected in this case.
### `git show`
#### `git`
You can combine `bat` with `git show` to view an older version of a given file with proper syntax
highlighting:
@ -122,6 +130,8 @@ 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).
#### `xclip`
The line numbers and Git modification markers in the output of `bat` can make it hard to copy
@ -132,15 +142,54 @@ bat main.cpp | xclip
```
`bat` will detect that the output is being redirected and print the plain file contents.
#### `man`
`bat` can be used as a colorizing pager for `man`, by setting the
`MANPAGER` environment variable:
```bash
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
man 2 select
```
It might also be necessary to set `MANROFFOPT="-c"` if you experience
formatting problems.
If you prefer to have this bundled in a new command, you can also use [`batman`](https://github.com/eth-p/bat-extras/blob/master/doc/batman.md).
Note that the [Manpage syntax](assets/syntaxes/Manpage.sublime-syntax) is developed in this repository and still needs some work.
#### `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`.
## Installation
[![Packaging status](https://repology.org/badge/vertical-allrepos/bat.svg)](https://repology.org/project/bat/versions)
### On Ubuntu
*... and other Debian-based Linux distributions.*
Download the latest `.deb` package from the [release page](https://github.com/sharkdp/bat/releases)
You can install [the Ubuntu `bat` package](https://packages.ubuntu.com/eoan/bat) or [the Debian `bat` package](https://packages.debian.org/sid/bat) since Ubuntu Eoan 19.10 or Debian unstable sid.
```bash
apt install bat
```
If you want to run the latest release of bat or if you are on older versions of Ubuntu/Debian, 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.11.0_amd64.deb # adapt version number and architecture
```bash
sudo dpkg -i bat_0.13.0_amd64.deb # adapt version number and architecture
```
### On Alpine Linux
You can install [the `bat` package](https://pkgs.alpinelinux.org/packages?name=bat)
from the official sources, provided you have the appropriate repository enabled:
```bash
apk add bat
```
### On Arch Linux
@ -154,16 +203,25 @@ pacman -S bat
### On Fedora
You can install `bat` from the [Fedora Modular](https://docs.fedoraproject.org/en-US/modularity/using-modules/) repository. On Fedora 29 and higher, it is enabled by default. Otherwise, run `dnf install fedora-repos-modular` to set up, and make sure that the `fedora-modular` and `fedora-updates-modular` repos are enabled in `/etc/yum.repos.d`.
You can install [the `bat` package](https://koji.fedoraproject.org/koji/packageinfo?packageID=27506) from the official [Fedora Modular](https://docs.fedoraproject.org/en-US/modularity/using-modules/) repository.
```bash
dnf module install bat
dnf install bat
```
### On Gentoo Linux
You can install [the `bat` package](https://packages.gentoo.org/packages/sys-apps/bat)
from the official sources:
```bash
emerge sys-apps/bat
```
### On Void Linux
You can install `bat` via xbps-install:
```
```bash
xbps-install -S bat
```
@ -194,7 +252,7 @@ nix-env -i bat
You can install `bat` with zypper:
```
```bash
zypper install bat
```
@ -206,20 +264,38 @@ You can install `bat` with [Homebrew](http://braumeister.org/formula/bat):
brew install bat
```
### On Windows
You can download prebuilt binaries from the [Release page](https://github.com/sharkdp/bat/releases),
or install it with [scoop](https://scoop.sh/) or [Chocolatey](https://chocolatey.org):
Or install `bat` with [MacPorts](https://ports.macports.org/port/bat/summary):
```bash
scoop install bat
port install bat
```
### On Windows
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.
#### With Chocolatey
You can install `bat` via [Chocolatey](https://chocolatey.org/packages/Bat):
```bash
choco install bat
```
[See below](#using-bat-on-windows) for notes.
#### With Scoop
You can install `bat` via [scoop](https://scoop.sh/):
```bash
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
@ -265,15 +341,14 @@ 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.31 or
If you want to build `bat` from source, you need Rust 1.36 or
higher. You can then use `cargo` to build everything:
```bash
cargo install bat
```
You may have to install `cmake` and the `libz` development package
(`libz-dev` or `libz-devel`) in order for the build to succeed.
On some platforms, you might need to install `llvm` and/or `libclang-dev`.
## Customization
@ -288,7 +363,7 @@ make the change permanent. Alternatively, use `bat`s
If you want to preview the different themes on a custom file, you can use
the following command (you need [`fzf`](https://github.com/junegunn/fzf) for this):
``` bash
```bash
bat --list-themes | fzf --preview="bat --theme={} --color=always /path/to/file"
```
@ -372,18 +447,29 @@ export BAT_PAGER="less -RF"
Instead of using environment variables, you can also use `bat`s [configuration file](https://github.com/sharkdp/bat#configuration-file) to configure the pager (`--pager` option).
**Note**: By default, if the pager is set to `less` (and no command-line options are specified),
`bat` will pass the following command line
options to the pager: `-R`/`--RAW-CONTROL-CHARS`, `-F`/`--quit-if-one-screen` and `-X`/`--no-init`.
The first (`-R`) is needed to interpret ANSI colors correctly. The second option (`-F`) instructs
`bat` will pass the following command line options to the pager: `-R`/`--RAW-CONTROL-CHARS`,
`-F`/`--quit-if-one-screen` and `-X`/`--no-init`. The last option (`-X`) is only used for `less`
versions older than 530.
The `-R` option is needed to interpret ANSI colors correctly. The second option (`-F`) instructs
less to exit immediately if the output size is smaller than the vertical size of the terminal.
This is convenient for small files because you do not have to press `q` to quit the pager. The
third option (`-X`) is needed to fix a bug with the `--quit-if-one-screen` feature in old versions
of `less`. Unfortunately, it also breaks mouse-wheel support in `less`. If you want to enable
mouse-wheel scrolling, you can either pass just `-R` (as in the example above, this will disable
the quit-if-one-screen feature), or you can use a recent version of `less` and pass `-RF` which
will hopefully enable both quit-if-one-screen and mouse-wheel scrolling.
of `less`. Unfortunately, it also breaks mouse-wheel support in `less`.
If scrolling still doesn't work for you, you can try to pass the `-S` option in addition.
If you want to enable mouse-wheel scrolling on older versions of `less`, you can pass just `-R` (as
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.
### Dark mode
If you make use of the dark mode feature in macOS, you might want to configure `bat` to use a different
theme based on the OS theme. The following snippet uses the `default` theme when in the light mode
and the `GitHub` theme when in the dark mode.
```bash
alias cat="bat --theme=\$(defaults read -globalDomain AppleInterfaceStyle &> /dev/null && echo default || echo GitHub)"
```
## Configuration file
@ -414,15 +500,11 @@ Example configuration file:
# Use italic text on the terminal (not supported on all terminals)
--italic-text=always
# Add mouse scrolling support in less (does not work with older
# versions of "less")
--pager="less -FR"
# Use C++ syntax for .ino files
--map-syntax "*.ino:C++"
# Use C++ syntax (instead of C) for .h header files
--map-syntax h:cpp
# Use "gitignore" highlighting for ".ignore" files
--map-syntax .ignore:.gitignore
# Use ".gitignore"-style highlighting for ".ignore" files
--map-syntax ".ignore:Git Ignore"
```
## Using `bat` on Windows
@ -453,7 +535,7 @@ or by setting `BAT_PAGER` to an empty string.
This can be solved by creating a wrapper or adding the following function to your `.bash_profile` file:
```shell
```bash
bat() {
local index
local args=("$@")
@ -486,6 +568,18 @@ are supported (and fall back to 8-bit colors).
Please try a different theme (see `bat --list-themes` for a list). The `OneHalfDark` and
`OneHalfLight` themes provide grid and line colors that are brighter.
### File encodings
`bat` natively supports UTF-8 as well as UTF-16. For every other file encoding, you may need to
convert to UTF-8 first because the encodings can typically not be auto-detected. You can `iconv`
to do so.
Example: if you have a PHP file in Latin-1 (ISO-8859-1) encoding, you can call:
``` bash
iconv -f ISO-8859-1 -t UTF-8 my-file.php | bat
```
Note: you might have to use the `-l`/`--language` option if the syntax can not be auto-detected
by `bat`.
## Development
```bash
@ -494,7 +588,7 @@ git clone --recursive https://github.com/sharkdp/bat
# Build (debug version)
cd bat
cargo build
cargo build --bins
# Run unit tests and integration tests
cargo test
@ -507,6 +601,11 @@ bash assets/create.sh
cargo install -f
```
## Maintainers
- [sharkdp](https://github.com/sharkdp)
- [eth-p](https://github.com/eth-p)
## Project goals and alternatives
`bat` tries to achieve the following goals:
@ -518,3 +617,10 @@ cargo install -f
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).
`bat` is distributed under the terms of both the MIT License and the Apache License 2.0.
See the [LICENSE-APACHE](LICENSE-APACHE) and [LICENSE-MIT](LICENSE-MIT) files for license details.

@ -16,11 +16,11 @@ install:
build: false
test_script:
- cargo test --target %TARGET% --verbose
- cargo run --target %TARGET% -- src/main.rs README.md --paging=never
- cargo run --target %TARGET% -- src/bin/bat/main.rs README.md --paging=never
before_deploy:
# Generate artifacts for release
- cargo build --release --verbose
- cargo build --bins --release --verbose
- ps: ci\before_deploy.ps1
deploy:

@ -1,7 +1,7 @@
diff --git syntaxes/Packages/Java/JavaDoc.sublime-syntax syntaxes/Packages/Java/JavaDoc.sublime-syntax
diff --git syntaxes/01_Packages/Java/JavaDoc.sublime-syntax syntaxes/01_Packages/Java/JavaDoc.sublime-syntax
index 422a6a9..40a741e 100644
--- syntaxes/Packages/Java/JavaDoc.sublime-syntax
+++ syntaxes/Packages/Java/JavaDoc.sublime-syntax
--- syntaxes/01_Packages/Java/JavaDoc.sublime-syntax
+++ syntaxes/01_Packages/Java/JavaDoc.sublime-syntax
@@ -13,7 +13,7 @@ variables:
contexts:
prototype:

2
assets/README.md vendored

@ -33,7 +33,9 @@ The following files have been manually modified after converting from a `.tmLang
* `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

@ -1,76 +0,0 @@
# Fish Shell Completions
# Place or symlink to $XDG_CONFIG_HOME/fish/completions/bat.fish ($XDG_CONFIG_HOME is usually set to ~/.config)
# Helper function:
function __bat_autocomplete_languages --description "A helper function used by "(status filename)
bat --list-languages | awk -F':' '
{
lang=$1
split($2, exts, ",")
for (i in exts) {
ext=exts[i]
if (ext !~ /[A-Z].*/ && ext !~ /^\..*rc$/) {
print ext"\t"lang
}
}
}
' | sort
end
# Completions:
complete -c bat -l color -xka "auto never always" -d "Specify when to use colored output (default: auto)" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l config-dir -d "Display location of 'bat' configuration directory" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l config-file -d "Display location of 'bat' configuration file" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l decorations -xka "auto never always" -d "Specify when to use the decorations specified with '--style' (default: auto)" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s h -l help -d "Print help message" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s H -l highlight-line -x -d "<N> Highlight the N-th line with a different background color" -n "not __fish_seen_subcommand_from cache"
complete -c bat -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 bat -s l -l language -d "Set the language for syntax highlighting" -n "not __fish_seen_subcommand_from cache" -xa "(__bat_autocomplete_languages)"
complete -c bat -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"
complete -c bat -l list-languages -d "Display list of supported languages for syntax highlighting" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l list-themes -d "Display a list of supported themes for syntax highlighting" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s m -l map-syntax -x -d "<from:to> Map a file extension or file name to an existing syntax" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s n -l number -d "Only show line numbers, no other decorations. Alias for '--style=numbers'" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l pager -x -d "<command> Specify which pager program to use (default: less)" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l paging -xka "auto never always" -d "Specify when to use the pager (default: auto)" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s p -l plain -d "Only show plain style, no decorations. Alias for '--style=plain'" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s A -l show-all -d "Show non-printable characters like space/tab/newline" -n "not __fish_seen_subcommand_from cache"
complete -c bat -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"
complete -c bat -l tabs -x -d "<T> Set the tab width to T spaces (width of 0 passes tabs through directly)" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l terminal-width -x -d "<width> Explicitly set terminal width; Prefix with '+' or '-' to offset (default width is auto determined)" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l theme -xka "(bat --list-themes | cat)" -d "Set the theme for syntax highlighting" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s u -l unbuffered -d "POSIX-compliant unbuffered output. Option is ignored" -n "not __fish_seen_subcommand_from cache"
complete -c bat -s V -l version -d "Show version information" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l wrap -xka "auto never character" -d "<mode> Specify the text-wrapping mode (default: auto)" -n "not __fish_seen_subcommand_from cache"
# Sub-command 'cache' completions
complete -c bat -a "cache" -d "Modify the syntax/language definition cache" -n "not __fish_seen_subcommand_from cache"
complete -c bat -l build -f -d "Parse syntaxes/language definitions into cache" -n "__fish_seen_subcommand_from cache"
complete -c bat -l clear -f -d "Reset syntaxes/language definitions to default settings" -n "__fish_seen_subcommand_from cache"

76
assets/completions/bat.fish.in vendored Normal file

@ -0,0 +1,76 @@
# Fish Shell Completions
# Place or symlink to $XDG_CONFIG_HOME/fish/completions/{{PROJECT_EXECUTABLE}}.fish ($XDG_CONFIG_HOME is usually set to ~/.config)
# Helper function:
function __{{PROJECT_EXECUTABLE}}_autocomplete_languages --description "A helper function used by "(status filename)
{{PROJECT_EXECUTABLE}} --list-languages | awk -F':' '
{
lang=$1
split($2, exts, ",")
for (i in exts) {
ext=exts[i]
if (ext !~ /[A-Z].*/ && ext !~ /^\..*rc$/) {
print ext"\t"lang
}
}
}
' | sort
end
# Completions:
complete -c {{PROJECT_EXECUTABLE}} -l color -xka "auto never always" -d "Specify when to use colored output (default: auto)" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l config-dir -d "Display location of '{{PROJECT_EXECUTABLE}}' configuration directory" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l config-file -d "Display location of '{{PROJECT_EXECUTABLE}}' configuration file" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l decorations -xka "auto never always" -d "Specify when to use the decorations specified with '--style' (default: auto)" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s h -l help -d "Print help message" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s H -l highlight-line -x -d "<N> Highlight the N-th line with a different background color" -n "not __fish_seen_subcommand_from cache"
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 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"
complete -c {{PROJECT_EXECUTABLE}} -l list-languages -d "Display list of supported languages for syntax highlighting" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l list-themes -d "Display a list of supported themes for syntax highlighting" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s m -l map-syntax -x -d "<from:to> Map a file extension or file name to an existing syntax" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s n -l number -d "Only show line numbers, no other decorations. Alias for '--style=numbers'" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l pager -x -d "<command> Specify which pager program to use (default: less)" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l paging -xka "auto never always" -d "Specify when to use the pager (default: auto)" -n "not __fish_seen_subcommand_from cache"
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 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"
complete -c {{PROJECT_EXECUTABLE}} -l tabs -x -d "<T> Set the tab width to T spaces (width of 0 passes tabs through directly)" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l terminal-width -x -d "<width> Explicitly set terminal width; Prefix with '+' or '-' to offset (default width is auto determined)" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l theme -xka "({{PROJECT_EXECUTABLE}} --list-themes | cat)" -d "Set the theme for syntax highlighting" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s u -l unbuffered -d "POSIX-compliant unbuffered output. Option is ignored" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -s V -l version -d "Show version information" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l wrap -xka "auto never character" -d "<mode> Specify the text-wrapping mode (default: auto)" -n "not __fish_seen_subcommand_from cache"
# Sub-command 'cache' completions
complete -c {{PROJECT_EXECUTABLE}} -a "cache" -d "Modify the syntax/language definition cache" -n "not __fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l build -f -d "Parse syntaxes/language definitions into cache" -n "__fish_seen_subcommand_from cache"
complete -c {{PROJECT_EXECUTABLE}} -l clear -f -d "Reset syntaxes/language definitions to default settings" -n "__fish_seen_subcommand_from cache"

38
assets/create.sh vendored

@ -2,13 +2,49 @@
set -euo pipefail
ASSET_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
REPO_DIR="$ASSET_DIR/.."
# Ensure submodules are initialized.
function update_submodules() {
local submodule
local submodule_prompt=unspecified
local submodule_path
{
while { read -r submodule && read -r submodule_path; } <&3; do
if ! [[ -d "${REPO_DIR}/.git/modules/${submodule}" ]] && [[ -d "${REPO_DIR}/${submodule_path}" ]]; then
if [[ "$submodule_prompt" = "unspecified" ]]; then
echo "One or more submodules were found to be uninitialized."
printf "Initialize and update them? [Y/n] "
read -r submodule_prompt
fi
case "$submodule_prompt" in
y|yes|'') {
git -C "$REPO_DIR" submodule update --init "$submodule_path"
};;
n|no) {
return
};;
*) {
echo "Unknown answer. Not updating submodules."
};;
esac
fi
done
} 3< <(git config --file "${REPO_DIR}/.gitmodules" --null --get-regexp path | xargs -0 printf "%s\n" | sed 's/^submodule.//;s/.path$//')
}
if [ -t 0 ]; then
update_submodules
fi
# Always remove the local cache to avoid any confusion
bat cache --clear
# TODO: Remove this (and the reverse part below) when
# https://github.com/trishume/syntect/issues/222 has been fixed
JAVADOC_FILE="${ASSET_DIR}/syntaxes/Packages/Java/JavaDoc.sublime-syntax"
JAVADOC_FILE="${ASSET_DIR}/syntaxes/01_Packages/Java/JavaDoc.sublime-syntax"
JAVADOC_PATCH="${ASSET_DIR}/JavaDoc.sublime-syntax.patch"
patch "$JAVADOC_FILE" "$JAVADOC_PATCH"

@ -1,81 +1,76 @@
.TH BAT "1"
.TH {{PROJECT_EXECUTABLE | upcase}} "1"
.SH NAME
bat \- manual page for bat
.SH DESCRIPTION
bat - a cat(1) clone with syntax highlighting and Git integration.
{{PROJECT_EXECUTABLE}} \- a cat(1) clone with syntax highlighting and Git integration.
.SH "USAGE"
.IP
bat [OPTIONS] [FILE]...
.IP
bat <SUBCOMMAND>
.IP "{{PROJECT_EXECUTABLE}} [OPTIONS] [FILE]..."
.IP "{{PROJECT_EXECUTABLE}} cache [CACHE-OPTIONS] [--build|--clear]
.SH DESCRIPTION
{{PROJECT_EXECUTABLE}} prints the syntax-highlighted content of a collection of FILEs to the
terminal. If no FILE is specified, or when FILE is '-', it reads from standard input.
{{PROJECT_EXECUTABLE}} supports a large number of programming and markup languages.
It also communicates with git(1) to show modifications with respect to the git index.
{{PROJECT_EXECUTABLE}} automatically pipes its output through a pager (by default: less).
Whenever the output of {{PROJECT_EXECUTABLE}} goes to a non-interactive terminal, i.e. when the
output is piped into another process or into a file, {{PROJECT_EXECUTABLE}} will act as a drop-in
replacement for cat(1) and fall back to printing the plain file contents.
.SH "OPTIONS"
General remarks: Command-line options like '-l'/'--language' that take values can be specified as
either '--language value', '--language=value', '-l value' or '-lvalue'.
.HP
\fB\-l\fR, \fB\-\-language\fR <language>
\fB\-A\fR, \fB\-\-show\-all\fR
.IP
Explicitly set the language for syntax highlighting. The language can be specified as a
name (like 'C++' or 'LaTeX') or possible file extension (like 'cpp', 'hpp' or 'md'). Use
\&'\-\-list\-languages' to show all supported language names and file extensions.
.HP
\fB\-\-list\-languages\fR
.IP
Display a list of supported languages for syntax highlighting.
.HP
\fB\-m\fR, \fB\-\-map\-syntax\fR <from:to>...
.IP
Map a file extension or file name to an existing syntax. For example, to highlight
*.conf files with the INI syntax, use '\-m conf:ini'. To highlight files named
\&'.myignore' with the Git Ignore syntax, use '\-m .myignore:gitignore'.
.HP
\fB\-\-theme\fR <theme>
.IP
Set the theme for syntax highlighting. Use '\-\-list\-themes' to see all available themes.
To set a default theme, add the '\-\-theme="..."' option to the configuration file or
export the BAT_THEME environment variable (e.g.: export BAT_THEME="...").
.HP
\fB\-\-list\-themes\fR
.IP
Display a list of supported themes for syntax highlighting.
.HP
\fB\-\-style\fR <style\-components>
.IP
Configure which elements (line numbers, file headers, grid borders, Git modifications,
\&..) to display in addition to the file contents. The argument is a comma\-separated list
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.
Show non\-printable characters like space, tab or newline. Use '\-\-tabs' to
control the width of the tab\-placeholders.
.HP
\fB\-p\fR, \fB\-\-plain\fR
.IP
Only show plain style, no decorations. This is an alias for '\-\-style=plain'. When '\-p'
is used twice ('\-pp'), it also disables automatic paging (alias for '\-\-style=plain
\fB\-\-pager\fR=\fI\,never\/\fR').
Only show plain style, no decorations. This is an alias for
\&'\-\-style=plain'. When '\-p' is used twice ('\-pp'), it also disables
automatic paging (alias for '\-\-style=plain \fB\-\-pager\fR=\fI\,never\/\fR').
.HP
\fB\-l\fR, \fB\-\-language\fR <language>
.IP
Explicitly set the language for syntax highlighting. The language can be
specified as a name (like 'C++' or 'LaTeX') or possible file extension
(like 'cpp', 'hpp' or 'md'). Use '\-\-list\-languages' to show all supported
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:
.RS
.IP "\-\-highlight\-line 40"
highlights line 40
.IP "\-\-highlight\-line 30:40"
highlights lines 30 to 40
.IP "\-\-highlight\-line :40"
highlights lines 1 to 40
.IP "\-\-highlight\-line 40:"
highlights lines 40 to the end of the file
.RE
.HP
\fB\-\-tabs\fR <T>
.IP
Set the tab width to T spaces. Use a width of 0 to pass tabs through directly
.HP
\fB\-\-wrap\fR <mode>
.IP
Specify the text\-wrapping mode (*auto*, never, character). The '\-\-terminal\-width' option
can be used in addition to control the output width.
.HP
\fB\-\-terminal\-width\fR <width>
.IP
Explicitly set the width of the terminal instead of determining it automatically. If
prefixed with '+' or '\-', the value will be treated as an offset to the actual terminal
width. See also: '\-\-wrap'.
.HP
\fB\-n\fR, \fB\-\-number\fR
.IP
Only show line numbers, no other decorations. This is an alias for '\-\-style=numbers'
.HP
\fB\-A\fR, \fB\-\-show\-all\fR
.IP
Show non\-printable characters like space, tab or newline. Use '\-\-tabs' to control the
width of the tab\-placeholders.
.HP
\fB\-r\fR, \fB\-\-line\-range\fR <N:M>...
.IP
Only print the specified range of lines for each file. For example:
.RS
.IP "\-\-line\-range 30:40"
prints lines 30 to 40
.IP "\-\-line\-range :40"
prints lines 1 to 40
.IP "\-\-line\-range 40:"
prints lines 40 to the end of the file
.RE
.HP
\fB\-H\fR, \fB\-\-highlight\-line\fR <N>...
.IP
Highlight the N\-th line with a different background color
.HP
\fB\-\-color\fR <when>
.IP
Specify when to use colored output. The automatic mode only enables colors if an
@ -105,26 +100,53 @@ Determine which pager is used. This option will overwrite the PAGER and BAT_PAGE
environment variables. The default pager is 'less'. To disable the pager completely, use
the '\-\-paging' option. Example: '\-\-pager "less \fB\-RF\fR"'.
.HP
\fB\-\-wrap\fR <mode>
\fB\-m\fR, \fB\-\-map\-syntax\fR <glob-pattern:syntax-name>...
.IP
Specify the text\-wrapping mode (*auto*, never, character). The '\-\-terminal\-width' option
can be used in addition to control the output width.
Map a glob pattern to an existing syntax name. The glob pattern is matched on the full
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'.
.HP
\fB\-\-tabs\fR <T>
\fB\-\-theme\fR <theme>
.IP
Set the tab width to T spaces. Use a width of 0 to pass tabs through directly
Set the theme for syntax highlighting. Use '\-\-list\-themes' to see all available themes.
To set a default theme, add the '\-\-theme="..."' option to the configuration file or
export the BAT_THEME environment variable (e.g.: export BAT_THEME="...").
.HP
\fB\-\-list\-themes\fR
.IP
Display a list of supported themes for syntax highlighting.
.HP
\fB\-\-style\fR <style\-components>
.IP
Configure which elements (line numbers, file headers, grid borders, Git modifications,
\&..) to display in addition to the file contents. The argument is a comma\-separated list
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.
.HP
\fB\-r\fR, \fB\-\-line\-range\fR <N:M>...
.IP
Only print the specified range of lines for each file. For example:
.RS
.IP "\-\-line\-range 30:40"
prints lines 30 to 40
.IP "\-\-line\-range :40"
prints lines 1 to 40
.IP "\-\-line\-range 40:"
prints lines 40 to the end of the file
.RE
.HP
\fB\-L\fR, \fB\-\-list\-languages\fR
.IP
Display a list of supported languages for syntax highlighting.
.HP
\fB\-u\fR, \fB\-\-unbuffered\fR
.IP
This option exists for POSIX\-compliance reasons ('u' is for 'unbuffered'). The output is
always unbuffered \- this option is simply ignored.
.HP
\fB\-\-terminal\-width\fR <width>
.IP
Explicitly set the width of the terminal instead of determining it automatically. If
prefixed with '+' or '\-', the value will be treated as an offset to the actual terminal
width. See also: '\-\-wrap'.
.HP
\fB\-h\fR, \fB\-\-help\fR
.IP
Print this help message.
@ -132,13 +154,20 @@ Print this help message.
\fB\-V\fR, \fB\-\-version\fR
.IP
Show version information.
.SH "ARGS"
.SH "POSITIONAL ARGUMENTS"
.HP
\fB<FILE>...\fR
.IP
<FILE>...
.IP
File(s) to print / concatenate. Use a dash ('\-') or no argument at all to read
from standard input.
Files to print and concatenate. Use a dash ('\-') or no argument at all to read from
standard input.
.SH "SUBCOMMANDS"
.IP
cache
Modify the syntax\-definition and theme cache
.HP
\fBcache\fR - Modify the syntax\-definition and theme cache.
.SH "FILES"
{{PROJECT_EXECUTABLE}} can also be customized with a configuration file. The location of the file
is dependent on your operating system. To get the default path for your system, call:
\fB{{PROJECT_EXECUTABLE}} --config-file\fR
Alternatively, you can use the BAT_CONFIG_PATH environment variable to point bat to a non-default
location of the configuration file.

BIN
assets/syntaxes.bin vendored

Binary file not shown.

1
assets/syntaxes/01_Packages vendored Submodule

@ -33,7 +33,7 @@ contexts:
captures:
1: constant.other.cabal
2: punctuation.entity.cabal
- match: '^(?i)(executable|library|test-suite|benchmark|flag|source-repository)\s+([^\s,]+)\s*$'
- match: '^(?i)(executable|library|test-suite|benchmark|flag|source-repository|custom-setup)\s+([^\s,]+)\s*$'
scope: entity.cabal
captures:
1: keyword.entity.cabal

@ -0,0 +1,271 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: CoffeeScript
comment: "CoffeeScript Syntax: version 1"
file_extensions:
- coffee
- Cakefile
- coffee.erb
- cson
first_line_match: ^#!.*\bcoffee
scope: source.coffee
contexts:
main:
- match: '(\([^()]*?\))\s*([=-]>)'
comment: "match stuff like: a -> …"
scope: meta.inline.function.coffee
captures:
1: variable.parameter.function.coffee
2: storage.type.function.coffee
- match: (new)\s+(\w+(?:\.\w*)*)
scope: meta.class.instance.constructor
captures:
1: keyword.operator.new.coffee
2: support.class.coffee
- match: "'''"
captures:
0: punctuation.definition.string.begin.coffee
push:
- meta_scope: string.quoted.heredoc.coffee
- match: "'''"
captures:
0: punctuation.definition.string.end.coffee
pop: true
- match: '"""'
captures:
0: punctuation.definition.string.begin.coffee
push:
- meta_scope: string.quoted.double.heredoc.coffee
- match: '"""'
captures:
0: punctuation.definition.string.end.coffee
pop: true
- match: \\.
scope: constant.character.escape.coffee
- include: interpolated_coffee
- match: "`"
captures:
0: punctuation.definition.string.begin.coffee
push:
- meta_scope: string.quoted.script.coffee
- match: "`"
captures:
0: punctuation.definition.string.end.coffee
pop: true
- match: '\\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)'
scope: constant.character.escape.coffee
- match: (?<!#)###(?!#)
captures:
0: punctuation.definition.comment.coffee
push:
- meta_scope: comment.block.coffee
- match: '###(?:[ \t]*\n)'
captures:
0: punctuation.definition.comment.coffee
pop: true
- match: '@\w*'
scope: storage.type.annotation.coffeescript
- match: '(#)(?!\{).*$\n?'
scope: comment.line.number-sign.coffee
captures:
1: punctuation.definition.comment.coffee
- match: "/{3}"
push:
- meta_scope: string.regexp.coffee
- match: "/{3}[imgy]{0,4}"
pop: true
- include: interpolated_coffee
- include: embedded_comment
- match: '/(?![\s=/*+{}?]).*?[^\\]/[igmy]{0,4}(?![a-zA-Z0-9])'
scope: string.regexp.coffee
- match: |-
(?x)
\b(?<![\.\$])(
break|by|catch|continue|else|finally|for|in|of|if|return|switch|
then|throw|try|unless|when|while|until|loop|do|(?<=for)\s+own
)(?!\s*:)\b
scope: keyword.control.coffee
- match: |-
(?x)
and=|or=|!|%|&|\^|\*|\/|(\-)?\-(?!>)|\+\+|\+|~|==|=(?!>)|!=|<=|>=|<<=|>>=|
>>>=|<>|<|>|!|&&|\.\.(\.)?|\?|\||\|\||\:|\*=|(?<!\()/=|%=|\+=|\-=|&=|
\^=|\b(?<![\.\$])(instanceof|new|delete|typeof|and|or|is|isnt|not|super)\b
scope: keyword.operator.coffee
- match: '([a-zA-Z\$_](\w|\$|\.)*\s*(?!\::)((:)|(=[^=]))(?!(\s*\(.*\))?\s*((=|-)>)))'
scope: variable.assignment.coffee
captures:
1: variable.assignment.coffee
4: punctuation.separator.key-value
5: keyword.operator.coffee
- match: '(?<=\s|^)([\[\{])(?=.*?[\]\}]\s+[:=])'
captures:
0: keyword.operator.coffee
push:
- meta_scope: meta.variable.assignment.destructured.coffee
- match: '([\]\}]\s*[:=])'
captures:
0: keyword.operator.coffee
pop: true
- include: variable_name
- include: instance_variable
- include: single_quoted_string
- include: double_quoted_string
- include: numeric
- match: |-
(?x)
(\s*)
(?=[a-zA-Z\$_])
(
[a-zA-Z\$_](\w|\$|:|\.)*\s*
(?=[:=](\s*\(.*\))?\s*([=-]>))
)
scope: meta.function.coffee
captures:
2: entity.name.function.coffee
3: entity.name.function.coffee
4: variable.parameter.function.coffee
5: storage.type.function.coffee
- match: ^\s*(describe|it|app\.(get|post|put|all|del|delete))
comment: Show well-known functions from Express and Mocha in Go To Symbol view
push:
- meta_scope: meta.function.symbols.coffee
- match: $
pop: true
- include: main
- match: "[=-]>"
scope: storage.type.function.coffee
- match: '\b(?<!\.)(true|on|yes)(?!\s*[:=])\b'
scope: constant.language.boolean.true.coffee
- match: '\b(?<!\.)(false|off|no)(?!\s*[:=])\b'
scope: constant.language.boolean.false.coffee
- match: '\b(?<!\.)null(?!\s*[:=])\b'
scope: constant.language.null.coffee
- match: '\b(?<!\.)(this|extends)(?!\s*[:=])\b'
scope: variable.language.coffee
- match: '(class\b)\s+(@?[a-zA-Z\$_][\w\.]*)?(?:\s+(extends)\s+(@?[a-zA-Z\$\._][\w\.]*))?'
scope: meta.class.coffee
captures:
1: storage.type.class.coffee
2: entity.name.type.class.coffee
3: keyword.control.inheritance.coffee
4: entity.other.inherited-class.coffee
- match: \b(debugger|\\)\b
scope: keyword.other.coffee
- match: |-
(?x)\b(
Array|ArrayBuffer|Blob|Boolean|Date|document|event|Function|
Int(8|16|32|64)Array|Math|Map|Number|
Object|Proxy|RegExp|Set|String|WeakMap|
window|Uint(8|16|32|64)Array|XMLHttpRequest
)\b
scope: support.class.coffee
- match: ((?<=console\.)(debug|warn|info|log|error|time|timeEnd|assert))\b
scope: support.function.console.coffee
- match: |-
(?x)\b(
decodeURI(Component)?|encodeURI(Component)?|eval|parse(Float|Int)|require
)\b
scope: support.function.coffee
- match: |-
(?x)((?<=\.)(
apply|call|concat|every|filter|forEach|from|hasOwnProperty|indexOf|
isPrototypeOf|join|lastIndexOf|map|of|pop|propertyIsEnumerable|push|
reduce(Right)?|reverse|shift|slice|some|sort|splice|to(Locale)?String|
unshift|valueOf
))\b
scope: support.function.method.array.coffee
- match: |-
(?x)((?<=Array\.)(
isArray
))\b
scope: support.function.static.array.coffee
- match: |-
(?x)((?<=Object\.)(
create|definePropert(ies|y)|freeze|getOwnProperty(Descriptors?|Names)|
getProperty(Descriptor|Names)|getPrototypeOf|is(Extensible|Frozen|Sealed)?|
isnt|keys|preventExtensions|seal
))\b
scope: support.function.static.object.coffee
- match: |-
(?x)((?<=Math\.)(
abs|acos|acosh|asin|asinh|atan|atan2|atanh|ceil|cos|cosh|exp|expm1|floor|
hypot|log|log10|log1p|log2|max|min|pow|random|round|sign|sin|sinh|sqrt|
tan|tanh|trunc
))\b
scope: support.function.static.math.coffee
- match: |-
(?x)((?<=Number\.)(
is(Finite|Integer|NaN)|toInteger
))\b
scope: support.function.static.number.coffee
- match: \b(Infinity|NaN|undefined)\b
scope: constant.language.coffee
- match: \;
scope: punctuation.terminator.statement.coffee
- match: ',[ |\t]*'
scope: meta.delimiter.object.comma.coffee
- match: \.
scope: meta.delimiter.method.period.coffee
- match: '\{|\}'
scope: meta.brace.curly.coffee
- match: \(|\)
scope: meta.brace.round.coffee
- match: '\[|\]\s*'
scope: meta.brace.square.coffee
- include: instance_variable
- include: single_quoted_string
- include: double_quoted_string
- include: numeric
double_quoted_string:
- match: '"'
captures:
0: punctuation.definition.string.begin.coffee
push:
- meta_scope: string.quoted.double.coffee
- match: '"'
captures:
0: punctuation.definition.string.end.coffee
pop: true
- match: '\\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)'
scope: constant.character.escape.coffee
- include: interpolated_coffee
embedded_comment:
- match: (?<!\\)(#).*$\n?
scope: comment.line.number-sign.coffee
captures:
1: punctuation.definition.comment.coffee
instance_variable:
- match: '(@)([a-zA-Z_\$]\w*)?'
scope: variable.other.readwrite.instance.coffee
interpolated_coffee:
- match: '\#\{'
captures:
0: punctuation.section.embedded.coffee
push:
- meta_scope: source.coffee.embedded.source
- match: '\}'
captures:
0: punctuation.section.embedded.coffee
pop: true
- include: main
numeric:
- match: '(?<!\$)\b((0([box])[0-9a-fA-F]+)|([0-9]+(\.[0-9]+)?(e[+\-]?[0-9]+)?))\b'
scope: constant.numeric.coffee
single_quoted_string:
- match: "'"
captures:
0: punctuation.definition.string.begin.coffee
push:
- meta_scope: string.quoted.single.coffee
- match: "'"
captures:
0: punctuation.definition.string.end.coffee
pop: true
- match: '\\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)'
scope: constant.character.escape.coffee
variable_name:
- match: '([a-zA-Z\$_]\w*(\.\w+)*)'
scope: variable.assignment.coffee
captures:
1: variable.assignment.coffee

@ -0,0 +1,14 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: CpuInfo
file_extensions:
- cpuinfo
scope: source.cpuinfo
contexts:
main:
- match: '^([^:]+)\w*:\w*(.*)$'
captures:
1: keyword.other.cpuinfo-key
2: string.other.cpuinfo-value

@ -131,9 +131,9 @@ contexts:
scope: keyword.control.pseudo-method.crystal
- match: '\b(nil|true|false)\b(?![?!])'
scope: constant.language.crystal
- match: '\b(__(DIR|FILE|LINE)__|self)\b(?![?!])'
- match: '\b(__(DIR|FILE|LINE|END_LINE)__|self)\b(?![?!])'
scope: variable.language.crystal
- match: '\b(initialize|new|loop|include|extend|raise|getter|setter|property|class_getter|class_setter|class_property|describe|it|with|delegate|def_hash|def_equals|def_equals_and_hash|forward_missing_to|record|assert_responds_to|spawn)\b[!?]?'
- 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..
scope: keyword.control.special-method.crystal
- match: \b(require)\b
@ -180,7 +180,7 @@ contexts:
(?<=^|\s)(def)\s+ # the def keyword
( (?>[a-zA-Z_\x{80}-\x{10FFFF}][\x{80}-\x{10FFFF}\w]*(?>\.|::))? # a method name prefix
(?>[a-zA-Z_\x{80}-\x{10FFFF}][\x{80}-\x{10FFFF}\w]*(?>[?!]|=(?!>))? # the method name
|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\]=?) ) # …or an operator method
|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\](?:=|\?)?) ) # …or an operator method
\s*(\() # the openning parenthesis for arguments
comment: the method pattern comes from the symbol pattern, see there for a explaination
captures:
@ -201,7 +201,7 @@ contexts:
(?<=^|\s)(def)\s+ # the def keyword
( (?>[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*(?>\.|::))? # a method name prefix
(?>[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*(?>[?!]|=(?!>))? # the method name
|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\]=?) ) # …or an operator method
|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\](?:=|\?)?) ) # …or an operator method
[ \t] # the space separating the arguments
(?=[ \t]*[^\s#;]) # make sure arguments and not a comment follow
comment: same as the previous rule, but without parentheses around the arguments
@ -221,7 +221,7 @@ contexts:
( \s+ # an optional group of whitespace followed by…
( (?>[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*(?>\.|::))? # a method name prefix
(?>[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*(?>[?!]|=(?!>))? # the method name
|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\]=?) ) )? # …or an operator method
|===?|>[>=]?|<=>|<[<=]?|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\](?:=|\?)?) ) )? # …or an operator method
comment: the optional name is just to catch the def also without a method-name
scope: meta.function.method.without-arguments.crystal
captures:
@ -588,7 +588,7 @@ contexts:
pop: true
- match: \\.
comment: Cant be named because its not neccesarily an escape.
- match: '(?<!:)(:)(?>[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<[<=]?|<=>|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\]=?|@@?[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*)'
- match: '(?<!:)(:)(?>[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<[<=]?|<=>|[%&`/\|]|\*\*?|=?~|[-+]@?|\[\](?:=|\?)?|@@?[a-zA-Z_\x{80}-\x{10FFFF}][\w\x{80}-\x{10FFFF}]*|!=?(?![?!]))'
comment: symbols
scope: constant.other.symbol.crystal
captures:
@ -713,14 +713,14 @@ contexts:
captures:
0: punctuation.definition.string.begin.crystal
push:
- meta_scope: string.unquoted.embedded.js.jquery.crystal
- meta_content_scope: text.js.jquery.embedded.crystal
- meta_scope: string.unquoted.embedded.js.crystal
- meta_content_scope: text.js.embedded.crystal
- match: \s*\2$
captures:
0: punctuation.definition.string.end.crystal
pop: true
- include: heredoc
- include: scope:source.js.jquery
- include: scope:source.js
- include: interpolated_crystal
- include: escaped_char
- match: '(?><<-("?)((?:[_\w]+_|)(?:SH|SHELL))\b\1)'

@ -0,0 +1,91 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: DotENV
file_extensions:
- .env
- .envrc
- .env.dist
- .env.local
- .env.sample
- .env.example
- .env.test
- .env.test.local
- .env.testing
- .env.dev
- .env.development
- .env.development.local
- .env.prod
- .env.production
- .env.production.local
- .env.dusk.local
- .flaskenv
- .env.staging
scope: source.env
contexts:
main:
- match: (#).*$\n?
comment: "Comments - starts with #"
scope: comment.line.number-sign.env
captures:
1: punctuation.definition.comment.env
- match: (\")
comment: Strings (double)
captures:
1: punctuation.definition.string.begin.env
push:
- meta_scope: string.quoted.double.env
- match: (\")
captures:
1: punctuation.definition.string.end
pop: true
- include: interpolation
- include: variable
- include: escape-characters
- match: (\')
comment: Strings (single)
captures:
1: punctuation.definition.string.begin.env
push:
- meta_scope: string.quoted.single.env
- match: (\')
captures:
1: punctuation.definition.string.end
pop: true
- match: '(?<=[\w])\s?='
comment: Assignment Operator
scope: keyword.operator.assignment.env
- match: '([\w]+)(?=\s?\=)'
comment: Variable
scope: variable.other.env
- match: (?i)\s?(export)
comment: Keywords
scope: keyword.other.env
- match: (?i)(?<=\=)\s?(true|false|null)
comment: Constants
scope: constant.language.env
- match: '\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)\b'
comment: Numeric
scope: constant.numeric.env
escape-characters:
- match: '\\[nrt\\\$\"\'']'
scope: constant.character.escape.env
interpolation:
- match: '(\$\{|\{)'
comment: 'Template Syntax: "foo ${bar} {$baz}"'
captures:
1: string.interpolated.env keyword.other.template.begin.env
push:
- match: '(\})'
captures:
1: string.interpolated.env keyword.other.template.end.env
pop: true
- match: '(?x)(\$+)?([a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*?\b)'
captures:
1: punctuation.definition.variable.env variable.other.env
2: variable.other.env
variable:
- match: '(?x)(\$+)([a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*?\b)'
captures:
1: punctuation.definition.variable.env variable.other.env
2: variable.other.env

@ -0,0 +1,133 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: fstab
file_extensions:
- fstab
scope: source.fstab
contexts:
main:
- include: comment
- match: '^'
push: fstab_device
comment: leading spaces
fstab_device:
- include: comment
- match: '\s*([^=\s]+=)([^\s]+)\s*'
comment: device by uuid or label
set: fstab_mountpoint
captures:
1: punctuation.accessor
2: keyword.other.device
- match: '\s*(//|\\\\)([^\s]+)\s*'
comment: device by samba share
set: fstab_mountpoint
captures:
1: punctuation.accessor
2: keyword.other.device
- match: '\s*([^\s]+)(:)([^\s]+)\s*'
comment: device by server
set: fstab_mountpoint
captures:
1: keyword.other.device
2: punctuation.accessor
3: keyword.other.device
- match: '\s*[^\s/\\]+\s*'
comment: device by dev name
set: fstab_mountpoint
scope: keyword.other.device
- match: '\s*(/dev/)([^\s]+)\s*'
comment: device by dev path
set: fstab_mountpoint
captures:
1: punctuation.accessor
2: keyword.other.device
- match: '\s*([^\s/]*/)*([^\s]+)\s*'
comment: device by unknown path
set: fstab_mountpoint
captures:
1: punctuation.accessor
2: keyword.other.device
- include: clear
fstab_mountpoint:
- include: comment
- match: '\s*/[^\s]*\s*'
comment: mount point
set: fstab_filesystem
scope: string.unquoted.mountpoint
- match: '\s*[^\s]+\s*'
comment: mount point without leading slash (invalid)
set: fstab_filesystem
scope: invalid.illegal
- include: clear
fstab_filesystem:
- include: comment
- match: '\s*[^\s]+\s*'
comment: filesystem type
set: fstab_options
scope: variable.parameter.filesystem
- include: clear
fstab_options:
- include: comment
- match: '([^\s,=]+)(=)([^\s,]+)'
comment: key-value option
captures:
1: entity.name.option
2: entity.other.separator
3: variable.parameter
- match: '[^\s,]+'
comment: flag option
scope: entity.name.option
- match: ','
comment: option separator
scope: punctuation.separator
- match: '\s+'
comment: next field
set: fstab_dump
- include: clear
fstab_dump:
- include: comment
- match: '\s*[01]\s*'
comment: dump field
scope: constant.numeric
set: fstab_pass
- match: '\s*[^\s]+\s*'
comment: invalid dump field
scope: invalid.illegal
set: fstab_pass
- include: clear
fstab_pass:
- include: comment
- match: '\s*[01]\s*'
comment: pass field
scope: constant.numeric
set: expected_eol
- match: '\s*[^\s]+\s*'
comment: invalid pass field
scope: invalid.illegal
set: expected_eol
- include: clear
expected_eol:
- include: comment
- include: clear
- match: '.*'
scope: invalid.illegal
comment:
- match: '\s*#.*$'
comment: comment using the number sign
scope: comment.line
clear:
- match: '.*$'
comment: used for clearing the context
pop: true

@ -0,0 +1,48 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: group
file_extensions:
- group
scope: source.group
contexts:
main:
- comment: name
match: ^[^:]+
scope: keyword
- comment: password
match: ":"
push: password
password:
- comment: uid
match: ":"
set: gid
- comment: shadowpassword
match: "[^:]+"
scope: invalid
gid:
- comment: gid
match: ":"
set: users
- comment: number
match: "[0-9]+"
scope: constant.numeric
users:
- comment: newline
match: "\n"
pop: true
- comment: directory
match: "[^:\n]+"
scope: variable.parameter
- comment: separator
match: ","
scope: punctuation

@ -0,0 +1,23 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: hosts
file_extensions:
- hosts
scope: source.hosts
contexts:
main:
- scope: comment.line.number-sign
match: \#.*
comment: comment
- match: ^\s*([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}|[0-9a-f:]+)
comment: ipaddress
scope: constant.numeric.ipaddress
- match: \s(localhost|ip6-loopback|ip6-localhost|ip6-localnet|ip6-mcastprefix|ip6-allnodes|ip6-allrouters|ip6-allhosts|broadcasthost)\b
scope: keyword.host.predefined}
comment: prefdfined

@ -4,9 +4,11 @@
name: JavaScript (Babel)
file_extensions:
- js
- mjs
- jsx
- babel
- es6
- cjs
first_line_match: ^#!\s*/.*\b(node|js)$\n?
scope: source.js
contexts:

@ -0,0 +1,53 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Manpage
file_extensions:
- man
scope: source.man
variables:
section_heading: '^\S.*$'
contexts:
main:
- match: ^
push: first_line
first_line:
- match: '([A-Z0-9_\-]+)(\()([^)]+)(\))'
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}})'
pop: true
- match: '^\S.*$'
scope: markup.heading
- match: '\b([A-Za-z0-9_\-]+)(\()([^)]*)(\))'
captures:
1: entity.name.function
2: keyword.operator
3: constant.numeric
4: keyword.operator
# 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]+)("?))?'
captures:
1: entity.name
2: keyword.operator
3: punctuation.definition.string.begin
4: variable.parameter
3: punctuation.definition.string.end

@ -0,0 +1,14 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: MemInfo
file_extensions:
- meminfo
scope: source.meminfo
contexts:
main:
- match: '^([^:]+)\w*:\w*(.*)$'
captures:
1: keyword.other.meminfo-key
2: string.other.meminfo-value

@ -0,0 +1,257 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Nim
file_extensions:
- nim
- nims
scope: source.nim
contexts:
main:
- match: '(\#\[\s*(TODO|todo)?)'
comment: A multiline comment.
captures:
1: punctuation.definition.multi-comment.nim
2: invalid.illegal.TODO.nim
push:
- meta_scope: comment.line.number-sign.multi-comment.nim
- match: '(.*]\#)'
captures:
1: punctuation.definition.multi-comment.nim
2: invalid.illegal.TODO.nim
pop: true
- match: (##\s*(TODO|todo)?).+$\n?
comment: A documentation comment.
scope: comment.line.number-sign.doc-comment.nim
captures:
1: punctuation.definition.doc-comment.nim
2: invalid.illegal.TODO.nim
- match: (##\s*)$\n?
comment: An empty documentation comment.
scope: comment.line.number-sign.doc-comment.empty.nim
captures:
1: punctuation.definition.doc-comment.empty.nim
- match: (#\s*(TODO|todo)?).*$\n?
comment: A regular comment
scope: comment.line.number-sign.comment.nim
captures:
1: punctuation.definition.comment.nim
2: invalid.illegal.TODO.nim
- match: '\{\.'
comment: Pragmas
push:
- meta_scope: pragma
- match: '\.?\}'
pop: true
- match: \"
push:
- meta_scope: string.something.nim
- match: \"
pop: true
- match: '([\w\x{80}-\x{10FFFF}]+)'
scope: entity.other.attribute-name.pragma.nim
- match: discard \"\"\"
comment: A discarded triple string literal comment
push:
- meta_scope: comment.line.discarded.nim
- match: \"\"\"
pop: true
- match: '(?<![\w\x{80}-\x{10FFFF}])(\d[_\d]*((\.[_\d]+([eE][\+\-]?\d[_\d]*)?)|([eE][\+\-]?\d[_\d]*)))(''?([fF](32|64|128))|[fFdD])?'
comment: A float literal
scope: constant.numeric.float.decimal.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(0[xX][0-9A-Fa-f][_0-9A-Fa-f]*)(''?(([iIuUfF](8|16|32|64))|[uUfFdD]))?'
comment: A hexadecimal literal
scope: constant.numeric.integer.hexadecimal.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(0[ocC][0-7][_0-7]*)(''?(([iIuUfF](8|16|32|64))|[uUfFdD]))?'
comment: A base-8 integer literal
scope: constant.numeric.integer.octal.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(0(b|B)[01][_01]*)(''?(([iIuUfF](8|16|32|64))|[uUfFdD]))?'
comment: A base-2 integer literal
scope: constant.numeric.integer.binary.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(\d[_\d]*)(''?(([iIuUfF](8|16|32|64))|[uUfFdD]))?'
comment: A base-10 integer literal
scope: constant.numeric.integer.decimal.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(true|false|inf|nil)(?![\w\x{80}-\x{10FFFF}])'
comment: Language Constants.
scope: constant.language.nim
- match: (?:^|\s+|=)(when|if)\b
comment: Primary branching keywords
captures:
1: keyword.control.primary.nim
push:
- match: (?=:)
captures:
1: control.variable.parameter.nim
pop: true
- include: scope:source.nim
- match: (?:^|\s+|=)(case)\b
comment: Primary branching keyword 'case'
captures:
1: keyword.control.primary.nim
push:
- match: (?=\bof\b)
captures:
1: control.variable.parameter.nim
pop: true
- include: scope:source.nim
- match: (?:^|\s+)(of|else|elif)\b
comment: Secondary branching keywords and their conditions
captures:
1: keyword.control.secondary.nim
push:
- match: (?=:)
captures:
1: control.variable.parameter.nim
pop: true
- include: scope:source.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(await|block|break|continue|do|end|except|finally|raise|return|try|while|yield)(?![\w\x{80}-\x{10FFFF}])'
comment: Keywords that affect program control flow or scope.
scope: keyword.control.nim
- match: '((?<![\w\x{80}-\x{10FFFF}])(and|in|is|isnot|not|notin|or|xor)(?![\w\x{80}-\x{10FFFF}]))'
comment: Keyword boolean operators for expressions.
scope: keyword.operator.boolean.nim
- match: '((?<![\w\x{80}-\x{10FFFF}])(addr|as|atomic|bind|cast|const|converter|defer|discard|distinct|div|enum|export|include|let|mixin|object|of|ptr|ref|shl|shr|static|type|var)(?![\w\x{80}-\x{10FFFF}]))'
comment: Other keywords.
scope: keyword.other.nim
- match: (\b()\b|(=|\+|-|\*|/|<|>|@|\$|~|&|%|!|\?|\^|\.|:|\\)+)
comment: Generic operators for expressions.
scope: keyword.operator.nim
- match: (for)\s+
comment: in keyword in a 'for' loop
captures:
1: keyword.control.nim
push:
- meta_scope: meta.forloop.nim
- match: (?=:)
captures:
1: keyword.control.nim
pop: true
- match: '\ [\w\x{80}-\x{10FFFF},]+\s+(in)\s+'
captures:
1: keyword.control.nim
- include: scope:source.nim
- match: '((import)\s+[\.|\w|\/]+,?)'
comment: Import syntax
captures:
2: keyword.control.nim
- match: '(from)\s+[\/\w]+\s+(?=import)'
captures:
1: keyword.control.nim
- match: (var|let)\s*\(
comment: Destructure syntax
captures:
1: keyword.other.nim
push:
- match: \)
captures:
1: keyword.other.nim
pop: true
- match: '((?<![\w\x{80}-\x{10FFFF}])(generic|interface|lambda|out|shared|with|without)(?![\w\x{80}-\x{10FFFF}]))'
comment: Invalid and unused keywords.
scope: keyword.invalid.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(new|GC_ref|GC_unref|assert|echo|defined|declared|newException|countup|countdown|len|high|low)(?![\w\x{80}-\x{10FFFF}])'
comment: Common functions
scope: keyword.other.common.function.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(((uint|int|float)(8|16|32|64)?)|clong|culong|cchar|cschar|cshort|cint|csize|clonglong|cfloat|cdouble|clongdouble|cuchar|cushort|cuint|culonglong|cstringArray|bool|string|auto|cstring|char|byte|tobject|typedesc|stmt|expr|any|untyped|typed)(?![\w\x{80}-\x{10FFFF}])'
comment: Built-in, concrete types.
scope: storage.type.concrete.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(range|array|seq|tuple|natural|set|ref|ptr|pointer)(?![\w\x{80}-\x{10FFFF}])'
comment: Built-in, generic types.
scope: storage.type.generic.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(proc|iterator|method|template|macro)(?![\w\x{80}-\x{10FFFF}])'
comment: Function types
scope: storage.type.function.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(openarray|varargs|void)(?![\w\x{80}-\x{10FFFF}])'
comment: Special types.
scope: storage.type.generic.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])([A-Z][A-Z0-9_]+)(?![\w\x{80}-\x{10FFFF}])'
comment: Other constants.
scope: support.constant.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])([A-Z]\w+)(?![\w\x{80}-\x{10FFFF}])'
comment: Other types.
scope: support.type.nim
- match: '(?<![\w\x{80}-\x{10FFFF}])(\w+)(?![\w\x{80}-\x{10FFFF}])(?=\()'
comment: Function call.
scope: support.function.any-method.nim
- match: r?\"\"\"
comment: (Raw) Triple Quoted String
push:
- meta_scope: string.quoted.triple.nim
- match: '\"\"\"[^\"]'
pop: true
- match: r\"
comment: Raw Double Quoted String
push:
- meta_scope: string.quoted.double.raw.nim
- match: \"
pop: true
- match: \"\"
- match: \"
comment: Double Quoted String
push:
- meta_scope: string.quoted.double.nim
- match: \"
pop: true
- include: escaped_char
- match: \'
comment: Single quoted character literal
push:
- meta_scope: string.quoted.single.nim
- match: \'
pop: true
- match: \\n
scope: invalid.illegal.character.nim
- include: escaped_char
- match: '([^\''][^\'']+?)'
scope: invalid.illegal.character.nim
- match: '([\w\x{80}-\x{10FFFF}\`]+)\s*(?=\(|\[.+?\]\s*\()'
comment: Call syntax
captures:
1: support.function.any-method.nim
push:
- match: \)
captures:
1: support.function.any-method.nim
pop: true
- include: scope:source.nim
- match: '([\w\x{80}-\x{10FFFF}]+)(?=\s+[\w](?![\w\x{80}-\x{10FFFF}]+((?!\n)\s)+))'
comment: Command syntax
captures:
1: support.function.any-method.nim
- match: '([\w\x{80}-\x{10FFFF}]+)(?=\s+[\"\''\`])'
captures:
1: support.function.any-method.nim
- match: (tmpl(i)?)(?=( (nim|html|xml|js|css|glsl|md))?\"\"\")
comment: tmpl specifier
captures:
1: storage.type.function.nim
2: keyword.operator.nim
escaped_char:
- match: '\\[nN]'
scope: constant.character.escape.newline.nim
- match: '\\[cC]|\\[rR]'
scope: constant.character.escape.carriagereturn.nim
- match: '\\[lL]'
scope: constant.character.escape.linefeed.nim
- match: '\\[fF]'
scope: constant.character.escape.formfeed.nim
- match: '\\[tT]'
scope: constant.character.escape.tabulator.nim
- match: '\\[vV]'
scope: constant.character.escape.verticaltabulator.nim
- match: \\\"
scope: constant.character.escape.double-quote.nim
- match: \\'
scope: constant.character.escape.single-quote.nim
- match: '\\[0-9]+'
scope: constant.character.escape.chardecimalvalue.nim
- match: '\\[aA]'
scope: constant.character.escape.alert.nim
- match: '\\[bB]'
scope: constant.character.escape.backspace.nim
- match: '\\[eE]'
scope: constant.character.escape.escape.nim
- match: '\\[xX][0-9A-Fa-f]{2}'
scope: constant.character.escape.hex.nim
- match: \\\\
scope: constant.character.escape.backslash.nim

1
assets/syntaxes/02_Extra/Nix vendored Submodule

@ -140,7 +140,7 @@ contexts:
push:
- match: '(?=([\])};]|\b(else|then)\b))'
pop: true
- match: '(?=(\s*\}|\"|\binherit\b|\b[a-zA-Z\_][a-zA-Z0-9\_\''\-]*(\s*\.|\s*=[^=])))'
- match: '(?=(\s*\}|\"|\binherit\b|\b[a-zA-Z\_][a-zA-Z0-9\_\''\-]*(\s*\.|\s*=[^=])|\$\{[a-zA-z0-9\_\''\-]+\}(\s*\.|\s*=[^=])))'
push:
- match: '(?=([\])};,]|\b(else|then)\b))'
pop: true
@ -563,7 +563,7 @@ contexts:
pop: true
- include: string-quoted
- include: expression-cont
- match: '([a-zA-Z0-9\.\_\-\+]*(\/[a-zA-Z0-9\.\_\-\+]+)+)'
- match: '(~?[a-zA-Z0-9\.\_\-\+]*(\/[a-zA-Z0-9\.\_\-\+]+)+)'
captures:
0: string.unquoted.path.nix
push:

@ -0,0 +1,219 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: orgmode
file_extensions:
- org
scope: text.orgmode
contexts:
main:
- match: |-
(?x)
^(\*+) # leading stars
\s*([A-Z_]{2,})? # todo keywords
\s*(\[\#[A-Ca-c]\])? # priority
\s*(?=\s+[A-Za-z0-9]+) # expected heading text
comment: Outline headings
captures:
1: punctuation.definition.heading.orgmode
2: keyword.other.todo.orgmode
3: constant.other.priority.orgmode
push:
- meta_scope: markup.heading.orgmode
- meta_content_scope: entity.name.section.orgmode
- match: (?=\s*$\n?)
pop: true
- include: heading-inline
- match: "^-{5,}$"
scope: meta.separator.orgmode
- match: '^\s*([-+]|\s+\*)\s+(.*?)\s+::'
captures:
1: keyword.operator.list.orgmode
2: markup.bold.definition.orgmode
push:
- meta_scope: meta.list.definition.orgmode
- match: $
pop: true
- include: inline
- match: '^\s*?([-+]|\s+\*|\d+[).])'
captures:
1: keyword.operator.list.orgmode
push:
- meta_scope: meta.list.plain.orgmode
- match: $
pop: true
- include: list-inline
- match: (?i)^#\+(BEGIN_(QUOTE|VERSE|CENTER))$
captures:
1: keyword.control.block.orgmode
push:
- meta_scope: markup.quote.orgmode
- match: (?i)^#\+(END_\2)$
captures:
1: keyword.control.block.orgmode
pop: true
- match: "^#[^+].*$"
scope: comment.line.number-sign.orgmode
- match: ^:(PROPERTIES):$
captures:
1: keyword.control.drawer.orgmode
push:
- meta_scope: meta.drawer.properties.orgmode
- match: ^:(END):$
captures:
1: keyword.control.drawer.orgmode
pop: true
- include: properties
- match: ^:(.+):$
captures:
1: keyword.control.drawer.orgmode
push:
- meta_scope: meta.drawer.other.orgmode
- match: ^:(END):$
captures:
1: keyword.control.drawer.orgmode
pop: true
- match: (?i)#\+(BEGIN_LaTeX)$
captures:
1: keyword.control.block.orgmode
push:
- meta_scope: meta.block.latex.orgmode
- match: (?i)#\+(END_LaTeX)$
captures:
1: keyword.control.block.orgmode
pop: true
- include: scope:text.tex.latex
- match: (?i)#\+(BEGIN_HTML)$
captures:
1: keyword.control.block.orgmode
push:
- meta_scope: meta.block.html.orgmode
- match: (?i)#\+(END_HTML)$
captures:
1: keyword.control.block.orgmode
pop: true
- include: scope:text.html.basic
- match: (?i)#\+(BEGIN_SRC)\s+(python)\s*(.*)$
captures:
1: keyword.control.block.orgmode
2: constant.other.language.orgmode
3: string.other.header-args.orgmode
push:
- meta_scope: meta.block.source.python.orgmode
- match: (?i)#\+(END_SRC)$
captures:
1: keyword.control.block.orgmode
pop: true
- include: scope:source.python
- match: (?i)#\+(BEGIN_SRC)\s+(ruby)\s*(.*)$
captures:
1: keyword.control.block.orgmode
2: constant.other.language.orgmode
3: string.other.header-args.orgmode
push:
- meta_scope: meta.block.source.ruby.orgmode
- match: (?i)#\+(END_SRC)$
captures:
1: keyword.control.block.orgmode
pop: true
- include: scope:source.ruby
- match: (?i)#\+(BEGIN_SRC)\s+((?:emacs-)?lisp)\s*(.*)$
captures:
1: keyword.control.block.orgmode
2: constant.other.language.orgmode
3: string.other.header-args.orgmode
push:
- meta_scope: meta.block.source.lisp.orgmode
- match: (?i)#\+(END_SRC)$
captures:
1: keyword.control.block.orgmode
pop: true
- include: scope:source.lisp
- match: (?i)#\+(BEGIN_SRC)\s+(sh)\s*(.*)$
captures:
1: keyword.control.block.orgmode
2: constant.other.language.orgmode
3: string.other.header-args.orgmode
push:
- meta_scope: meta.block.source.shell.orgmode
- match: (?i)#\+(END_SRC)$
captures:
1: keyword.control.block.orgmode
pop: true
- include: scope:source.shell
- match: '(?i)#\+(BEGIN_(SRC|EXAMPLE))(?:\s+([\w-]+)?\s*(.*))?$'
captures:
1: keyword.control.block.orgmode
3: constant.other.language.orgmode
4: string.other.header-args.orgmode
push:
- meta_scope: meta.block.source.other.orgmode
- meta_content_scope: markup.raw.block.orgmode
- match: (?i)#\+(END_\2)$
captures:
1: keyword.control.block.orgmode
pop: true
- match: '#\+(OPTIONS):'
captures:
1: keyword.control.pragma.orgmode
push:
- meta_scope: meta.pragma.options.orgmode
- match: $
pop: true
- match: '([^\s]+):([^\s]+)'
scope: meta.option.orgmode
captures:
1: variable.parameter.option.orgmode
2: string.other.option.orgmode
- match: '#\+(CALL):\s+[A-Za-z-]+(?:\[([^\]]*)\])?\(?'
captures:
1: keyword.control.pragma.orgmode
2: string.other.header-args.orgmode
push:
- meta_scope: meta.pragma.call.orgmode
- match: '\)?([^)]*)$'
captures:
1: string.other.header-args.orgmode
pop: true
- match: (\w+)=
scope: meta.assignment.orgmode
captures:
1: variable.parameter.header-args.orgmode
- match: '^#\+([a-zA-Z_-]+): ?(.*)$'
scope: meta.pragma.orgmode
captures:
1: keyword.control.pragma.orgmode
2: string.unquoted.pragma.orgmode
- include: inline
heading-inline:
- match: ':([^:^\s]*)(?=:)'
scope: meta.keyword.orgmode
captures:
1: string.quoted.keyword.orgmode
- include: inline
inline:
- match: '(?<=^|[.,:;\s])/[^/]+/(?=$|[.,:;\s])'
scope: markup.italic.orgmode
- match: '(?<=^|[.,:;\s])\*[^*]+\*(?=$|[.,:;\s])'
scope: markup.bold.orgmode
- match: '(?<=^|[.,:;\s])_[^_]+_(?=$|[.,:;\s])'
scope: markup.underline.orgmode
- match: '(?<=^|[.,:;\s])([~=]).+?\1(?=$|[.,:;\s])'
scope: markup.raw.inline.orgmode
- match: '\[(?:\[([^\]]*)\])?\[([^\]]*)\]\]'
scope: meta.link.orgmode
captures:
1: markup.underline.link.orgmode
2: string.other.link.orgmode
- match: (?:http|ftp)s?:\/\/\S+
scope: markup.underline.url.orgmode
list-inline:
- match: '\[[ -X]\]'
scope: keyword.operator.checkbox.orgmode
- include: inline
properties:
- match: '^:([A-Za-z_]+):\s(.*)$'
scope: meta.property.orgmode
captures:
1: keyword.control.property.orgmode
2: string.unquoted.propval.orgmode

@ -0,0 +1,71 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: passwd
file_extensions:
- passwd
scope: source.passwd
contexts:
main:
- comment: name
match: ^[^:]+
scope: keyword
- comment: password
match: ":"
push: password
password:
- comment: uid
match: ":"
set: uid
- comment: shadowpassword
match: "[^:]+"
scope: invalid
uid:
- comment: gid
match: ":"
set: gid
- comment: number
match: "[0-9]+"
scope: constant.numeric
gid:
- comment: comment
match: ":"
set: comment
- comment: number
match: "[0-9]+"
scope: constant.language
comment:
- comment: directory
match: ":"
set: directory
- comment: comment
match: "[^:]+"
scope: entity.name
directory:
- comment: shell
match: ":"
set: shell
- comment: directory
match: "[^:]+"
scope: string.unquoted
shell:
- comment: newline
match: "\n"
pop: true
- comment: directory
match: "[^:\n]+"
scope: variable.parameter

@ -147,7 +147,7 @@ contexts:
2: keyword.other.powershell
3: variable.parameter.powershell
attribute:
- match: '(\[)\s*\b(?i)(cmdletbinding|alias|outputtype|parameter|validatenotnull|validatenotnullorempty|validatecount|validateset|allownull|allowemptycollection|allowemptystring|validatescript|validaterange|validatepattern|validatelength)\b'
- match: '(\[)\s*\b(?i)(cmdletbinding|alias|outputtype|parameter|validatenotnull|validatenotnullorempty|validatecount|validateset|allownull|allowemptycollection|allowemptystring|validatescript|validaterange|validatepattern|validatelength|supportswildcards)\b'
captures:
1: punctuation.section.bracket.begin.powershell
2: support.function.attribute.powershell
@ -165,31 +165,11 @@ contexts:
captures:
0: punctuation.section.group.end.powershell
pop: true
- include: variable
- include: variableNoProperty
- include: hashtable
- include: scriptblock
- include: doubleQuotedStringEscapes
- include: doubleQuotedString
- include: type
- include: numericConstant
- include: doubleQuotedString
- include: main
- match: (?i)\b(mandatory|valuefrompipeline|valuefrompipelinebypropertyname|valuefromremainingarguments|position|parametersetname|defaultparametersetname|supportsshouldprocess|supportspaging|positionalbinding|helpuri|confirmimpact|helpmessage)\b(?:\s+)?(=)?
captures:
1: variable.parameter.attribute.powershell
2: keyword.operator.assignment.powershell
- match: (?<!')'
captures:
0: punctuation.definition.string.begin.powershell
push:
- meta_scope: string.quoted.single.powershell
- match: "'(?!')"
captures:
0: punctuation.definition.string.end.powershell
pop: true
- match: "''"
scope: constant.character.escape.powershell
commands:
- match: '(?:(\p{L}|\d|_|-|\\|\:)*\\)?\b(?i:Add|Approve|Assert|Backup|Block|Build|Checkpoint|Clear|Close|Compare|Complete|Compress|Confirm|Connect|Convert|ConvertFrom|ConvertTo|Copy|Debug|Deny|Deploy|Disable|Disconnect|Dismount|Edit|Enable|Enter|Exit|Expand|Export|Find|Format|Get|Grant|Group|Hide|Import|Initialize|Install|Invoke|Join|Limit|Lock|Measure|Merge|Mount|Move|New|Open|Optimize|Out|Ping|Pop|Protect|Publish|Push|Read|Receive|Redo|Register|Remove|Rename|Repair|Request|Reset|Resize|Resolve|Restart|Restore|Resume|Revoke|Save|Search|Select|Send|Set|Show|Skip|Split|Start|Step|Stop|Submit|Suspend|Switch|Sync|Test|Trace|Unblock|Undo|Uninstall|Unlock|Unprotect|Unpublish|Unregister|Update|Use|Wait|Watch|Write)\-.+?(?:\.(?i:exe|cmd|bat|ps1))?\b'
comment: "Verb-Noun pattern:"
@ -242,14 +222,14 @@ contexts:
pop: true
- match: '(?i)\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,64}\b'
- include: variableNoProperty
- include: variable
- include: doubleQuotedStringEscapes
- include: interpolation
- match: '`\s*$'
scope: keyword.other.powershell
doubleQuotedStringEscapes:
- match: '`[0abnfrvt"''$`]'
- match: '`[`0abefnrtv"''$]'
scope: constant.character.escape.powershell
- include: unicodeEscape
- match: '""'
scope: constant.character.escape.powershell
function:
@ -362,6 +342,11 @@ contexts:
- match: '(?!\d+|\.)(?:\p{L}|\p{N}|\.)+'
scope: storage.type.powershell
- include: main
unicodeEscape:
- match: '`u\{(?:(?:10)?([0-9a-fA-F]){1,4}|0?\g<1>{1,5})}'
scope: constant.character.escape.powershell
- match: '`u(?:\{[0-9a-fA-F]{,6}.)?'
scope: invalid.character.escape.powershell
variable:
- match: (\$)(?i:(False|Null|True))\b
comment: These are special constants.
@ -374,13 +359,13 @@ contexts:
0: support.constant.variable.powershell
1: punctuation.definition.variable.powershell
3: variable.other.member.powershell
- match: '(\$)(?i:(\$|\^|\?|_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This))((?:\.(?:\p{L}|\d|_)+)*\b)?\b'
- match: '(\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\b)((?:\.(?:\p{L}|\d|_)+)*\b)?'
comment: Automatic variables are not constants, but they are read-only. In monokai (default) color schema support.variable doesn't have color, so we use constant.
captures:
0: support.constant.automatic.powershell
0: support.variable.automatic.powershell
1: punctuation.definition.variable.powershell
3: variable.other.member.powershell
- match: '(\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|ProgressPreference|PsCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|VerbosePreference|WarningPreference|WhatIfPreference))((?:\.(?:\p{L}|\d|_)+)*\b)?\b'
- match: '(\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))((?:\.(?:\p{L}|\d|_)+)*\b)?\b'
comment: Style preference variables as language variables so that they stand out.
captures:
0: variable.language.powershell
@ -426,19 +411,19 @@ contexts:
0: support.constant.variable.powershell
1: punctuation.definition.variable.powershell
3: variable.other.member.powershell
- match: (\$)(?i:(\$|\^|\?|_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This))\b
- match: '(\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\b)'
comment: Automatic variables are not constants, but they are read-only...
captures:
0: support.variable.automatic.powershell
1: punctuation.definition.variable.powershell
3: variable.other.member.powershell
- match: (\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|ProgressPreference|PsCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|VerbosePreference|WarningPreference|WhatIfPreference))\b
- match: (\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))\b
comment: Style preference variables as language variables so that they stand out.
captures:
0: variable.language.powershell
1: punctuation.definition.variable.powershell
3: variable.other.member.powershell
- match: '(?i:(\$|@)(global|local|private|script|using|workflow):((?:\p{L}|\d|_)+))'
- match: '(?i:(\$)(global|local|private|script|using|workflow):((?:\p{L}|\d|_)+))'
captures:
0: variable.other.readwrite.powershell
1: punctuation.definition.variable.powershell

@ -0,0 +1,21 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: resolv
file_extensions:
- resolv.conf
scope: source.resolv
contexts:
main:
- scope: comment.line.number-sign
match: \#.*
comment: comment
- comment: configuration
match: "(nameserver|domain|search|sortlist|options)"
scope: keyword.control
- comment: options
match: "(debug|ndots|timeout|attempts|rotate|no-check-names|inet6|ip6-bytestring|ip6-dotint|no-ip6-dotint|edns0|single-request|single-request-reopen|no-tld-query|use-vc|no-reload)"
scope: entity.name

@ -52,3 +52,6 @@ contexts:
- meta_scope: keyword.control.robot
- match: '($|\||\s{2,})'
pop: true
- match: (?i)^\s+(Given|When|and|but|Then)
comment: BDD keywords
scope: string.robot.bdd

1
assets/syntaxes/02_Extra/SLS vendored Submodule

@ -0,0 +1,149 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: Verilog
file_extensions:
- v
- V
scope: source.verilog
contexts:
main:
- match: '^\s*(module|function|primitive)\s+\b([a-zA-Z_][a-zA-Z0-9_]*)\b'
scope: meta.entity.module.verilog
captures:
1: storage.type.verilog
2: entity.name.type.class.verilog
- match: '^\s*(?!else)(?!begin)([a-zA-Z_][a-zA-Z0-9_]*)\s+([a-zA-Z_][a-zA-Z0-9_]*)\s*(\()'
scope: meta.definition.verilog
captures:
1: entity.name.type.class.verilog
2: entity.name.type.instance.verilog
3: keyword.operator.parenthesis.round.verilog
- match: '^\s*(?!else)(?!begin)([a-zA-Z_][a-zA-Z0-9_]*)\s+([#])(\()([ ._+`,a-zA-Z0-9]+)(\))\s+([a-zA-Z_][a-zA-Z0-9_]*)\s*(\()'
scope: meta.definition.withparameter.verilog
captures:
1: entity.name.type.class.verilog
2: keyword.other.verilog
3: keyword.operator.parenthesis.round.verilog
4: keyword.other.verilog
5: keyword.operator.parenthesis.round.verilog
6: entity.name.type.instance.verilog
7: keyword.operator.parenthesis.round.verilog
- match: '^\s*\b(?!else)(?!begin)([a-zA-Z_][a-zA-Z0-9_]*)\b\s+([#])'
scope: meta.definition.withparameter.verilog
captures:
1: entity.name.type.class.verilog
2: keyword.other.verilog
- match: '^\s*(defparam)\s+([a-zA-Z_][a-zA-Z0-9_]*)(.[a-zA-Z_][a-zA-Z0-9_]*)\s*(=)'
scope: meta.definition.defparam.verilog
captures:
1: keyword.other.verilog
2: entity.name.type.instance.verilog
3: meta.module.parameters.verilog
4: keyword.other.verilog
- match: \b(automatic|cell|config|deassign|defparam|design|disable|edge|endconfig|endgenerate|endspecify|endtable|endtask|event|generate|genvar|ifnone|incdir|include|instance|liblist|library|localparam|macromodule|negedge|noshowcancelled|posedge|pulsestyle_onevent|pulsestyle_ondetect|real|realtime|scalared|showcancelled|specify|specparam|table|task|time|use|vectored)\b
scope: keyword.other.verilog
- match: "(#[0-9]+)"
scope: keyword.delay.verilog
- match: \b(initial|always|wait|force|release|assign)\b
scope: keyword.control.verilog
- match: \b(begin|end|fork|join)\b
scope: keyword.other.verilog
- match: \b(forever|repeat|while|for|if|else|case|casex|casez|default|endcase)\b
scope: keyword.control.verilog
- match: '^\s*(`include)\s+(["<].*[">])'
scope: meta.include.verilog
captures:
1: meta.preprocessor.verilog
2: entity.name.type.include.verilog
- match: '^\s*(`ifdef|`ifndef|`undef|`define)\s+([a-zA-Z_][a-zA-Z0-9_]*)\b'
scope: meta.preprocessor.ifdef.verilog
captures:
1: meta.preprocessor.verilog
2: constant.other.define.verilog
- match: '`(celldefine|default_nettype|define|else|elsif|endcelldefine|endif|ifdef|ifndef|include|line|nounconnected_drive|resetall|timescale|unconnected_drive|undef)\b'
scope: meta.preprocessor.verilog
- match: "[.][_a-zA-Z0-9]+"
scope: meta.module.parameters.verilog
- match: '`\b([a-zA-Z_][a-zA-Z0-9_]*)\b'
scope: constant.other.define.verilog
- include: comments
- match: \b(endmodule|endfunction|endprimitive)\b
scope: storage.type.verilog
- match: '^\s*\b([a-zA-Z_][a-zA-Z0-9_]*)\b\s*(:)\s*'
scope: meta.case.verilog
captures:
1: entity.name.state.verilog
2: keyword.operator.bitwise.verilog
- include: all-types
- match: (==|===|!=|!==|<=|>=|<|>)
scope: keyword.operator.comparison.verilog
- match: (\-|\+|\*|\/|%)
scope: keyword.operator.arithmetic.verilog
- match: (!|&&|\|\|)
scope: keyword.operator.logical.verilog
- match: (&|\||\^|~|<<|>>|\?|:)
scope: keyword.operator.bitwise.verilog
- match: "({|})"
scope: keyword.operator.parenthesis.curly.verilog
- match: (\(|\))
scope: keyword.operator.parenthesis.round.verilog
- match: '(\[|\])'
scope: keyword.operator.parenthesis.square.verilog
- match: "([;,])"
scope: keyword.delimiter.verilog
- match: (#|@|=)
scope: keyword.other.verilog
- match: '\b(output|input|inout|and|nand|nor|or|xor|xnor|buf|not|bufif[01]|notif[01]|r?[npc]mos|tran|r?tranif[01]|pullup|pulldown)\b'
scope: support.type.verilog
- match: '((\b\d+)?''s?([bB]\s*(([0-1_xXzZ?]+)|(`[A-Z]+[_0-9a-zA-Z]*))|[oO]\s*(([0-7_xXzZ?]+)|(`[A-Z]+[_0-9a-zA-Z]*))|[dD]\s*(([0-9_xXzZ?]+)|(`[A-Z]+[_0-9a-zA-Z]*))|[hH]\s*(([0-9a-fA-F_xXzZ?]+)|(`[A-Z]+[_0-9a-zA-Z]*)))((e|E)(\+|-)?[0-9]+)?\b)|(\b\d+\b)'
scope: constant.numeric.verilog
- include: strings
- match: '\$\b([a-zA-Z_][a-zA-Z0-9_]*)\b'
scope: support.function.verilog
all-types:
- include: storage-type-verilog
- include: storage-modifier-verilog
comments:
- match: /\*
captures:
0: punctuation.definition.comment.verilog
push:
- meta_scope: comment.block.verilog
- match: \*/
captures:
0: punctuation.definition.comment.verilog
pop: true
- match: (//).*$\n?
scope: comment.line.double-slash.verilog
captures:
1: punctuation.definition.comment.verilog
storage-modifier-verilog:
- match: '\b(signed|unsigned|small|medium|large|supply[01]|strong[01]|pull[01]|weak[01]|highz[01])\b'
scope: storage.modifier.verilog
storage-type-verilog:
- match: '\b(wire|tri|tri[01]|supply[01]|wand|triand|wor|trior|trireg|reg|parameter|integer)\b'
scope: storage.type.verilog
strings:
- match: '"'
captures:
0: punctuation.definition.string.begin.verilog
push:
- meta_scope: string.quoted.double.verilog
- match: '"'
captures:
0: punctuation.definition.string.end.verilog
pop: true
- match: \\.
scope: constant.character.escape.verilog
- match: "'"
captures:
0: punctuation.definition.string.begin.verilog
push:
- meta_scope: string.quoted.single.verilog
- match: "'"
captures:
0: punctuation.definition.string.end.verilog
pop: true
- match: \\.
scope: constant.character.escape.verilog

1
assets/syntaxes/02_Extra/Vue vendored Submodule

@ -0,0 +1,19 @@
%YAML 1.2
---
# http://www.sublimetext.com/docs/3/syntax.html
name: requirements.txt
file_extensions:
- requirements.txt
scope: source.requirementstxt
contexts:
main:
- match: (#).*$\n?
scope: comment.line.requirementstxt
captures:
1: punctuation.definition.comment.requirementstxt
- match: '(?i)^[a-z0-9_\-\.]+'
scope: string.package_name.requirementstxt
- match: (?i)==|<|<=|>=|>
scope: keyword.operator.logical.punctuation.requirementstxt
- match: '(?i)\d+\.[\da-z\-_\.]*'
scope: constant.numeric.verions.requirementstxt

@ -25,3 +25,7 @@ contexts:
scope: entity.other.attribute-name.show-nonprintable.escape
- match: "␈"
scope: entity.other.attribute-name.show-nonprintable.backspace
- match: "\\\\x[A-Z0-9][A-Z0-9]"
scope: comment.block.show-nonprintable.backspace
- match: "\\\\u\\{[a-z0-9]+\\}"
scope: comment.block.show-nonprintable.backspace

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