@@ -1117,7 +1117,9 @@ Single Line
11171117────────────────────────────────────────────────────────────────────────────────
11181118",
11191119 )
1120− .stderr("\x1b[33m[bat warning]\x1b[0m: Style 'rule' is a subset of style 'grid', 'rule' will not be visible.\n");
1120+ .stderr(
1121+ "\x1b[33m[bat warning]\x1b[0m: Style 'rule' is a subset of style 'grid', 'rule' will not be visible.\n",
1122+ );
11211123}
11221124
11231125#[cfg(target_os = "linux")]
@@ -1359,6 +1361,45 @@ fn ignored_suffix_arg() {
13591361 .stderr("");
13601362}
13611363
1364+#[test]
1365+fn all_global_git_config_locations_syntax_mapping_work() {
1366+ let fake_home = Path::new(EXAMPLES_DIR).join("git").canonicalize().unwrap();
1367+ let expected = "\u{1b}[38;5;231m[\u{1b}[0m\u{1b}[38;5;149muser\u{1b}[0m\u{1b}[38;5;231m]\u{1b}[0m
1368+\u{1b}[38;5;231m \u{1b}[0m\u{1b}[38;5;231memail\u{1b}[0m\u{1b}[38;5;231m \u{1b}[0m\u{1b}[38;5;203m=\u{1b}[0m\u{1b}[38;5;231m \u{1b}[0m\u{1b}[38;5;186mfoo@bar.net\u{1b}[0m
1369+\u{1b}[38;5;231m \u{1b}[0m\u{1b}[38;5;231mname\u{1b}[0m\u{1b}[38;5;231m \u{1b}[0m\u{1b}[38;5;203m=\u{1b}[0m\u{1b}[38;5;231m \u{1b}[0m\u{1b}[38;5;186mfoobar\u{1b}[0m
1370+";
1371+
1372+ bat()
1373+ .env("XDG_CONFIG_HOME", fake_home.join(".config").as_os_str())
1374+ .arg("-f")
1375+ .arg("-p")
1376+ .arg("git/.config/git/config")
1377+ .assert()
1378+ .success()
1379+ .stdout(expected)
1380+ .stderr("");
1381+
1382+ bat()
1383+ .env("HOME", fake_home.as_os_str())
1384+ .arg("-f")
1385+ .arg("-p")
1386+ .arg("git/.config/git/config")
1387+ .assert()
1388+ .success()
1389+ .stdout(expected)
1390+ .stderr("");
1391+
1392+ bat()
1393+ .env("HOME", fake_home.as_os_str())
1394+ .arg("-f")
1395+ .arg("-p")
1396+ .arg("git/.gitconfig")
1397+ .assert()
1398+ .success()
1399+ .stdout(expected)
1400+ .stderr("");
1401+}
1402+
13621403#[test]
13631404fn acknowledgements() {
13641405 bat()