[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Nmh-workers] Bash completion

From: Joel J. Adamson
Subject: [Nmh-workers] Bash completion
Date: Wed, 05 May 2010 11:55:46 -0400

<#secure method=pgpmime mode=sign>

When I source /usr/share/doc/nmh-1.3/COMPLETION-BASH I get the following

somehost: ~ > source /usr/share/doc/nmh-1.3/COMPLETION-BASH 
bash: /usr/share/doc/nmh-1.3/COMPLETION-BASH:23: syntax error near unexpected 
token `('
bash: /usr/share/doc/nmh-1.3/COMPLETION-BASH:23: `        \++([a-zA-Z_]) )'

There seem to be a lot of unbalanced parentheses in this file; I have
fixed those I could find (see attached patch).  However after I source
it again I get this error:

bash: have: command not found

The first line of the file is "have show &&"

Is this a portability issue (is "have" a builtin command for some
installations of bash?  I can't find it in any documentation), or am I
not supposed to source it?  How else would I load it?

The zsh completion worked really well, so using mh from the command-line
was a breeze.  However, since switching to bash I have not had
completion and it's now a chore (for when I'm not using Emacs).  

Thanks for any help you can offer,


Joel J. Adamson
Servedio Lab
University of North Carolina at Chapel Hill

FSF Member #8164
--- COMPLETION-BASH     2010-05-05 11:53:26.091787388 -0400
+++ COMPLETION-BASH.mine        2010-05-05 11:45:56.843787019 -0400
@@ -20,8 +20,8 @@
     for (( i=0; i < ${#COMP_WORDS}-1; i++ ))
         case "${COMP_WORDS[i]}" in
-        \++([a-zA-Z_]) )
-            folder=${COMP_WORDS[i]} 
+           ("\++([a-zA-Z_])" )
+            folder=${COMP_WORDS[i]}     
             origfolder=$( folder -f )
@@ -134,14 +134,14 @@
         options=( $( folder -all -r -fast | grep -v "^\." | sed "s/^/+/" ) )
-    +([0-9a-z])-* )
+    "+([0-9a-z])-*" )
         # Partial range
         options=( $( scan $folder -format "%(msg)" "${start}-last" ) first 
prev cur next last )
         options=( address@hidden//#/${start}-} )
-    +([0-9]) )
+    "+([0-9])" )
         # Message number, or start of range
         options=( $( scan $folder -format "%(msg)" ) first prev cur next last )
         options=( address@hidden address@hidden//%/-} )

reply via email to

[Prev in Thread] Current Thread [Next in Thread]