beremiz

WAMP: Support Client Certificate authentication (WAMPS-CRT://...) for IDE

URI scheme according to selected authentication:
WAMP:// unencrypted http, use generated PSK for CRA authentication
WAMP-ANNON:// unencrypted http, no authentication
WAMPS:// https with verified host name, use generated PSK for CRA authentication
WAMPS-ANNON:// https with verified host name, no authentication
WAMPS-INSECURE:// https with no verification, no authentication
WAMPS-NOVERIFY:// https with no verification, use generated PSK for CRA authentication
WAMPS-CRT:// https with verified host name, client certificate authentication

Tests updated accordingly.
// i18n.ysl2
template "svg:tspan", mode="extract_i18n" {
if "string-length(.) > 0" line {
value ".";
}
}
template "svg:text", mode="extract_i18n" {
msg {
attrib "id" value "@id";
attrib "label" value "substring(@inkscape:label,2)";
if "string-length(text()) > 0" line {
value "text()";
}
apply "svg:*", mode="extract_i18n";
}
}
const "translatable_texts", "//svg:text[starts-with(@inkscape:label, '_')]";
const "translatable_strings" apply "$translatable_texts", mode="extract_i18n";
emit "preamble:i18n" {
const "translations", "ns:GetTranslations($translatable_strings)";
> var langs = [ ["Default", "C"],
foreach "$translations/langs/lang" {
> ["«.»","«@code»"]
if "position()!=last()" > ,
}
| ];
| var translations = [
foreach "$translatable_texts" {
const "n","position()";
const "current_id","@id";
const "text_unlinked_uses","$result_svg_ns//svg:text[@original = $current_id]/@id";
> [[
foreach "@id | $text_unlinked_uses" {
> id("«.»")
if "position()!=last()" > ,
}
> ],[
foreach "$translations/messages/msgid[$n]/msg" {
> "
foreach "line" {
value ".";
if "position()!=last()" > \\\\n
}
> "
if "position()!=last()" > ,
}
> ]]
if "position()!=last()" > ,
> \n
}
| ]
}