patch 8.2.1898: command modifier parsing always uses global cmdmod

Problem:    Command modifier parsing always uses global cmdmod.
Solution:   Pass in cmdmod_T to use.  Rename struct fields consistently.
diff --git a/src/cmdhist.c b/src/cmdhist.c
index 69c83c0..1e7ae34 100644
--- a/src/cmdhist.c
+++ b/src/cmdhist.c
@@ -304,7 +304,7 @@
     if (hislen == 0)		// no history
 	return;
 
-    if (cmdmod.keeppatterns && histype == HIST_SEARCH)
+    if ((cmdmod.cmod_flags & CMOD_KEEPPATTERNS) && histype == HIST_SEARCH)
 	return;
 
     // Searches inside the same mapping overwrite each other, so that only