From d4854360c8724db8891b34351e901ebd694957ab Mon Sep 17 00:00:00 2001 From: Dmitry Ivanov Date: Thu, 26 Dec 2024 00:23:01 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=82=D0=B8=D0=BF=D0=BE=D0=B2?= =?UTF-8?q?=20=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=BD?= =?UTF-8?q?=D0=B5=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6=D0=B8=D0=B2?= =?UTF-8?q?=D0=B0=D0=B5=D0=BC=D1=8B=D1=85=20=D0=BE=D0=BF=D1=86=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Классы/КонвертерКомандыCURL.os | 230 ++++++++++++++-------------- tools/ПодготовкаОпцийИзСайтаCurl.os | 17 +- 2 files changed, 130 insertions(+), 117 deletions(-) diff --git a/src/Классы/КонвертерКомандыCURL.os b/src/Классы/КонвертерКомандыCURL.os index e8817de..e397c81 100644 --- a/src/Классы/КонвертерКомандыCURL.os +++ b/src/Классы/КонвертерКомандыCURL.os @@ -650,40 +650,40 @@ Если ВключатьНеподдерживаемые Тогда Приложение.Опция("abstract-unix-socket").ТМассивСтрок(); Приложение.Опция("alt-svc").ТМассивСтрок(); - Приложение.Опция("anyauth").ТМассивСтрок(); - Приложение.Опция("a append").ТМассивСтрок(); + Приложение.Опция("anyauth").ТМассивБулево(); + Приложение.Опция("a append").ТМассивБулево(); Приложение.Опция("aws-sigv4").ТМассивСтрок(); - Приложение.Опция("basic").ТМассивСтрок(); + Приложение.Опция("basic").ТМассивБулево(); Приложение.Опция("capath").ТМассивСтрок(); - Приложение.Опция("cert-status").ТМассивСтрок(); + Приложение.Опция("cert-status").ТМассивБулево(); Приложение.Опция("cert-type").ТМассивСтрок(); Приложение.Опция("ciphers").ТМассивСтрок(); - Приложение.Опция("compressed").ТМассивСтрок(); - Приложение.Опция("compressed-ssh").ТМассивСтрок(); + Приложение.Опция("compressed").ТМассивБулево(); + Приложение.Опция("compressed-ssh").ТМассивБулево(); Приложение.Опция("K config").ТМассивСтрок(); Приложение.Опция("connect-to").ТМассивСтрок(); Приложение.Опция("C continue-at").ТМассивСтрок(); Приложение.Опция("b cookie").ТМассивСтрок(); Приложение.Опция("c cookie-jar").ТМассивСтрок(); - Приложение.Опция("create-dirs").ТМассивСтрок(); + Приложение.Опция("create-dirs").ТМассивБулево(); Приложение.Опция("create-file-mode").ТМассивСтрок(); - Приложение.Опция("crlf").ТМассивСтрок(); + Приложение.Опция("crlf").ТМассивБулево(); Приложение.Опция("crlfile").ТМассивСтрок(); Приложение.Опция("curves").ТМассивСтрок(); Приложение.Опция("delegation").ТМассивСтрок(); - Приложение.Опция("digest").ТМассивСтрок(); - Приложение.Опция("q disable").ТМассивСтрок(); - Приложение.Опция("disable-eprt").ТМассивСтрок(); - Приложение.Опция("disable-epsv").ТМассивСтрок(); - Приложение.Опция("disallow-username-in-url").ТМассивСтрок(); + Приложение.Опция("digest").ТМассивБулево(); + Приложение.Опция("q disable").ТМассивБулево(); + Приложение.Опция("disable-eprt").ТМассивБулево(); + Приложение.Опция("disable-epsv").ТМассивБулево(); + Приложение.Опция("disallow-username-in-url").ТМассивБулево(); Приложение.Опция("dns-interface").ТМассивСтрок(); Приложение.Опция("dns-ipv4-addr").ТМассивСтрок(); Приложение.Опция("dns-ipv6-addr").ТМассивСтрок(); Приложение.Опция("dns-servers").ТМассивСтрок(); - Приложение.Опция("doh-cert-status").ТМассивСтрок(); - Приложение.Опция("doh-insecure").ТМассивСтрок(); + Приложение.Опция("doh-cert-status").ТМассивБулево(); + Приложение.Опция("doh-insecure").ТМассивБулево(); Приложение.Опция("doh-url").ТМассивСтрок(); - Приложение.Опция("dump-ca-embed").ТМассивСтрок(); + Приложение.Опция("dump-ca-embed").ТМассивБулево(); Приложение.Опция("D dump-header").ТМассивСтрок(); Приложение.Опция("ech").ТМассивСтрок(); Приложение.Опция("egd-file").ТМассивСтрок(); @@ -691,44 +691,47 @@ Приложение.Опция("etag-compare").ТМассивСтрок(); Приложение.Опция("etag-save").ТМассивСтрок(); Приложение.Опция("expect100-timeout").ТМассивСтрок(); - Приложение.Опция("f fail").ТМассивСтрок(); - Приложение.Опция("fail-early").ТМассивСтрок(); - Приложение.Опция("fail-with-body").ТМассивСтрок(); - Приложение.Опция("false-start").ТМассивСтрок(); + Приложение.Опция("f fail").ТМассивБулево(); + Приложение.Опция("fail-early").ТМассивБулево(); + Приложение.Опция("fail-with-body").ТМассивБулево(); + Приложение.Опция("false-start").ТМассивБулево(); Приложение.Опция("F form").ТМассивСтрок(); - Приложение.Опция("form-escape").ТМассивСтрок(); + Приложение.Опция("form-escape").ТМассивБулево(); Приложение.Опция("form-string").ТМассивСтрок(); Приложение.Опция("ftp-account").ТМассивСтрок(); Приложение.Опция("ftp-alternative-to-user").ТМассивСтрок(); - Приложение.Опция("ftp-create-dirs").ТМассивСтрок(); + Приложение.Опция("ftp-create-dirs").ТМассивБулево(); Приложение.Опция("ftp-method").ТМассивСтрок(); - Приложение.Опция("ftp-pasv").ТМассивСтрок(); + Приложение.Опция("ftp-pasv").ТМассивБулево(); Приложение.Опция("P ftp-port").ТМассивСтрок(); - Приложение.Опция("ftp-pret").ТМассивСтрок(); - Приложение.Опция("ftp-skip-pasv-ip").ТМассивСтрок(); - Приложение.Опция("ftp-ssl-ccc").ТМассивСтрок(); + Приложение.Опция("ftp-pret").ТМассивБулево(); + Приложение.Опция("ftp-skip-pasv-ip").ТМассивБулево(); + Приложение.Опция("ftp-ssl-ccc").ТМассивБулево(); Приложение.Опция("ftp-ssl-ccc-mode").ТМассивСтрок(); - Приложение.Опция("ftp-ssl-control").ТМассивСтрок(); - Приложение.Опция("g globoff").ТМассивСтрок(); + Приложение.Опция("ftp-ssl-control").ТМассивБулево(); + Приложение.Опция("g globoff").ТМассивБулево(); Приложение.Опция("happy-eyeballs-timeout-ms").ТМассивСтрок(); Приложение.Опция("haproxy-clientip").ТМассивСтрок(); - Приложение.Опция("haproxy-protocol").ТМассивСтрок(); + Приложение.Опция("haproxy-protocol").ТМассивБулево(); Приложение.Опция("h help").ТМассивСтрок(); Приложение.Опция("hostpubmd5").ТМассивСтрок(); Приложение.Опция("hostpubsha256").ТМассивСтрок(); Приложение.Опция("hsts").ТМассивСтрок(); - Приложение.Опция("http0").ТМассивСтрок(); - Приложение.Опция("http1").ТМассивСтрок(); - Приложение.Опция("http2").ТМассивСтрок(); - Приложение.Опция("http2-prior-knowledge").ТМассивСтрок(); - Приложение.Опция("http3").ТМассивСтрок(); - Приложение.Опция("http3-only").ТМассивСтрок(); - Приложение.Опция("ignore-content-length").ТМассивСтрок(); - Приложение.Опция("k insecure").ТМассивСтрок(); + Приложение.Опция("http0.9").ТМассивБулево(); + Приложение.Опция("0 http1.0").ТМассивБулево(); + Приложение.Опция("http1.1").ТМассивБулево(); + Приложение.Опция("http2").ТМассивБулево(); + Приложение.Опция("http2-prior-knowledge").ТМассивБулево(); + Приложение.Опция("http3").ТМассивБулево(); + Приложение.Опция("http3-only").ТМассивБулево(); + Приложение.Опция("ignore-content-length").ТМассивБулево(); + Приложение.Опция("k insecure").ТМассивБулево(); Приложение.Опция("interface").ТМассивСтрок(); Приложение.Опция("ip-tos").ТМассивСтрок(); Приложение.Опция("ipfs-gateway").ТМассивСтрок(); - Приложение.Опция("j junk-session-cookies").ТМассивСтрок(); + Приложение.Опция("4 ipv4").ТМассивБулево(); + Приложение.Опция("6 ipv6").ТМассивБулево(); + Приложение.Опция("j junk-session-cookies").ТМассивБулево(); Приложение.Опция("keepalive-cnt").ТМассивСтрок(); Приложение.Опция("keepalive-time").ТМассивСтрок(); Приложение.Опция("key").ТМассивСтрок(); @@ -736,148 +739,151 @@ Приложение.Опция("krb").ТМассивСтрок(); Приложение.Опция("libcurl").ТМассивСтрок(); Приложение.Опция("limit-rate").ТМассивСтрок(); - Приложение.Опция("l list-only").ТМассивСтрок(); + Приложение.Опция("l list-only").ТМассивБулево(); Приложение.Опция("local-port").ТМассивСтрок(); - Приложение.Опция("L location").ТМассивСтрок(); - Приложение.Опция("location-trusted").ТМассивСтрок(); + Приложение.Опция("L location").ТМассивБулево(); + Приложение.Опция("location-trusted").ТМассивБулево(); Приложение.Опция("login-options").ТМассивСтрок(); Приложение.Опция("mail-auth").ТМассивСтрок(); Приложение.Опция("mail-from").ТМассивСтрок(); Приложение.Опция("mail-rcpt").ТМассивСтрок(); - Приложение.Опция("mail-rcpt-allowfails").ТМассивСтрок(); - Приложение.Опция("M manual").ТМассивСтрок(); + Приложение.Опция("mail-rcpt-allowfails").ТМассивБулево(); + Приложение.Опция("M manual").ТМассивБулево(); Приложение.Опция("max-filesize").ТМассивСтрок(); Приложение.Опция("max-redirs").ТМассивСтрок(); - Приложение.Опция("metalink").ТМассивСтрок(); - Приложение.Опция("mptcp").ТМассивСтрок(); - Приложение.Опция("negotiate").ТМассивСтрок(); - Приложение.Опция("n netrc").ТМассивСтрок(); + Приложение.Опция("metalink").ТМассивБулево(); + Приложение.Опция("mptcp").ТМассивБулево(); + Приложение.Опция("negotiate").ТМассивБулево(); + Приложение.Опция("n netrc").ТМассивБулево(); Приложение.Опция("netrc-file").ТМассивСтрок(); - Приложение.Опция("netrc-optional").ТМассивСтрок(); - Приложение.Опция("no-alpn").ТМассивСтрок(); - Приложение.Опция("N no-buffer").ТМассивСтрок(); - Приложение.Опция("no-clobber").ТМассивСтрок(); - Приложение.Опция("no-keepalive").ТМассивСтрок(); - Приложение.Опция("no-npn").ТМассивСтрок(); - Приложение.Опция("no-progress-meter").ТМассивСтрок(); - Приложение.Опция("no-sessionid").ТМассивСтрок(); + Приложение.Опция("netrc-optional").ТМассивБулево(); + Приложение.Опция("no-alpn").ТМассивБулево(); + Приложение.Опция("N no-buffer").ТМассивБулево(); + Приложение.Опция("no-clobber").ТМассивБулево(); + Приложение.Опция("no-keepalive").ТМассивБулево(); + Приложение.Опция("no-npn").ТМассивБулево(); + Приложение.Опция("no-progress-meter").ТМассивБулево(); + Приложение.Опция("no-sessionid").ТМассивБулево(); Приложение.Опция("noproxy").ТМассивСтрок(); - Приложение.Опция("ntlm").ТМассивСтрок(); - Приложение.Опция("ntlm-wb").ТМассивСтрок(); + Приложение.Опция("ntlm").ТМассивБулево(); + Приложение.Опция("ntlm-wb").ТМассивБулево(); Приложение.Опция("oauth2-bearer").ТМассивСтрок(); - Приложение.Опция("Z parallel").ТМассивСтрок(); - Приложение.Опция("parallel-immediate").ТМассивСтрок(); + Приложение.Опция("Z parallel").ТМассивБулево(); + Приложение.Опция("parallel-immediate").ТМассивБулево(); Приложение.Опция("parallel-max").ТМассивСтрок(); Приложение.Опция("pass").ТМассивСтрок(); - Приложение.Опция("path-as-is").ТМассивСтрок(); + Приложение.Опция("path-as-is").ТМассивБулево(); Приложение.Опция("pinnedpubkey").ТМассивСтрок(); - Приложение.Опция("post301").ТМассивСтрок(); - Приложение.Опция("post302").ТМассивСтрок(); - Приложение.Опция("post303").ТМассивСтрок(); - Приложение.Опция("preproxy").ТМассивСтрок(); + Приложение.Опция("post301").ТМассивБулево(); + Приложение.Опция("post302").ТМассивБулево(); + Приложение.Опция("post303").ТМассивБулево(); + Приложение.Опция("preproxy").ТМассивБулево(); Приложение.Опция("proto").ТМассивСтрок(); Приложение.Опция("proto-default").ТМассивСтрок(); Приложение.Опция("proto-redir").ТМассивСтрок(); - Приложение.Опция("proxy-anyauth").ТМассивСтрок(); - Приложение.Опция("proxy-ca-native").ТМассивСтрок(); + Приложение.Опция("proxy-anyauth").ТМассивБулево(); + Приложение.Опция("proxy-ca-native").ТМассивБулево(); Приложение.Опция("proxy-cacert").ТМассивСтрок(); Приложение.Опция("proxy-capath").ТМассивСтрок(); Приложение.Опция("proxy-cert").ТМассивСтрок(); Приложение.Опция("proxy-cert-type").ТМассивСтрок(); Приложение.Опция("proxy-ciphers").ТМассивСтрок(); Приложение.Опция("proxy-crlfile").ТМассивСтрок(); - Приложение.Опция("proxy-digest").ТМассивСтрок(); + Приложение.Опция("proxy-digest").ТМассивБулево(); Приложение.Опция("proxy-header").ТМассивСтрок(); - Приложение.Опция("proxy-http2").ТМассивСтрок(); - Приложение.Опция("proxy-insecure").ТМассивСтрок(); + Приложение.Опция("proxy-http2").ТМассивБулево(); + Приложение.Опция("proxy-insecure").ТМассивБулево(); Приложение.Опция("proxy-key").ТМассивСтрок(); Приложение.Опция("proxy-key-type").ТМассивСтрок(); - Приложение.Опция("proxy-negotiate").ТМассивСтрок(); + Приложение.Опция("proxy-negotiate").ТМассивБулево(); Приложение.Опция("proxy-pass").ТМассивСтрок(); Приложение.Опция("proxy-pinnedpubkey").ТМассивСтрок(); Приложение.Опция("proxy-service-name").ТМассивСтрок(); - Приложение.Опция("proxy-ssl-allow-beast").ТМассивСтрок(); - Приложение.Опция("proxy-ssl-auto-client-cert").ТМассивСтрок(); + Приложение.Опция("proxy-ssl-allow-beast").ТМассивБулево(); + Приложение.Опция("proxy-ssl-auto-client-cert").ТМассивБулево(); Приложение.Опция("proxy-tls13-ciphers").ТМассивСтрок(); Приложение.Опция("proxy-tlsauthtype").ТМассивСтрок(); Приложение.Опция("proxy-tlspassword").ТМассивСтрок(); Приложение.Опция("proxy-tlsuser").ТМассивСтрок(); - Приложение.Опция("proxy-tlsv1").ТМассивСтрок(); - Приложение.Опция("proxy1").ТМассивСтрок(); - Приложение.Опция("p proxytunnel").ТМассивСтрок(); + Приложение.Опция("proxy-tlsv1").ТМассивБулево(); + Приложение.Опция("proxy1.0").ТМассивСтрок(); + Приложение.Опция("p proxytunnel").ТМассивБулево(); Приложение.Опция("pubkey").ТМассивСтрок(); Приложение.Опция("Q quote").ТМассивСтрок(); Приложение.Опция("random-file").ТМассивСтрок(); Приложение.Опция("r range").ТМассивСтрок(); Приложение.Опция("rate").ТМассивСтрок(); - Приложение.Опция("raw").ТМассивСтрок(); + Приложение.Опция("raw").ТМассивБулево(); Приложение.Опция("e referer").ТМассивСтрок(); - Приложение.Опция("J remote-header-name").ТМассивСтрок(); - Приложение.Опция("R remote-time").ТМассивСтрок(); - Приложение.Опция("remove-on-error").ТМассивСтрок(); + Приложение.Опция("J remote-header-name").ТМассивБулево(); + Приложение.Опция("R remote-time").ТМассивБулево(); + Приложение.Опция("remove-on-error").ТМассивБулево(); Приложение.Опция("request-target").ТМассивСтрок(); Приложение.Опция("resolve").ТМассивСтрок(); Приложение.Опция("retry").ТМассивСтрок(); - Приложение.Опция("retry-all-errors").ТМассивСтрок(); - Приложение.Опция("retry-connrefused").ТМассивСтрок(); + Приложение.Опция("retry-all-errors").ТМассивБулево(); + Приложение.Опция("retry-connrefused").ТМассивБулево(); Приложение.Опция("retry-delay").ТМассивСтрок(); Приложение.Опция("retry-max-time").ТМассивСтрок(); Приложение.Опция("sasl-authzid").ТМассивСтрок(); - Приложение.Опция("sasl-ir").ТМассивСтрок(); + Приложение.Опция("sasl-ir").ТМассивБулево(); Приложение.Опция("service-name").ТМассивСтрок(); - Приложение.Опция("S show-error").ТМассивСтрок(); - Приложение.Опция("i show-headers").ТМассивСтрок(); - Приложение.Опция("s silent").ТМассивСтрок(); - Приложение.Опция("skip-existing").ТМассивСтрок(); + Приложение.Опция("S show-error").ТМассивБулево(); + Приложение.Опция("i show-headers").ТМассивБулево(); + Приложение.Опция("s silent").ТМассивБулево(); + Приложение.Опция("skip-existing").ТМассивБулево(); Приложение.Опция("socks4").ТМассивСтрок(); Приложение.Опция("socks4a").ТМассивСтрок(); Приложение.Опция("socks5").ТМассивСтрок(); - Приложение.Опция("socks5-basic").ТМассивСтрок(); - Приложение.Опция("socks5-gssapi").ТМассивСтрок(); - Приложение.Опция("socks5-gssapi-nec").ТМассивСтрок(); + Приложение.Опция("socks5-basic").ТМассивБулево(); + Приложение.Опция("socks5-gssapi").ТМассивБулево(); + Приложение.Опция("socks5-gssapi-nec").ТМассивБулево(); Приложение.Опция("socks5-gssapi-service").ТМассивСтрок(); Приложение.Опция("socks5-hostname").ТМассивСтрок(); Приложение.Опция("Y speed-limit").ТМассивСтрок(); Приложение.Опция("y speed-time").ТМассивСтрок(); - Приложение.Опция("ssl").ТМассивСтрок(); - Приложение.Опция("ssl-allow-beast").ТМассивСтрок(); - Приложение.Опция("ssl-auto-client-cert").ТМассивСтрок(); - Приложение.Опция("ssl-no-revoke").ТМассивСтрок(); - Приложение.Опция("ssl-reqd").ТМассивСтрок(); - Приложение.Опция("ssl-revoke-best-effort").ТМассивСтрок(); + Приложение.Опция("ssl").ТМассивБулево(); + Приложение.Опция("ssl-allow-beast").ТМассивБулево(); + Приложение.Опция("ssl-auto-client-cert").ТМассивБулево(); + Приложение.Опция("ssl-no-revoke").ТМассивБулево(); + Приложение.Опция("ssl-reqd").ТМассивБулево(); + Приложение.Опция("ssl-revoke-best-effort").ТМассивБулево(); + Приложение.Опция("2 sslv2").ТМассивБулево(); + Приложение.Опция("3 sslv3").ТМассивБулево(); Приложение.Опция("stderr").ТМассивСтрок(); - Приложение.Опция("styled-output").ТМассивСтрок(); - Приложение.Опция("suppress-connect-headers").ТМассивСтрок(); - Приложение.Опция("tcp-fastopen").ТМассивСтрок(); - Приложение.Опция("tcp-nodelay").ТМассивСтрок(); + Приложение.Опция("styled-output").ТМассивБулево(); + Приложение.Опция("suppress-connect-headers").ТМассивБулево(); + Приложение.Опция("tcp-fastopen").ТМассивБулево(); + Приложение.Опция("tcp-nodelay").ТМассивБулево(); Приложение.Опция("t telnet-option").ТМассивСтрок(); Приложение.Опция("tftp-blksize").ТМассивСтрок(); - Приложение.Опция("tftp-no-options").ТМассивСтрок(); + Приложение.Опция("tftp-no-options").ТМассивБулево(); Приложение.Опция("z time-cond").ТМассивСтрок(); - Приложение.Опция("tls-earlydata").ТМассивСтрок(); + Приложение.Опция("tls-earlydata").ТМассивБулево(); Приложение.Опция("tls-max").ТМассивСтрок(); Приложение.Опция("tls13-ciphers").ТМассивСтрок(); Приложение.Опция("tlsauthtype").ТМассивСтрок(); Приложение.Опция("tlspassword").ТМассивСтрок(); Приложение.Опция("tlsuser").ТМассивСтрок(); - Приложение.Опция("tlsv1").ТМассивСтрок(); - Приложение.Опция("tlsv1").ТМассивСтрок(); - Приложение.Опция("tlsv1").ТМассивСтрок(); - Приложение.Опция("tlsv1").ТМассивСтрок(); - Приложение.Опция("tr-encoding").ТМассивСтрок(); + Приложение.Опция("1 tlsv1").ТМассивБулево(); + Приложение.Опция("tlsv1.0").ТМассивБулево(); + Приложение.Опция("tlsv1.1").ТМассивБулево(); + Приложение.Опция("tlsv1.2").ТМассивБулево(); + Приложение.Опция("tlsv1.3").ТМассивБулево(); + Приложение.Опция("tr-encoding").ТМассивБулево(); Приложение.Опция("trace").ТМассивСтрок(); Приложение.Опция("trace-ascii").ТМассивСтрок(); Приложение.Опция("trace-config").ТМассивСтрок(); - Приложение.Опция("trace-ids").ТМассивСтрок(); - Приложение.Опция("trace-time").ТМассивСтрок(); + Приложение.Опция("trace-ids").ТМассивБулево(); + Приложение.Опция("trace-time").ТМассивБулево(); Приложение.Опция("unix-socket").ТМассивСтрок(); - Приложение.Опция("B use-ascii").ТМассивСтрок(); + Приложение.Опция("B use-ascii").ТМассивБулево(); Приложение.Опция("variable").ТМассивСтрок(); - Приложение.Опция("v verbose").ТМассивСтрок(); - Приложение.Опция("V version").ТМассивСтрок(); + Приложение.Опция("v verbose").ТМассивБулево(); + Приложение.Опция("V version").ТМассивБулево(); Приложение.Опция("vlan-priority").ТМассивСтрок(); Приложение.Опция("w write-out").ТМассивСтрок(); - Приложение.Опция("xattr").ТМассивСтрок(); + Приложение.Опция("xattr").ТМассивБулево(); КонецЕсли; Приложение.УстановитьОсновноеДействие(ЭтотОбъект, "ОбработатьКоманду"); diff --git a/tools/ПодготовкаОпцийИзСайтаCurl.os b/tools/ПодготовкаОпцийИзСайтаCurl.os index 20fdf80..ec5968e 100644 --- a/tools/ПодготовкаОпцийИзСайтаCurl.os +++ b/tools/ПодготовкаОпцийИзСайтаCurl.os @@ -8,13 +8,17 @@ Ответ = Соединение.Получить(Запрос); ПрверяемаяСтрока = Ответ.ПолучитьТелоКакСтроку(); - РегулярноеВыражение = Новый РегулярноеВыражение("([a-zA-Z0-9-,\s]*)(.*)"); + РегулярноеВыражение = Новый РегулярноеВыражение("

([a-zA-Z0-9-,.\s]*)(.*)"); Совпадения = РегулярноеВыражение.НайтиСовпадения(ПрверяемаяСтрока); МассивОпций = Новый Массив(); Для Каждого Совпадение Из Совпадения Цикл Опции = СокрЛП(СтрЗаменить(Совпадение.Группы[2].Значение, ",", "")); - МассивОпций.Добавить(Опции); + + КонецСтроки = Совпадение.Группы[3].Значение; + ЭтоБулево = Не (СтрНайти(КонецСтроки, "<") И СтрНайти(КонецСтроки, ">")); + + МассивОпций.Добавить(Новый Структура("Опции, ЭтоБулево", Опции, ЭтоБулево)); КонецЦикла; Возврат МассивОпций; @@ -35,8 +39,8 @@ ПоддерживаемыеОпцииСоответствие.Вставить(Опция, Истина); КонецЦикла; - Для Каждого ОпцииСтрока Из Опции Цикл - ОпцииБезОбработки = СтрРазделить(ОпцииСтрока, " "); + Для Каждого Строка Из Опции Цикл + ОпцииБезОбработки = СтрРазделить(Строка.Опции, " "); Если ПоддерживаемыеОпцииСоответствие.Получить(ОпцииБезОбработки[0]) = Неопределено Тогда ОпцииОбработанные = Новый Массив(); Для Каждого Опция Из ОпцииБезОбработки Цикл @@ -44,7 +48,10 @@ Опция = Сред(Опция, ПозицияНаименования); ОпцииОбработанные.Добавить(Опция); КонецЦикла; - Результат.ДобавитьСтроку("Приложение.Опция(""" + СтрСоединить(ОпцииОбработанные, " ") + """).ТМассивСтрок();"); + Текст = СтрШаблон("Приложение.Опция(""%1"").%2();", + СтрСоединить(ОпцииОбработанные, " "), + ?(Строка.ЭтоБулево, "ТМассивБулево", "ТМассивСтрок")); + Результат.ДобавитьСтроку(Текст); КонецЕсли; КонецЦикла;