diff -r 0af8e6b6dfe0 -r b50ade8e7197 docs/src/sync-configuration.md --- a/docs/src/sync-configuration.md Sun Jun 24 11:22:02 2018 +0200 +++ b/docs/src/sync-configuration.md Sun Jun 24 11:51:07 2018 +0200 @@ -100,6 +100,47 @@ Default: 0 \ Example: `50` +### tagconfig + +Configures the local store for resource tags. If this element is specified, resource tags are stored locally. + +Optional elements: local-store, detect-changes, xattr-name, on-conflict + +### local-store + +Specifies the tag-store type. Currently the only available type is `xattr`. + +The element can contain the attribute `format` with one of the following values: `text`, `csv`, `xml`, `macos`. The default value is `text`. + +Type: tagstore type enum \ +Default: xattr \ +Example: `xattr` + +### xattr-name + +Specifies the name of the extended attribute for storing tags. The default value is `tags`, unless you are using the `macos` format, where the default value is `com.apple.metadata:_kMDItemUserTags`. + +Type: string \ +Default: tags \ +Example: `file_tags + +### detect-changes + +Controls, if tag changes should be detected. + +Type: boolean \ +Default: false \ +Example: `true` + +### on-conflict + +Specifies the behavior, when tag conflicts occur. Possible values are: `no_conflict`, `keep_local`, `keep_remote`, `merge` + +Type: onconflict enum \ +Default: no_conflict \ +Example: `merge` + + ### filter With the filter element, include and exclude filters can be specified, to control which files are synchronized. The *pull*, *push* and *archive* command apply these filters to file paths. At first it is checked if a file is matching any include filter. If so only files matching not an exclude filter are further processed. @@ -136,13 +177,19 @@ ### tags -TODO +Filters resources by tags. Only resources, that are not a collection, are effected. If tags are not stored locally, the pull command still uses the filter. + +Filter Syntax: + + filter ::= operator? , (tag_list | ("(" , filter , ")")+) + tag_list ::= tag , ("," tag)* + operator ::= "&" | "|" | "1" | "0" Type: tag filter expression \ Example: - | (tag1, tag2, tag3) + | (tag1, tag2, tag3)