two-face
Extra syntax and theme definitions for syntect
0.5.2+bat-0.26.1
6.3M downloads/mo
#4024 most downloaded on crates.io
source
What this package is like to depend on
Last release 16 days ago
07 Aug 2026
Release timing varies
gaps range from 2 weeks to 9 months
Most releases are documented
notes for 11 of 13 stable releases
Nothing withdrawn
no release was ever pulled
3 years old
14 releases · first in 2023
5 releases in the last 12 months
see the full history below
Release timeline
14 releases · Jul 2023 to Aug 2026Releases
latest 14-
0.5.2+bat-0.26.107 Aug 2026Release notes
Open source →Version 0.5.2+bat-0.26.1 | 2026-08-07
Just some documentation improvements and a new repo home on codeberg
Deps
- Update dependencies #177
Docs
- Switch to a better code example in
EmbeddedThemeNamedocs #160 - Migrate the repo to codeberg #162 #163 #164 #165 #166
- Cleanup README / landing page #168 #169 #170 #171 #173 #174
- Indicate
bat's version in our version metadata #172
Internal
Release notes
Open source →Just some documentation improvements and a new repo home on codeberg
Deps
- Update dependencies #177
Docs
- Switch to a better code example in
EmbeddedThemeNamedocs #160 - Migrate the repo to codeberg #162 #163 #164 #165 #166
- Cleanup README / landing page #168 #169 #170 #171 #173 #174
- Indicate
bat's version in our version metadata #172
Internal
-
0.5.125 Dec 2025Release notes
Open source → -
0.5.025 Dec 2025Release notes
Open source →Version 0.5.0 | 2025-12-25
This update matches
bat's recent 0.26.1 release 🎉Breaking Changes
- Remove deprecated APIs #148
- The
Visual Studio Dark+theme #155 two_face::acknowledgement_url()which was moved totwo_face::acknowledgement::url()
- The
Features
- Update to match
[email protected]#91 #149- Added
debsources,GDScript,Idris,Odin,Typst,VHDLsyntaxes - Added support for Lean 4 to the
Leansyntax - Added
Catppuccin's frappe, latte, macchiato and mocha themes - Removed the
Visual Studio Dark+theme
- Added
Deps
Docs
Release notes
Open source →This update matches
bat's recent 0.26.1 release :tada:Breaking Changes
- Remove deprecated APIs #148
- The
Visual Studio Dark+theme #155 two_face::acknowledgement_url()which was moved totwo_face::acknowledgement::url()
- The
Features
- Update to match
[email protected]#91 #149- Added
debsources,GDScript,Idris,Odin,Typst,VHDLsyntaxes - Added support for Lean 4 to the
Leansyntax - Added
Catppuccin's frappe, latte, macchiato and mocha themes - Removed the
Visual Studio Dark+theme
- Added
Deps
- Update outdated dependencies #150 #153
Docs
- Flesh out some acknowledgments docs #151
- Miscellaneous cleanup #152
- Update motto #154
- Tidy up landing page and license docs #156
- Remove deprecated APIs #148
-
0.5.0-rc103 Jun 2025 pre-releaseNothing published for this version
-
0.4.509 Dec 2025Release notes
Open source →Version 0.4.5 | 2025-12-08
Just a couple of deprecations in preparation for the upcoming
0.5.0release :)Refactor
- Move
two_face::acknowledgement_url()totwo_face::acknowledgement::url()#143
Docs
- Deprecate
EmbeddedThemeName::VisualStudioDarkPlusfor removal in the next release #144
Release notes
Open source →Just a couple of deprecations in preparation for the upcoming
0.5.0releaseRefactor
- Move
two_face::acknowledgement_url()totwo_face::acknowledgement::url()#143
Docs
- Deprecate
EmbeddedThemeName::VisualStudioDarkPlusfor removal in the next release #144
- Move
-
0.4.428 Sep 2025Release notes
Open source →This update includes the underlying update to
[email protected]which adds
support forLiveScriptandSasswhen using thefancy-regexbackend.Deps
- Update outdated dependencies #131
Internal
- Depend on
serdeandserde_deriveseparately #107
Release notes
Open source →This update includes the underlying update to
[email protected]which adds support forLiveScriptandSasswhen using thefancy-regexbackend.Deps
- Update outdated dependencies #131
Internal
- Depend on
serdeandserde_deriveseparately #107
-
0.4.305 Feb 2025Release notes
Open source →Fixes builds for dependents that use set
#[cfg(fuzzing)]Fix
- Fix external
#[cfg(fuzzing)]builds (#61)
Release notes
Open source →Fixes builds for dependents that set
#[cfg(fuzzing)]Fix
- Fix external
#[cfg(fuzzing)]builds (#61)
- Fix external
-
0.4.226 Jan 2025Release notes
Open source →Release notes
Open source →Just a small docs / internal changes update
Deps
- Update outdated dependencies #54
Docs
- Sync docs with README tables #51
- Bump our MSRV down to 1.65.0 #55
Internal
- Bump codecov CI action #52
- Slim down files
included in crates.io uploads #53 - Remove dead internal code #56
-
0.4.119 Jan 2025Release notes
Open source →The headline of this release is our update to match
bat's 0.25.0 release which included the addition of several syntaxes along with the usual changesFeatures
- Update to match
bat's 0.25.0 release #49- Includes the addition of CFML (ColdFusion Markup Language), NSIS (Nullsoft
Scriptable Install System), and WGSL (WebGPU Shading Language) syntaxes
- Includes the addition of CFML (ColdFusion Markup Language), NSIS (Nullsoft
Docs
- Switch README codeblock lang from cmd to console #33
- Use a test to back up the statement on unused assets being stripped #30 #31
- Cleanup README tables #29
- Clarify the MIT license for GitHub #22
Internal
- Switch the
cargo-xtaskto internally detect the active regex backend instead
of explicitly being passed #38 #48 - Several CI action version bumps #17 #23 #24 #25 #26 #40 #41 #42 #45
- Update dependencies #35 #44
- Allow automatically generating syntect test metadata #37 #43
- Test embedded acknowledgements compared to full listing #32
- Add a fuzzer to help ensure size optimization equality #19 #21
- Placate
clippy#20 - Commit our
Cargo.lockfile to help ensurecargo xtask gen -yis stable #18
Release notes
Open source →Features
- Update to match
bat's 0.25.0 release #49- Includes the addition of CFML (ColdFusion Markup Language), NSIS (Nullsoft Scriptable Install System), and WGSL (WebGPU Shading Language) syntaxes
Docs
- Switch README codeblock lang from cmd to console #33
- Use a test to back up the statement on unused assets being stripped #30 #31
- Cleanup README tables #29
- Clarify the MIT license for GitHub #22
Internal
- Switch the
cargo-xtaskto internally detect the active regex backend instead of explicitly being passed #38 #48 - Several CI action version bumps #17 #23 #24 #25 #26 #40 #41 #42 #45
- Update dependencies #35 #44
- Allow automatically generating syntect test metadata #37 #43
- Test embedded acknowledgements compared to full listing #32
- Add a fuzzer to help ensure size optimization equality #19 #21
- Placate
clippy#20 - Commit our
Cargo.lockfile to help ensurecargo xtask gen -yis stable #18
- Update to match
-
0.4.027 Apr 2024Release notes
Open source →Breaking Changes
- Renamed
EmbeddedThemeName::SubmlimeSnazzy->EmbeddedThemeName::SublimeSnazzy
Features
- Our
syntectdependency is now re-exported undertwo_face::re_exports::syntect - New
syntect-default-onig/syntect-default-fancyfeatures toggle on the underlyingdefault-onig/default-fancyfeatures making the syntect re-export decently useful
Docs
- Both the README and docs landing page got an overhaul
- The
thememodule got some TLC including a demo of all of the embedded themes - We now have relevant categories in our
Cargo.toml - Our feature flags are now documented in a way that lib.rs understands
Internal
- Code coverage is now tracked on codecov.io
- Dependabot now handles updating our CI actions
- The
unstablefeature flag was removed now thatsyntect-default-onigfills the same purpose in an official capacity - The specific markdown acknowledgement format was changed to be more succinct
- We now support applying patches on top of those provided with
batincluding an initial demo stripping comments from Markdown's regexes
- Renamed
-
0.3.031 Aug 2023Release notes
Open source →Only a couple of very small breaking changes:
- The embedded theme set now includes all of syntect's default themes instead of
just bat's - The themes returned by
EmbeddedLazyThemeSet::theme_names()are now
alphabetized
Release notes
Open source →Only a couple of very small breaking changes:
- The embedded theme set now includes all of syntect's default themes instead of just bat's
- The themes returned by
EmbeddedLazyThemeSet::theme_names()are now alphabetized
- The embedded theme set now includes all of syntect's default themes instead of
-
0.2.013 Aug 2023Release notes
Open source →Feature Flags
There are a couple of changes around feature flags:
- All the feature flags revolving around limited which embedded assets get
pulled in have been ripped out. Luckily the linker is smart enough to strip
out these unused assets which makes things a lot simpler - There are new features to indicate which regex implementation you're using
withsyntect. Some syntaxes use features that are only provided byonig
and notfancy-regex, so matchingtwo-faceandsyntect's implementation
keeps regex compilation infallible
Acknowledgments
Acknowledgments now includes the full listing for all syntaxes and themes
regardless of what is used. There are still individual methods to distinquish
which acknowledgments are for what thoughSyntaxes
The
two_face::syntax::extra()function is now
two_face::syntax::extra_no_newlines()andtwo_face::extra::extra_newlines()
has been added. This mirrorssyntect'sload_defaults_nonewlines()and
load_defaults_newlines()Themes
two_face::theme::extra()now includes anEmbeddedLazyThemeSet. This is just
a wrapper around aLazyThemeSettailored toward knowing all of the embedded
themesRelease notes
Open source →Feature Flags
There are a couple of changes around feature flags:
- All the feature flags revolving around limited which embedded assets get pulled in have been ripped out. Luckily the linker is smart enough to strip out these unused assets which makes things a lot simpler
- There are new features to indicate which regex implementation you're using
with
syntect. Some syntaxes use features that are only provided byonigand notfancy-regex, so matchingtwo-faceandsyntect's implementation keeps regex compilation infallible
Acknowledgments
Acknowledgments now includes the full listing for all syntaxes and themes regardless of what is used. There are still individual methods to distinguish which acknowledgments are for what though
Syntaxes
The
two_face::syntax::extra()function is nowtwo_face::syntax::extra_no_newlines()andtwo_face::extra::extra_newlines()has been added. This mirrorssyntect'sload_defaults_nonewlines()andload_defaults_newlines()Themes
two_face::theme::extra()now includes anEmbeddedLazyThemeSet. This is just a wrapper around aLazyThemeSettailored toward knowing all of the embedded themes - All the feature flags revolving around limited which embedded assets get
-
0.1.104 Jul 2023Nothing published for this version
-
0.1.004 Jul 2023Nothing published for this version