updated for version 7.0166
diff --git a/src/normal.c b/src/normal.c
index c8e847a..71eefc4 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -4766,7 +4766,7 @@
 		}
 		break;
 
-    case '?':	/* "z?": suggestions for a badly spelled word  */
+    case '=':	/* "z=": suggestions for a badly spelled word  */
 		if (!checkclearopq(cap->oap))
 		    spell_suggest((int)cap->count0);
 		break;
@@ -8799,4 +8799,3 @@
     cap->retval |= CA_COMMAND_BUSY;	/* don't call edit() now */
 }
 #endif
-
diff --git a/src/os_mac.h b/src/os_mac.h
index 0641991..5e28659 100644
--- a/src/os_mac.h
+++ b/src/os_mac.h
@@ -144,8 +144,8 @@
 				       comment */
 
 
-#undef  USE_FNAME_CASE		/* TODO: make :e os_Mac.c, :w, save back the
-				   file as os_mac.c */
+#define USE_FNAME_CASE		/* make ":e os_Mac.c" open the file in its
+				   original case, as "os_mac.c" */
 #define BINARY_FILE_IO
 #define EOL_DEFAULT EOL_MAC
 #ifndef MACOS_X_UNIX		/* I hope that switching these two lines */
diff --git a/src/spell.c b/src/spell.c
index f57ff0c..c3f4698 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -851,28 +851,20 @@
     vim_memset(&mi, 0, sizeof(matchinf_T));
 
     /* A number is always OK.  Also skip hexadecimal numbers 0xFF99 and
-     * 0X99FF.  But when a word character follows do check spelling to find
-     * "3GPP". */
+     * 0X99FF.  But always do check spelling to find "3GPP" and "11
+     * julifeest". */
     if (*ptr >= '0' && *ptr <= '9')
     {
 	if (*ptr == '0' && (ptr[1] == 'x' || ptr[1] == 'X'))
 	    mi.mi_end = skiphex(ptr + 2);
 	else
-	{
 	    mi.mi_end = skipdigits(ptr);
-	    nrlen = mi.mi_end - ptr;
-	}
-	if (!spell_iswordp(mi.mi_end, wp->w_buffer))
-	    return (int)(mi.mi_end - ptr);
-
-	/* Try including the digits in the word. */
-	mi.mi_fend = ptr + nrlen;
+	nrlen = mi.mi_end - ptr;
     }
-    else
-	mi.mi_fend = ptr;
 
     /* Find the normal end of the word (until the next non-word character). */
     mi.mi_word = ptr;
+    mi.mi_fend = ptr;
     if (spell_iswordp(mi.mi_fend, wp->w_buffer))
     {
 	do