mirror of
https://github.com/sharkdp/bat.git
synced 2024-11-21 23:33:26 +01:00
Reverse precedence of syntax mappings specified on CLI
This commit is contained in:
parent
15ab4478c9
commit
e4d637a3d8
@ -16,8 +16,6 @@
|
||||
- Update Arch Linux package URL in README files #2779 (@brunobell)
|
||||
- Update and improve `zsh` completion, see #2772 (@okapia)
|
||||
- More extensible syntax mapping mechanism #2755 (@cyqsimon)
|
||||
- [BREAKING] Precedence order of user-defined syntax mappings (using `-m/--map-syntax`) has been reversed
|
||||
- `-m '*.foo:alpha' -m '*.foo:bravo'` now maps `bar.foo` to `alpha`
|
||||
|
||||
## Syntaxes
|
||||
|
||||
|
@ -130,7 +130,9 @@ impl App {
|
||||
}
|
||||
|
||||
if let Some(values) = self.matches.get_many::<String>("map-syntax") {
|
||||
for from_to in values {
|
||||
// later args take precedence over earlier ones, hence `.rev()`
|
||||
// see: https://github.com/sharkdp/bat/pull/2755#discussion_r1456416875
|
||||
for from_to in values.rev() {
|
||||
let parts: Vec<_> = from_to.split(':').collect();
|
||||
|
||||
if parts.len() != 2 {
|
||||
|
@ -41,6 +41,8 @@ pub enum MappingTarget<'a> {
|
||||
#[derive(Debug, Clone, Default)]
|
||||
pub struct SyntaxMapping<'a> {
|
||||
/// User-defined mappings at run time.
|
||||
///
|
||||
/// Rules in front have precedence.
|
||||
custom_mappings: Vec<(GlobMatcher, MappingTarget<'a>)>,
|
||||
pub(crate) ignored_suffixes: IgnoredSuffixes<'a>,
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user