Allow a ',' to prefix the MODIFIERS for a single-letter filter rule.
[rsync/rsync.git] / rsync.yo
index fdaa8a3..a37e9f7 100644 (file)
--- a/rsync.yo
+++ b/rsync.yo
@@ -1228,12 +1228,12 @@ Rsync builds an ordered list of filter rules as specified on the
 command-line.  Filter rules have the following syntax:
 
 quote(
-tt(x [RULE])nl()
-tt(xMODIFIERS [RULE])nl()
+tt(x [PATTERN_OR_FILE])nl()
+tt(xMODIFIERS [PATTERN_OR_FILE])nl()
 )
 
 The 'x' is a single-letter that specifies the kind of rule to create.  It
-can have trailing modifiers, and is separated from the RULE by either a
+can have trailing modifiers, and is separated from its arg by either a
 single space or an underscore (_).  Here are the available rule prefixes:
 
 quote(
@@ -1241,7 +1241,7 @@ bf(-) specifies an exclude pattern. nl()
 bf(+) specifies an include pattern. nl()
 bf(.) specifies a merge-file to read for more rules. nl()
 bf(:) specifies a per-directory merge-file. nl()
-bf(!) clears the current include/exclude list (takes no RULE) nl()
+bf(!) clears the current include/exclude list (takes no arg) nl()
 )
 
 Note that the bf(--include)/bf(--exclude) command-line options do not allow the
@@ -1264,9 +1264,11 @@ comment lines that start with a "#".
 manpagesection(INCLUDE/EXCLUDE PATTERN RULES)
 
 You can include and exclude files by specifying patterns using the "+" and
-"-" filter rules (as introduced in the FILTER RULES section above).  These
-rules specify a pattern that is matched against the names of the files
-that are going to be transferred.  These patterns can take several forms:
+"-" filter rules (as introduced in the FILTER RULES section above).
+
+The include/exclude rules each specify a pattern that is matched against
+the names of the files that are going to be transferred.  These patterns
+can take several forms:
 
 itemize(
   it() if the pattern starts with a / then it is anchored to a
@@ -1398,6 +1400,9 @@ itemize(
   space that separates the prefix from the rule is treated specially, so
   "- foo + bar" is parsed as two rules (assuming that bf(-) or bf(+) was not
   specified to turn off the parsing of prefixes).
+  it() You may also specify any of the modifiers for "+" or "-" to have the
+  rules that are read-in default to having that option set.  For instance,
+  ".-/_.excl" would treat the contents of .excl as absolute-path excludes.
 )
 
 The following modifiers are accepted after a "+" or "-":
@@ -1410,6 +1415,9 @@ itemize(
   it() A "!" specifies that the include/exclude should take effect if
   the pattern fails to match.  For instance, "-! */" would exclude all
   non-directories.
+  it() A bf(C) is used to indicate that all the global CVS-exclude rules
+  should be inserted as excludes in place of the "-C".  No arg should
+  follow.
 )
 
 Per-directory rules are inherited in all subdirectories of the directory
@@ -1703,10 +1711,10 @@ error.
 When reading a batch file, rsync will force the value of certain options
 to match the data in the batch file if you didn't set them to the same
 as the batch-writing command.  Other options can (and should) be changed.
-For instance
-bf(--write-batch) changes to bf(--read-batch), bf(--files-from) is dropped, and the
-bf(--filter)/bf(--include)/bf(--exclude) options are not needed unless one of the
-bf(--delete) options is specified without bf(--delete-excluded).
+For instance bf(--write-batch) changes to bf(--read-batch),
+bf(--files-from) is dropped, and the
+bf(--filter)/bf(--include)/bf(--exclude) options are not needed unless
+one of the bf(--delete) options is specified.
 
 The code that creates the BATCH.sh file transforms any filter/include/exclude
 options into a single list that is appended as a "here" document to the