Merge branch 'sb/userdiff-dts'
Device-tree files learned their own userdiff patterns. * sb/userdiff-dts: userdiff: add a builtin pattern for dts files
This commit is contained in:
commit
d49c2c3466
@ -810,6 +810,8 @@ patterns are available:
|
||||
|
||||
- `css` suitable for cascading style sheets.
|
||||
|
||||
- `dts` suitable for devicetree (DTS) files.
|
||||
|
||||
- `fortran` suitable for source code in the Fortran language.
|
||||
|
||||
- `fountain` suitable for Fountain documents.
|
||||
|
@ -31,6 +31,7 @@ diffpatterns="
|
||||
cpp
|
||||
csharp
|
||||
css
|
||||
dts
|
||||
fortran
|
||||
fountain
|
||||
golang
|
||||
|
9
t/t4018/dts-labels
Normal file
9
t/t4018/dts-labels
Normal file
@ -0,0 +1,9 @@
|
||||
/ {
|
||||
label_1: node1@ff00 {
|
||||
label2: RIGHT {
|
||||
vendor,some-property;
|
||||
|
||||
ChangeMe = <0x45-30>;
|
||||
};
|
||||
};
|
||||
};
|
8
t/t4018/dts-node-unitless
Normal file
8
t/t4018/dts-node-unitless
Normal file
@ -0,0 +1,8 @@
|
||||
/ {
|
||||
label_1: node1 {
|
||||
RIGHT {
|
||||
prop-array = <1>, <4>;
|
||||
ChangeMe = <0xffeedd00>;
|
||||
};
|
||||
};
|
||||
};
|
8
t/t4018/dts-nodes
Normal file
8
t/t4018/dts-nodes
Normal file
@ -0,0 +1,8 @@
|
||||
/ {
|
||||
label_1: node1@ff00 {
|
||||
RIGHT@deadf00,4000 {
|
||||
#size-cells = <1>;
|
||||
ChangeMe = <0xffeedd00>;
|
||||
};
|
||||
};
|
||||
};
|
8
t/t4018/dts-nodes-comment1
Normal file
8
t/t4018/dts-nodes-comment1
Normal file
@ -0,0 +1,8 @@
|
||||
/ {
|
||||
label_1: node1@ff00 {
|
||||
RIGHT@deadf00,4000 /* &a comment */ {
|
||||
#size-cells = <1>;
|
||||
ChangeMe = <0xffeedd00>;
|
||||
};
|
||||
};
|
||||
};
|
8
t/t4018/dts-nodes-comment2
Normal file
8
t/t4018/dts-nodes-comment2
Normal file
@ -0,0 +1,8 @@
|
||||
/ {
|
||||
label_1: node1@ff00 {
|
||||
RIGHT@deadf00,4000 { /* a trailing comment */
|
||||
#size-cells = <1>;
|
||||
ChangeMe = <0xffeedd00>;
|
||||
};
|
||||
};
|
||||
};
|
9
t/t4018/dts-reference
Normal file
9
t/t4018/dts-reference
Normal file
@ -0,0 +1,9 @@
|
||||
&label_1 {
|
||||
TEST = <455>;
|
||||
};
|
||||
|
||||
&RIGHT {
|
||||
vendor,some-property;
|
||||
|
||||
ChangeMe = <0x45-30>;
|
||||
};
|
5
t/t4018/dts-root
Normal file
5
t/t4018/dts-root
Normal file
@ -0,0 +1,5 @@
|
||||
/RIGHT { /* Technically just supposed to be a slash */
|
||||
#size-cells = <1>;
|
||||
|
||||
ChangeMe = <0xffeedd00>;
|
||||
};
|
@ -303,6 +303,7 @@ test_language_driver bibtex
|
||||
test_language_driver cpp
|
||||
test_language_driver csharp
|
||||
test_language_driver css
|
||||
test_language_driver dts
|
||||
test_language_driver fortran
|
||||
test_language_driver html
|
||||
test_language_driver java
|
||||
|
37
t/t4034/dts/expect
Normal file
37
t/t4034/dts/expect
Normal file
@ -0,0 +1,37 @@
|
||||
<BOLD>diff --git a/pre b/post<RESET>
|
||||
<BOLD>index b6a9051..7803aee 100644<RESET>
|
||||
<BOLD>--- a/pre<RESET>
|
||||
<BOLD>+++ b/post<RESET>
|
||||
<CYAN>@@ -1,32 +1,32 @@<RESET>
|
||||
/ {<RESET>
|
||||
<RED>this_handle<RESET><GREEN>HANDLE_2<RESET>: <RED>node<RESET><GREEN>new-node<RESET>@<RED>f00<RESET><GREEN>eeda<RESET> {
|
||||
compatible = "<RED>mydev<RESET><GREEN>vendor,compat<RESET>";
|
||||
string-prop = <RED>start<RESET><GREEN>end<RESET>: "hello <RED>world!<RESET><GREEN>world?<RESET>" <RED>end<RESET><GREEN>start<RESET>: ;
|
||||
<RED>#size-cells<RESET><GREEN>#address-cells<RESET> = <<RED>0+0<RESET><GREEN>0+40<RESET>>;
|
||||
reg = <<RED>0xf00<RESET><GREEN>0xeeda<RESET>>;
|
||||
prop = <<GREEN>(<RESET>1<GREEN>)<RESET>>;
|
||||
prop = <<GREEN>(<RESET>-1e10<GREEN>)<RESET>>;
|
||||
prop = <(!<RED>3<RESET><GREEN>1<RESET>)>;
|
||||
prop = <(~<RED>3<RESET><GREEN>1<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>*<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>&<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>*<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>/<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>%<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3+4<RESET><GREEN>1+2<RESET>)>;
|
||||
prop = <(<RED>3-4<RESET><GREEN>1-2<RESET>)>;
|
||||
prop = /bits/ <RED>64<RESET><GREEN>32<RESET> <(<RED>3<RESET><GREEN>1<RESET><<<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>>><RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>&<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>^<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>|<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>&&<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>3<RESET><GREEN>1<RESET>||<RED>4<RESET><GREEN>2<RESET>)>;
|
||||
prop = <(<RED>4?5<RESET><GREEN>1?2<RESET>:3)>;
|
||||
list = <&<RED>this_handle<RESET><GREEN>HANDLE_2<RESET>>, <0 0 0 <RED>0<RESET><GREEN>1<RESET>>;
|
||||
};<RESET>
|
||||
|
||||
&<RED>phandle<RESET><GREEN>phandle2<RESET> {
|
||||
<RED>pre-phandle<RESET><GREEN>prop_handle<RESET> = <&<RED>this_handle<RESET><GREEN>HANDLE_2<RESET>>;
|
||||
};<RESET>
|
||||
};<RESET>
|
32
t/t4034/dts/post
Normal file
32
t/t4034/dts/post
Normal file
@ -0,0 +1,32 @@
|
||||
/ {
|
||||
HANDLE_2: new-node@eeda {
|
||||
compatible = "vendor,compat";
|
||||
string-prop = end: "hello world?" start: ;
|
||||
#address-cells = <0+40>;
|
||||
reg = <0xeeda>;
|
||||
prop = <(1)>;
|
||||
prop = <(-1e10)>;
|
||||
prop = <(!1)>;
|
||||
prop = <(~1)>;
|
||||
prop = <(1*2)>;
|
||||
prop = <(1&2)>;
|
||||
prop = <(1*2)>;
|
||||
prop = <(1/2)>;
|
||||
prop = <(1%2)>;
|
||||
prop = <(1+2)>;
|
||||
prop = <(1-2)>;
|
||||
prop = /bits/ 32 <(1<<2)>;
|
||||
prop = <(1>>2)>;
|
||||
prop = <(1&2)>;
|
||||
prop = <(1^2)>;
|
||||
prop = <(1|2)>;
|
||||
prop = <(1&&2)>;
|
||||
prop = <(1||2)>;
|
||||
prop = <(1?2:3)>;
|
||||
list = <&HANDLE_2>, <0 0 0 1>;
|
||||
};
|
||||
|
||||
&phandle2 {
|
||||
prop_handle = <&HANDLE_2>;
|
||||
};
|
||||
};
|
32
t/t4034/dts/pre
Normal file
32
t/t4034/dts/pre
Normal file
@ -0,0 +1,32 @@
|
||||
/ {
|
||||
this_handle: node@f00 {
|
||||
compatible = "mydev";
|
||||
string-prop = start: "hello world!" end: ;
|
||||
#size-cells = <0+0>;
|
||||
reg = <0xf00>;
|
||||
prop = <1>;
|
||||
prop = <-1e10>;
|
||||
prop = <(!3)>;
|
||||
prop = <(~3)>;
|
||||
prop = <(3*4)>;
|
||||
prop = <(3&4)>;
|
||||
prop = <(3*4)>;
|
||||
prop = <(3/4)>;
|
||||
prop = <(3%4)>;
|
||||
prop = <(3+4)>;
|
||||
prop = <(3-4)>;
|
||||
prop = /bits/ 64 <(3<<4)>;
|
||||
prop = <(3>>4)>;
|
||||
prop = <(3&4)>;
|
||||
prop = <(3^4)>;
|
||||
prop = <(3|4)>;
|
||||
prop = <(3&&4)>;
|
||||
prop = <(3||4)>;
|
||||
prop = <(4?5:3)>;
|
||||
list = <&this_handle>, <0 0 0 0>;
|
||||
};
|
||||
|
||||
&phandle {
|
||||
pre-phandle = <&this_handle>;
|
||||
};
|
||||
};
|
@ -23,6 +23,14 @@ IPATTERN("ada",
|
||||
"[a-zA-Z][a-zA-Z0-9_]*"
|
||||
"|[-+]?[0-9][0-9#_.aAbBcCdDeEfF]*([eE][+-]?[0-9_]+)?"
|
||||
"|=>|\\.\\.|\\*\\*|:=|/=|>=|<=|<<|>>|<>"),
|
||||
PATTERNS("dts",
|
||||
"!;\n"
|
||||
/* lines beginning with a word optionally preceded by '&' or the root */
|
||||
"^[ \t]*((/|&?[a-zA-Z_]).*)",
|
||||
/* -- */
|
||||
/* Property names and math operators */
|
||||
"[a-zA-Z0-9,._+?#-]+"
|
||||
"|[-+*/%&^|!~]|>>|<<|&&|\\|\\|"),
|
||||
IPATTERN("fortran",
|
||||
"!^([C*]|[ \t]*!)\n"
|
||||
"!^[ \t]*MODULE[ \t]+PROCEDURE[ \t]\n"
|
||||
|
Loading…
Reference in New Issue
Block a user