about summary refs log tree commit diff
path: root/Src
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2004-03-06 00:22:58 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2004-03-06 00:22:58 +0000
commit1777b67b1c62f6fe60e98b9d1e8469f19f1c2f3b (patch)
tree1436e06ea5d3d45eaee846ca4251387437e99107 /Src
parentb144ed7455939eb5e7a1b56ac502b7e0688b8dbf (diff)
downloadzsh-1777b67b1c62f6fe60e98b9d1e8469f19f1c2f3b.tar.gz
zsh-1777b67b1c62f6fe60e98b9d1e8469f19f1c2f3b.tar.xz
zsh-1777b67b1c62f6fe60e98b9d1e8469f19f1c2f3b.zip
zsh-users/7121: NO_CASE_GLOB option for case-insensitive globbing
Diffstat (limited to 'Src')
-rw-r--r--Src/options.c1
-rw-r--r--Src/pattern.c5
-rw-r--r--Src/zsh.h1
3 files changed, 6 insertions, 1 deletions
diff --git a/Src/options.c b/Src/options.c
index 8cc8f2a8e..359229a57 100644
--- a/Src/options.c
+++ b/Src/options.c
@@ -92,6 +92,7 @@ static struct optname optns[] = {
 {NULL, "bgnice",	      OPT_EMULATE|OPT_NONBOURNE, BGNICE},
 {NULL, "braceccl",	      OPT_EMULATE,		 BRACECCL},
 {NULL, "bsdecho",	      OPT_EMULATE|OPT_SH,	 BSDECHO},
+{NULL, "caseglob",	      OPT_ALL,			 CASEGLOB},
 {NULL, "cbases",	      0,			 CBASES},
 {NULL, "cdablevars",	      OPT_EMULATE,		 CDABLEVARS},
 {NULL, "chasedots",	      OPT_EMULATE,		 CHASEDOTS},
diff --git a/Src/pattern.c b/Src/pattern.c
index b62cbcd37..1f0a87561 100644
--- a/Src/pattern.c
+++ b/Src/pattern.c
@@ -289,7 +289,10 @@ static long rn_offs;
 void
 patcompstart(void)
 {
-    patglobflags = 0;
+    if (isset(CASEGLOB))
+	patglobflags = 0;
+    else
+	patglobflags = GF_IGNCASE;
 }
 
 /* Top level pattern compilation subroutine */
diff --git a/Src/zsh.h b/Src/zsh.h
index cf470f001..aab4737f9 100644
--- a/Src/zsh.h
+++ b/Src/zsh.h
@@ -1412,6 +1412,7 @@ enum {
     BGNICE,
     BRACECCL,
     BSDECHO,
+    CASEGLOB,
     CBASES,
     CDABLEVARS,
     CHASEDOTS,