summaryrefslogtreecommitdiff
path: root/userdiff.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2018-03-08 12:36:30 -0800
committerJunio C Hamano <gitster@pobox.com>2018-03-08 12:36:30 -0800
commit077cde91d226c305523645a0f30b6955d4aaf9c9 (patch)
tree5b6ae638094a55a11f75a760fa5cd82cf40bce88 /userdiff.c
parent9bb8eb0c88d210d3575bd484320f9abfef551ed1 (diff)
parent1dbf0c0ad6cabfc35aa1896b4d94f4ee811ba803 (diff)
Merge branch 'ag/userdiff-go-funcname'
"git diff" and friends learned funcname patterns for Go language source files. * ag/userdiff-go-funcname: userdiff: add built-in pattern for golang
Diffstat (limited to 'userdiff.c')
-rw-r--r--userdiff.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/userdiff.c b/userdiff.c
index dbfb4e13cd..8f5028f6b2 100644
--- a/userdiff.c
+++ b/userdiff.c
@@ -38,6 +38,15 @@ IPATTERN("fortran",
"|//|\\*\\*|::|[/<>=]="),
IPATTERN("fountain", "^((\\.[^.]|(int|ext|est|int\\.?/ext|i/e)[. ]).*)$",
"[^ \t-]+"),
+PATTERNS("golang",
+ /* Functions */
+ "^[ \t]*(func[ \t]*.*(\\{[ \t]*)?)\n"
+ /* Structs and interfaces */
+ "^[ \t]*(type[ \t].*(struct|interface)[ \t]*(\\{[ \t]*)?)",
+ /* -- */
+ "[a-zA-Z_][a-zA-Z0-9_]*"
+ "|[-+0-9.eE]+i?|0[xX]?[0-9a-fA-F]+i?"
+ "|[-+*/<>%&^|=!:]=|--|\\+\\+|<<=?|>>=?|&\\^=?|&&|\\|\\||<-|\\.{3}"),
PATTERNS("html", "^[ \t]*(<[Hh][1-6]([ \t].*)?>.*)$",
"[^<>= \t]+"),
PATTERNS("java",