diff --git a/plugins/Bicycle.py b/plugins/Bicycle.py index e5e8f796c..8a9514b17 100644 --- a/plugins/Bicycle.py +++ b/plugins/Bicycle.py @@ -160,19 +160,19 @@ def way(self, data, tags, nds): match = False if not match: capture_tags = {} - try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 0, self.re_67b51e41), mapcss._tag_capture(capture_tags, 0, tags, 'cycleway:right'))) and (mapcss._tag_capture(capture_tags, 1, tags, 'oneway') == mapcss._value_capture(capture_tags, 1, 'yes')) and (mapcss.setting(self.father.config.options, 'driving_side') != 'left')) + try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_67b51e41), mapcss._tag_capture(capture_tags, 1, tags, 'cycleway:right'))) and (mapcss._tag_capture(capture_tags, 2, tags, 'oneway') == mapcss._value_capture(capture_tags, 2, 'yes')) and (mapcss.setting(self.father.config.options, 'driving_side') != 'left')) except mapcss.RuleAbort: pass if not match: capture_tags = {} - try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 0, self.re_67b51e41), mapcss._tag_capture(capture_tags, 0, tags, 'cycleway:left'))) and (mapcss._tag_capture(capture_tags, 1, tags, 'oneway') == mapcss._value_capture(capture_tags, 1, '-1')) and (mapcss.setting(self.father.config.options, 'driving_side') != 'left')) + try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_67b51e41), mapcss._tag_capture(capture_tags, 1, tags, 'cycleway:left'))) and (mapcss._tag_capture(capture_tags, 2, tags, 'oneway') == mapcss._value_capture(capture_tags, 2, '-1')) and (mapcss.setting(self.father.config.options, 'driving_side') != 'left')) except mapcss.RuleAbort: pass if not match: capture_tags = {} - try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 0, self.re_67b51e41), mapcss._tag_capture(capture_tags, 0, tags, 'cycleway:left'))) and (mapcss._tag_capture(capture_tags, 1, tags, 'oneway') == mapcss._value_capture(capture_tags, 1, 'yes')) and (mapcss.setting(self.father.config.options, 'driving_side') == 'left')) + try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_67b51e41), mapcss._tag_capture(capture_tags, 1, tags, 'cycleway:left'))) and (mapcss._tag_capture(capture_tags, 2, tags, 'oneway') == mapcss._value_capture(capture_tags, 2, 'yes')) and (mapcss.setting(self.father.config.options, 'driving_side') == 'left')) except mapcss.RuleAbort: pass if not match: capture_tags = {} - try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 0, self.re_67b51e41), mapcss._tag_capture(capture_tags, 0, tags, 'cycleway:right'))) and (mapcss._tag_capture(capture_tags, 1, tags, 'oneway') == mapcss._value_capture(capture_tags, 1, '-1')) and (mapcss.setting(self.father.config.options, 'driving_side') == 'left')) + try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_67b51e41), mapcss._tag_capture(capture_tags, 1, tags, 'cycleway:right'))) and (mapcss._tag_capture(capture_tags, 2, tags, 'oneway') == mapcss._value_capture(capture_tags, 2, '-1')) and (mapcss.setting(self.father.config.options, 'driving_side') == 'left')) except mapcss.RuleAbort: pass if match: # -osmoseTags:list("cycleway","fix:survey") diff --git a/plugins/Colour.py b/plugins/Colour.py index c9bfcb0db..c209d3153 100644 --- a/plugins/Colour.py +++ b/plugins/Colour.py @@ -14,7 +14,7 @@ def init(self, logger): super().init(logger) tags = capture_tags = {} # noqa self.errors[30911] = self.def_class(item = 3091, level = 2, tags = mapcss.list_('tag'), title = mapcss.tr('Colour code should start with \'#\' followed by 3 or 6 digits')) - self.errors[30914] = self.def_class(item = 3091, level = 2, tags = mapcss.list_('tag'), title = mapcss.tr('Unknown colour name')) + self.errors[30914] = self.def_class(item = 3091, level = 2, tags = mapcss.list_('tag'), title = mapcss.tr('Bad colour name')) self.re_32723f56 = re.compile(r'^(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*)(; ?(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*))*$') self.re_43080bc2 = re.compile(r'^(#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})|[^#;]+)(; ?(#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})|[^#;]+))*$') @@ -148,7 +148,7 @@ def node(self, data, tags): try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'ref:colour')) and (mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_7d65c79d), mapcss._tag_capture(capture_tags, 1, tags, 'ref:colour')))) except mapcss.RuleAbort: pass if match: - # sethexWithoutHash + # set hexWithoutHash # group:tr("Colour code should start with '#' followed by 3 or 6 digits") # -osmoseItemClassLevel:"3091/30911:1/2" # throwWarning:tr("{0} colour code should start with '#' followed by 3 or 6 digits","{0.tag}") @@ -217,10 +217,10 @@ def node(self, data, tags): try: match = ((not set_hexWithoutHash) and (mapcss._tag_capture(capture_tags, 0, tags, 'ref:colour')) and (not mapcss.regexp_test(mapcss._value_const_capture(capture_tags, 1, self.re_32723f56, '^(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*)(; ?(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*))*$'), mapcss._tag_capture(capture_tags, 1, tags, 'ref:colour')))) except mapcss.RuleAbort: pass if match: - # group:tr("Unknown colour name") + # group:tr("Bad colour name") # -osmoseItemClassLevel:"3091/30914:0/2" - # throwWarning:tr("Unknown colour in tag ''{0}''","{0.key}") - err.append({'class': 30914, 'subclass': 0, 'text': mapcss.tr('Unknown colour in tag \'\'{0}\'\'', mapcss._tag_uncapture(capture_tags, '{0.key}'))}) + # throwWarning:tr("Unknown or invalid colour in tag ''{0}''","{0.key}") + err.append({'class': 30914, 'subclass': 0, 'text': mapcss.tr('Unknown or invalid colour in tag \'\'{0}\'\'', mapcss._tag_uncapture(capture_tags, '{0.key}'))}) return err @@ -362,7 +362,7 @@ def way(self, data, tags, nds): try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'ref:colour')) and (mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_7d65c79d), mapcss._tag_capture(capture_tags, 1, tags, 'ref:colour')))) except mapcss.RuleAbort: pass if match: - # sethexWithoutHash + # set hexWithoutHash # group:tr("Colour code should start with '#' followed by 3 or 6 digits") # -osmoseItemClassLevel:"3091/30911:1/2" # throwWarning:tr("{0} colour code should start with '#' followed by 3 or 6 digits","{0.tag}") @@ -436,9 +436,9 @@ def way(self, data, tags, nds): try: match = ((not set_hexWithoutHash) and (mapcss._tag_capture(capture_tags, 0, tags, 'ref:colour')) and (not mapcss.regexp_test(mapcss._value_const_capture(capture_tags, 1, self.re_32723f56, '^(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*)(; ?(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*))*$'), mapcss._tag_capture(capture_tags, 1, tags, 'ref:colour')))) except mapcss.RuleAbort: pass if match: - # group:tr("Unknown colour name") + # group:tr("Bad colour name") # -osmoseItemClassLevel:"3091/30914:0/2" - # throwWarning:tr("Unknown colour in tag ''{0}''","{0.key}") + # throwWarning:tr("Unknown or invalid colour in tag ''{0}''","{0.key}") # assertNoMatch:"way building:colour=#FFFFFF" # assertNoMatch:"way building:colour=#red" # assertNoMatch:"way building:colour=FFFFFF" @@ -449,7 +449,7 @@ def way(self, data, tags, nds): # assertMatch:"way building:colour=red;blueish" # assertMatch:"way building:colour=reddish;blue" # assertNoMatch:"way roof:colour=red building:colour=#FFFFFF" - err.append({'class': 30914, 'subclass': 0, 'text': mapcss.tr('Unknown colour in tag \'\'{0}\'\'', mapcss._tag_uncapture(capture_tags, '{0.key}'))}) + err.append({'class': 30914, 'subclass': 0, 'text': mapcss.tr('Unknown or invalid colour in tag \'\'{0}\'\'', mapcss._tag_uncapture(capture_tags, '{0.key}'))}) return err @@ -580,7 +580,7 @@ def relation(self, data, tags, members): try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'ref:colour')) and (mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_7d65c79d), mapcss._tag_capture(capture_tags, 1, tags, 'ref:colour')))) except mapcss.RuleAbort: pass if match: - # sethexWithoutHash + # set hexWithoutHash # group:tr("Colour code should start with '#' followed by 3 or 6 digits") # -osmoseItemClassLevel:"3091/30911:1/2" # throwWarning:tr("{0} colour code should start with '#' followed by 3 or 6 digits","{0.tag}") @@ -649,10 +649,10 @@ def relation(self, data, tags, members): try: match = ((not set_hexWithoutHash) and (mapcss._tag_capture(capture_tags, 0, tags, 'ref:colour')) and (not mapcss.regexp_test(mapcss._value_const_capture(capture_tags, 1, self.re_32723f56, '^(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*)(; ?(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*))*$'), mapcss._tag_capture(capture_tags, 1, tags, 'ref:colour')))) except mapcss.RuleAbort: pass if match: - # group:tr("Unknown colour name") + # group:tr("Bad colour name") # -osmoseItemClassLevel:"3091/30914:0/2" - # throwWarning:tr("Unknown colour in tag ''{0}''","{0.key}") - err.append({'class': 30914, 'subclass': 0, 'text': mapcss.tr('Unknown colour in tag \'\'{0}\'\'', mapcss._tag_uncapture(capture_tags, '{0.key}'))}) + # throwWarning:tr("Unknown or invalid colour in tag ''{0}''","{0.key}") + err.append({'class': 30914, 'subclass': 0, 'text': mapcss.tr('Unknown or invalid colour in tag \'\'{0}\'\'', mapcss._tag_uncapture(capture_tags, '{0.key}'))}) return err diff --git a/plugins/Colour.validator.mapcss b/plugins/Colour.validator.mapcss index c930ba188..36d84a8b9 100644 --- a/plugins/Colour.validator.mapcss +++ b/plugins/Colour.validator.mapcss @@ -97,9 +97,9 @@ meta[lang=fr] { *[seamark:light:colour][ seamark:light:colour!~/^(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*)(; ?(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*))*$/]!.hexWithoutHash, *[seamark:topmark:colour][ seamark:topmark:colour!~/^(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*)(; ?(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*))*$/]!.hexWithoutHash, *[ref:colour][ ref:colour!~/^(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*)(; ?(aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|#[^;]*))*$/]!.hexWithoutHash { - group: tr("Unknown colour name"); + group: tr("Bad colour name"); -osmoseItemClassLevel: "3091/30914:0/2"; - throwWarning: tr("Unknown colour in tag ''{0}''","{0.key}"); + throwWarning: tr("Unknown or invalid colour in tag ''{0}''", "{0.key}"); assertMatch: "way building:colour=red-blue"; assertMatch: "way building:colour=red;blueish"; diff --git a/plugins/Construction2.py b/plugins/Construction2.py index 529a61292..4ee4336b2 100644 --- a/plugins/Construction2.py +++ b/plugins/Construction2.py @@ -13,7 +13,7 @@ class Construction2(PluginMapCSS): def init(self, logger): super().init(logger) tags = capture_tags = {} # noqa - self.errors[40701] = self.def_class(item = 4070, level = 1, tags = mapcss.list_('tag', 'highway', 'fix:survey'), title = mapcss.tr('Inconsistent tagging of {0}', mapcss._tag_uncapture(capture_tags, '{1.key}'))) + self.errors[40701] = self.def_class(item = 4070, level = 2, tags = mapcss.list_('tag', 'highway', 'fix:survey'), title = mapcss.tr('Inconsistent tagging of {0}', mapcss._tag_uncapture(capture_tags, '{1.key}'))) @@ -23,43 +23,32 @@ def way(self, data, tags, nds): err = [] - # way[highway][construction][highway!=construction][construction!=minor] # way[highway][proposed][highway!=proposed] - # way[railway][construction][railway!=construction][railway!=abandoned][railway!=razed][railway!=dismantled][construction!=minor] # way[railway][proposed][railway!=proposed][railway!=abandoned][railway!=razed][railway!=dismantled][railway!=disused] - if ('construction' in keys and 'highway' in keys) or ('construction' in keys and 'railway' in keys) or ('highway' in keys and 'proposed' in keys) or ('proposed' in keys and 'railway' in keys): + if ('highway' in keys and 'proposed' in keys) or ('proposed' in keys and 'railway' in keys): match = False - if not match: - capture_tags = {} - try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'highway')) and (mapcss._tag_capture(capture_tags, 1, tags, 'construction')) and (mapcss._tag_capture(capture_tags, 2, tags, 'highway') != mapcss._value_const_capture(capture_tags, 2, 'construction', 'construction')) and (mapcss._tag_capture(capture_tags, 3, tags, 'construction') != mapcss._value_const_capture(capture_tags, 3, 'minor', 'minor'))) - except mapcss.RuleAbort: pass if not match: capture_tags = {} try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'highway')) and (mapcss._tag_capture(capture_tags, 1, tags, 'proposed')) and (mapcss._tag_capture(capture_tags, 2, tags, 'highway') != mapcss._value_const_capture(capture_tags, 2, 'proposed', 'proposed'))) except mapcss.RuleAbort: pass - if not match: - capture_tags = {} - try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'railway')) and (mapcss._tag_capture(capture_tags, 1, tags, 'construction')) and (mapcss._tag_capture(capture_tags, 2, tags, 'railway') != mapcss._value_const_capture(capture_tags, 2, 'construction', 'construction')) and (mapcss._tag_capture(capture_tags, 3, tags, 'railway') != mapcss._value_const_capture(capture_tags, 3, 'abandoned', 'abandoned')) and (mapcss._tag_capture(capture_tags, 4, tags, 'railway') != mapcss._value_const_capture(capture_tags, 4, 'razed', 'razed')) and (mapcss._tag_capture(capture_tags, 5, tags, 'railway') != mapcss._value_const_capture(capture_tags, 5, 'dismantled', 'dismantled')) and (mapcss._tag_capture(capture_tags, 6, tags, 'construction') != mapcss._value_const_capture(capture_tags, 6, 'minor', 'minor'))) - except mapcss.RuleAbort: pass if not match: capture_tags = {} try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'railway')) and (mapcss._tag_capture(capture_tags, 1, tags, 'proposed')) and (mapcss._tag_capture(capture_tags, 2, tags, 'railway') != mapcss._value_const_capture(capture_tags, 2, 'proposed', 'proposed')) and (mapcss._tag_capture(capture_tags, 3, tags, 'railway') != mapcss._value_const_capture(capture_tags, 3, 'abandoned', 'abandoned')) and (mapcss._tag_capture(capture_tags, 4, tags, 'railway') != mapcss._value_const_capture(capture_tags, 4, 'razed', 'razed')) and (mapcss._tag_capture(capture_tags, 5, tags, 'railway') != mapcss._value_const_capture(capture_tags, 5, 'dismantled', 'dismantled')) and (mapcss._tag_capture(capture_tags, 6, tags, 'railway') != mapcss._value_const_capture(capture_tags, 6, 'disused', 'disused'))) except mapcss.RuleAbort: pass if match: - # -osmoseItemClassLevel:"4070/40701/1" + # -osmoseItemClassLevel:"4070/40701/2" # throwError:tr("Inconsistent tagging of {0}","{1.key}") - # assertNoMatch:"way highway=construction construction=primary" - # assertNoMatch:"way highway=primary construction=minor" - # assertMatch:"way highway=primary construction=primary" + # assertMatch:"way highway=primary proposed=secondary" + # assertNoMatch:"way highway=proposed proposed=primary" err.append({'class': 40701, 'subclass': 0, 'text': mapcss.tr('Inconsistent tagging of {0}', mapcss._tag_uncapture(capture_tags, '{1.key}'))}) return err -from plugins.Plugin import TestPluginCommon +from plugins.PluginMapCSS import TestPluginMapcss -class Test(TestPluginCommon): +class Test(TestPluginMapcss): def test(self): n = Construction2(None) class _config: @@ -70,6 +59,5 @@ class father: n.init(None) data = {'id': 0, 'lat': 0, 'lon': 0} - self.check_not_err(n.way(data, {'construction': 'primary', 'highway': 'construction'}, [0]), expected={'class': 40701, 'subclass': 0}) - self.check_not_err(n.way(data, {'construction': 'minor', 'highway': 'primary'}, [0]), expected={'class': 40701, 'subclass': 0}) - self.check_err(n.way(data, {'construction': 'primary', 'highway': 'primary'}, [0]), expected={'class': 40701, 'subclass': 0}) + self.check_err(n.way(data, {'highway': 'primary', 'proposed': 'secondary'}, [0]), expected={'class': 40701, 'subclass': 0}) + self.check_not_err(n.way(data, {'highway': 'proposed', 'proposed': 'primary'}, [0]), expected={'class': 40701, 'subclass': 0}) diff --git a/plugins/Construction2.validator.mapcss b/plugins/Construction2.validator.mapcss index fd59e84a3..b4ababdf8 100644 --- a/plugins/Construction2.validator.mapcss +++ b/plugins/Construction2.validator.mapcss @@ -31,14 +31,11 @@ meta[lang=fr] { description: "Vérification d'inconsistance de attributs pour les voies en construction ou proposées"; } -way[highway][construction][highway!=construction][construction!=minor], way[highway][proposed][highway!=proposed], -way[railway][construction][railway!=construction][railway!=abandoned][railway!=razed][railway!=dismantled][construction!=minor], way[railway][proposed][railway!=proposed][railway!=abandoned][railway!=razed][railway!=dismantled][railway!=disused] { throwError: tr("Inconsistent tagging of {0}", "{1.key}"); - -osmoseItemClassLevel: "4070/40701/1"; + -osmoseItemClassLevel: "4070/40701/2"; - assertMatch: "way highway=primary construction=primary"; - assertNoMatch: "way highway=construction construction=primary"; - assertNoMatch: "way highway=primary construction=minor"; + assertMatch: "way highway=primary proposed=secondary"; + assertNoMatch: "way highway=proposed proposed=primary"; } diff --git a/plugins/indoor.py b/plugins/indoor.py index b305412c0..1c6a8294a 100644 --- a/plugins/indoor.py +++ b/plugins/indoor.py @@ -60,11 +60,11 @@ def way(self, data, tags, nds): match = False if not match: capture_tags = {} - try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 0, self.re_2a047336), mapcss._tag_capture(capture_tags, 0, tags, 'indoor'))) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] != nds[-1])) + try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_2a047336), mapcss._tag_capture(capture_tags, 1, tags, 'indoor'))) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] != nds[-1])) except mapcss.RuleAbort: pass if not match: capture_tags = {} - try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'room')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] != nds[-1])) + try: match = ((mapcss._tag_capture(capture_tags, 1, tags, 'room')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] != nds[-1])) except mapcss.RuleAbort: pass if match: # -osmoseTags:list("fix:survey") @@ -77,7 +77,7 @@ def way(self, data, tags, nds): match = False if not match: capture_tags = {} - try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 0, self.re_2a047336), mapcss._tag_capture(capture_tags, 0, tags, 'indoor'))) and (not mapcss._tag_capture(capture_tags, 1, tags, 'level')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] == nds[-1])) + try: match = ((mapcss.regexp_test(mapcss._value_capture(capture_tags, 1, self.re_2a047336), mapcss._tag_capture(capture_tags, 1, tags, 'indoor'))) and (not mapcss._tag_capture(capture_tags, 2, tags, 'level')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] == nds[-1])) except mapcss.RuleAbort: pass if match: # -osmoseTags:list("fix:survey") @@ -93,11 +93,11 @@ def way(self, data, tags, nds): match = False if not match: capture_tags = {} - try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'indoor') == mapcss._value_capture(capture_tags, 0, 'area')) and (mapcss._tag_capture(capture_tags, 1, tags, 'shop')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] == nds[-1])) + try: match = ((mapcss._tag_capture(capture_tags, 1, tags, 'indoor') == mapcss._value_capture(capture_tags, 1, 'area')) and (mapcss._tag_capture(capture_tags, 2, tags, 'shop')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] == nds[-1])) except mapcss.RuleAbort: pass if not match: capture_tags = {} - try: match = ((mapcss._tag_capture(capture_tags, 0, tags, 'indoor') == mapcss._value_capture(capture_tags, 0, 'corridor')) and (mapcss._tag_capture(capture_tags, 1, tags, 'shop')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] == nds[-1])) + try: match = ((mapcss._tag_capture(capture_tags, 1, tags, 'indoor') == mapcss._value_capture(capture_tags, 1, 'corridor')) and (mapcss._tag_capture(capture_tags, 2, tags, 'shop')) and (mapcss.inside(self.father.config.options, 'DE,CH,FR')) and (nds[0] == nds[-1])) except mapcss.RuleAbort: pass if match: # -osmoseTags:list("fix:survey","shop")