updated for version 7.4.191
Problem:    Escaping a file name for shell commands can't be done without a
            function.
Solution:   Add the :S file name modifier.
diff --git a/runtime/doc/usr_30.txt b/runtime/doc/usr_30.txt
index 52f4375..b2be512 100644
--- a/runtime/doc/usr_30.txt
+++ b/runtime/doc/usr_30.txt
@@ -128,7 +128,7 @@
 You can include special Vim keywords in the command specification.  The %
 character expands to the name of the current file.  So if you execute the
 command: >
-	:set makeprg=make\ %
+	:set makeprg=make\ %:S
 
 When you are editing main.c, then ":make" executes the following command: >
 
@@ -137,7 +137,7 @@
 This is not too useful, so you will refine the command a little and use the :r
 (root) modifier: >
 
-	:set makeprg=make\ %:r.o
+	:set makeprg=make\ %:r:S.o
 
 Now the command executed is as follows: >