diff --git a/CHANGELOG.md b/CHANGELOG.md index d3a98bb5..af46e011 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ - Only print themes hint in interactive mode (`bat --list-themes`), see #1439 (@rsteube) - Make ./tests/syntax-tests/regression_test.sh work on recent versions of macOS, see #1443 (@Enselic) - VimL syntax highlighting fix, see #1450 (@esensar) +- Print an 'Invalid syntax theme settings' error message if a custom theme is broken, see #614 (@Enselic) - Ignore PAGER=most with a warning to stderr, but allow override with BAT_PAGER or --config, see #1063 (@Enselic) ## Other diff --git a/src/assets.rs b/src/assets.rs index 5e0c0644..55b4941e 100644 --- a/src/assets.rs +++ b/src/assets.rs @@ -38,9 +38,16 @@ impl HighlightingAssets { }; let theme_dir = source_dir.join("themes"); - - let res = theme_set.add_from_folder(&theme_dir); - if res.is_err() { + if theme_dir.exists() { + let res = theme_set.add_from_folder(&theme_dir); + if let Err(err) = res { + println!( + "Failed to load one or more themes from '{}' (reason: '{}')", + theme_dir.to_string_lossy(), + err, + ); + } + } else { println!( "No themes were found in '{}', using the default set", theme_dir.to_string_lossy()