summaryrefslogtreecommitdiff
path: root/t/t4018/bash-posix-style-single-command-function
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/t4018/bash-posix-style-single-command-function
parentcb96e1697ad6e54d11fc920c95f82977f8e438f8 (diff)
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/t4018/bash-posix-style-single-command-function')
-rw-r--r--t/t4018/bash-posix-style-single-command-function3
1 files changed, 3 insertions, 0 deletions
diff --git a/t/t4018/bash-posix-style-single-command-function b/t/t4018/bash-posix-style-single-command-function
new file mode 100644
index 0000000000..398ae1c5d2
--- /dev/null
+++ b/t/t4018/bash-posix-style-single-command-function
@@ -0,0 +1,3 @@
+RIGHT() echo "hello"
+
+ ChangeMe