summaryrefslogtreecommitdiff
path: root/t/t4018/css-short-selector-list
diff options
context:
space:
mode:
authorLibravatar William Duclot <william.duclot@ensimag.grenoble-inp.fr>2016-06-03 14:32:26 +0200
committerLibravatar Junio C Hamano <gitster@pobox.com>2016-06-03 14:45:56 -0700
commit0719f3eecd1234f6331cab980088239207e93335 (patch)
treebb3a1a01ac9412ef6c35bf8337b278a221e96f14 /t/t4018/css-short-selector-list
parentMore topics for 2.8.4 (diff)
downloadtgif-0719f3eecd1234f6331cab980088239207e93335.tar.xz
userdiff: add built-in pattern for CSS
CSS is widely used, motivating it being included as a built-in pattern. It must be noted that the word_regex for CSS (i.e. the regex defining what is a word in the language) does not consider '.' and '#' characters (in CSS selectors) to be part of the word. This behavior is documented by the test t/t4018/css-rule. The logic behind this behavior is the following: identifiers in CSS selectors are identifiers in a HTML/XML document. Therefore, the '.'/'#' character are not part of the identifier, but an indicator of the nature of the identifier in HTML/XML (class or id). Diffing ".class1" and ".class2" must show that the class name is changed, but we still are selecting a class. Logic behind the "pattern" regex is: 1. reject lines ending with a colon/semicolon (properties) 2. if a line begins with a name in column 1, pick the whole line Credits to Johannes Sixt (j6t@kdbg.org) for the pattern regex and most of the tests. Signed-off-by: William Duclot <william.duclot@ensimag.grenoble-inp.fr> Signed-off-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr> Reviewed-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4018/css-short-selector-list')
-rw-r--r--t/t4018/css-short-selector-list4
1 files changed, 4 insertions, 0 deletions
diff --git a/t/t4018/css-short-selector-list b/t/t4018/css-short-selector-list
new file mode 100644
index 0000000000..6a0bdee336
--- /dev/null
+++ b/t/t4018/css-short-selector-list
@@ -0,0 +1,4 @@
+label.control, div ul#RIGHT {
+ margin-top: 10px!important;
+ border : 10px ChangeMe #C6C6C6;
+}