# By default, `find´ will not follow symlinks and will use extended
# regular expressions, ignoring hidden files and those which begin with
# a period.
-FINDOPTS := -PE
-FINDRULES := -flags -nohidden -and -not -name '.*'
-FINDINCLUDEOPTS := $(FINDOPTS)
+FINDRULES := -flags -nohidden -and ! '(' '(' -name '[.-]*' -or -name '*[:|$$%]*' ')' -and -prune ')'
FINDINCLUDERULES := $(FINDRULES)
# The list of parsers for plaintext file types.
- **`MAGICDIR`:**
The location of the magic files to use (default: `$(THISDIR)/magic`).
-- **`FINDOPTS`:**
- Options to pass to `find` when searching for source files (default:
- `-PE`).
-
- **`FINDRULES`:**
- Rules to use with `find` when searching for source files (default:
- `-flags -nohidden -and -not -name '.*'`).
-
-- **`FINDINCLUDEOPTS`:**
- Options to pass to `find` when searching for includes (default:
- `$(FINDOPTS)`).
+ Rules to use with `find` when searching for source files.
+ The default ignores hidden files, those that start with a period or
+ hyphen‐minus, and those which contain a pipe, buck, or colon.
- **`FINDINCLUDERULES`:**
Rules to use with `find` when searching for includes (default:
Source files whose media type does not have an associated X·S·L·T
parser are considered “assets” and will not be transformed.
-For compatibility with this program, source filenames should not
- contain Ascii whitespace or any of the following Ascii characters:
- ``!"#$%&()-:<>?\^`{|}``.
-These characters are either invalid in u·r·i’s or conflict with aspects
- of the Make or commandline syntax.
+**☡ For compatibility with this program, source filenames must not
+ contain Ascii whitespace, colons (`:`), pipes (`|`), bucks (`$`),
+ percents (`%`) or control characters, and must not begin with a
+ hyphen‐minus (`-`).**
+The former characters have the potential to conflict with make syntax,
+ and a leading hyphen‐minus is confusable for a command‐line argument.
## Parsers