aboutsummaryrefslogtreecommitdiff
path: root/t/t4034/bash/pre
diff options
context:
space:
mode:
authorMoumita Dhar <dhar61595@gmail.com>2025-05-16 20:15:12 +0530
committerJunio C Hamano <gitster@pobox.com>2025-05-16 11:52:41 -0700
commitea8a71b40d3fdc91180b951c829cdf41bb6f7da0 (patch)
treea2aa0fc70638cffd4675d6d4e3723f183811886c /t/t4034/bash/pre
parentcb96e1697ad6e54d11fc920c95f82977f8e438f8 (diff)
downloadgit-ea8a71b40d3fdc91180b951c829cdf41bb6f7da0.tar.xz
userdiff: extend Bash pattern to cover more shell function forms
The previous function regex required explicit matching of function bodies using `{`, `(`, `((`, or `[[`, which caused several issues: - It failed to capture valid functions where `{` was on the next line due to line continuation (`\`). - It did not recognize functions with single command body, such as `x () echo hello`. Replacing the function body matching logic with `.*$`, ensures that everything on the function definition line is captured. Additionally, the word regex is refined to better recognize shell syntax, including additional parameter expansion operators and command-line options. Signed-off-by: Moumita Dhar <dhar61595@gmail.com> Acked-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4034/bash/pre')
-rw-r--r--t/t4034/bash/pre31
1 files changed, 31 insertions, 0 deletions
diff --git a/t/t4034/bash/pre b/t/t4034/bash/pre
new file mode 100644
index 0000000000..8d22039c40
--- /dev/null
+++ b/t/t4034/bash/pre
@@ -0,0 +1,31 @@
+my_var=10
+x=123
+echo $1
+echo $USER
+${HOME}
+((a+b))
+((a*b))
+((a/b))
+((a%b))
+((a|b))
+((a^b))
+((a=b))
+((a!b))
+((a<b))
+((a>b))
+$((a<b))
+$((a>b))
+$((a&b))
+$((a|b))
+${a:b}
+${a:b}
+${a:b}
+${a:b}
+${a#*/}
+${a%.*}
+${a^}
+${a,}
+${a}
+${a[*]}
+ls -a
+ls --all