j1-template 2021.2.5 → 2021.2.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/modules/connectors/translators/google-translator.html +2 -1
- data/_layouts/default.html +0 -1
- data/assets/data/iso-639-language-codes-flags.json +224 -0
- data/assets/data/{translator_languages.json → iso-639-language-codes.json} +111 -142
- data/assets/data/translator.html +23 -19
- data/assets/themes/j1/adapter/js/translator.1.js +525 -0
- data/assets/themes/j1/adapter/js/translator.js +107 -168
- data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +27 -12
- data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.css +27 -12
- data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +59 -22
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -1
- data/assets/themes/j1/modules/translator/js/translator.js +217 -242
- data/assets/themes/j1/modules/translator/js/translator.min.js +2 -2
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +1 -1
- data/lib/starter_web/_config.yml +1 -1
- data/lib/starter_web/_data/j1_config.yml +2 -22
- data/lib/starter_web/_data/modules/defaults/translator.yml +77 -64
- data/lib/starter_web/_data/modules/translator.yml +1 -0
- data/lib/starter_web/_includes/attributes.asciidoc +1 -1
- data/lib/starter_web/_plugins/lunr_index.rb +1 -1
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +3 -3
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +5 -4
- data/assets/data/msdropdown.json +0 -155
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
# -----------------------------------------------------------------------------
|
3
|
-
# ~/assets/themes/j1/modules/translator/js/translator.js
|
3
|
+
# ~/assets/themes/j1/modules/translator/js/translator.min.js
|
4
4
|
# Provides JS Core functions|API for J1 Module Translator
|
5
5
|
#
|
6
6
|
# Product/Info:
|
@@ -12,4 +12,4 @@
|
|
12
12
|
# See: https://github.com/jekyll-one/J1 Template/blob/master/LICENSE
|
13
13
|
# -----------------------------------------------------------------------------
|
14
14
|
*/
|
15
|
-
|
15
|
+
function Translator(d){var p=this;var u=log4javascript.getLogger("j1.core.translator");var l=new liteURL(window.location.href);var c=(l.protocol.includes("https"))?true:false;var q=false;var g;var s;this.props={contentURL:"/assets/data/translator",cookieName:"j1.user.state",cookieConsentName:"j1.user.consent",cookieStorageDays:365,cookieSameSite:"Strict",cookieSecure:c,translationEnabled:false,disableLanguageSelector:false,translatorName:"google",translationLanguages:"all",translationLanguage:"auto",translateAllPages:true,hideSuggestionBox:true,hidePoweredBy:true,hideTopFrame:true,dialogLanguage:"content",dialogLanguages:["en","de"],dialogContainerID:"translator-modal",xhrDataElement:"",postSelectionCallback:"",};for(var e in d){this.props[e]=d[e]}if(this.props.dialogLanguage.indexOf("-")!==-1){this.props.dialogLanguage=this.props.dialogLanguage.split("-")[0]}if(!this.props.dialogLanguages.includes(this.props.dialogLanguage)){this.props.dialogLanguage=this.props.dialogLanguages[0]}this.props.xhrDataElement=this.props.xhrDataElement+"-"+this.props.dialogLanguage;u.info("\ninitializing core module: started");u.info("\nstate: started");var f={set:function(x,z,C,y,A){var B=window.btoa(z);var v="";if(C){var w=new Date();w.setTime(w.getTime()+(C*24*60*60*1000));v="; expires="+w.toUTCString()}if(A){document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+"; secure="+A+";"}else{document.cookie=x+"="+(B||"")+v+"; Path=/; SameSite="+y+";"}},get:function(w){var z=w+"=";var v=document.cookie.split(";");for(var x=0;x<v.length;x++){var B=v[x];while(B.charAt(0)===" "){B=B.substring(1,B.length)}if(B.indexOf(z)===0){var A=B.substring(z.length,B.length);var y=window.atob(A);return y}}return undefined}};var n={documentReady:function(v){if(document.readyState!=="loading"){v()}else{document.addEventListener("DOMContentLoaded",v)}}};function t(){var v={};var w=false;var x=0;var y=arguments.length;if(Object.prototype.toString.call(arguments[0])==="[object Boolean]"){w=arguments[0];x++}var A=function(B){for(var C in B){if(Object.prototype.hasOwnProperty.call(B,C)){if(w&&Object.prototype.toString.call(B[C])==="[object Object]"){v[C]=t(true,v[C],B[C])}else{v[C]=B[C]}}}};for(;x<y;x++){var z=arguments[x];A(z)}return v}function h(A,x){var v=Array.prototype.slice.call(arguments,2);var z=A.split(".");var y=z.pop();for(var w=0;w<z.length;w++){x=x[z[w]]}return x[y].apply(x,v)}function j(w){var v;var x=t({size:0,width:250,multiple:false,selectedIndex:1,enableAutoFilter:false,visibleRows:null,},w);v="#"+x.selector;$.ajax({url:x.url,dataType:"json",success:function(A){var z=[];if(p.props.translationLanguages.includes("all")){z=A[x.elm]}else{for(var y=0;y<A[x.elm].length;y++){if(p.props.translationLanguages.includes(A[x.elm][y].value)){z.push(A[x.elm][y])}}}if(x.visibleRows>z.length){x.visibleRows=z.length}MsDropdown.make(v,{byJson:{data:z,name:x.name,size:x.size,width:x.width,multiple:x.multiple,},enableAutoFilter:x.enableAutoFilter,visibleRows:x.visibleRows,})},error:function(y,A,z){u.error("\nfailed to retrieve JSON data from: "+x.url)}})}function m(){n.documentReady(function(){p.modal=document.getElementById(p.props.dialogContainerID);if(!p.modal){u.info("\nload consent modal");p.modal=document.createElement("div");p.modal.id=p.props.dialogContainerID;p.modal.setAttribute("class","modal fade");p.modal.setAttribute("tabindex","-1");p.modal.setAttribute("role","dialog");p.modal.setAttribute("aria-labelledby",p.props.dialogContainerID);document.body.append(p.modal);p.$modal=$(p.modal);p.$modal.on("show.bs.modal",function(){var w;var x;u.info("\nshow.bs.modal: entered");$.when(j({url:"/assets/data/iso-639-language-codes-flags.json",elm:"iso-639-languages",selector:"dropdownJSON",width:400,visibleRows:8,})).then(function(y){u.info("\ncreating msDropdown from JSON data: finished")})});p.$modal.on("shown.bs.modal",function(){var w=document.getElementById("dropdownJSON").msDropdown;if(!w.length){u.error("\nno msDropdown found in translation dialog");p.$modal.hide()}else{if(p.props.translationLanguage==="auto"){g=navigator.language||navigator.userLanguage;s=g.split("-")[0]}w.selectedIndex=$("#dropdownJSON option[value="+s+"]").index();if(p.props.disableLanguageSelector){w.disabled=true}$("#dropdownJSON").show();$("body").addClass("stop-scrolling")}});p.$modal.on("hidden.bs.modal",function(){$("body").removeClass("stop-scrolling");h(p.props.postSelectionCallback,window)});var v=p.props.contentURL+"/index.html";$.get(v).done(function(w){u.info("\nloading consent modal: successfully");p.modal.innerHTML=w;p.modal.innerHTML=$("#"+p.props.xhrDataElement).eq(0).html();$(p.modal).modal({backdrop:"static",keyboard:false});p.$buttonDoNotAgree=$("#translator-buttonDoNotAgree");p.$buttonAgree=$("#translator-buttonAgree");p.$buttonSave=$("#translator-buttonSave");p.$buttonAgreeAll=$("#translator-buttonAgreeAll");u.info("\nload/initialze options from cookie");k();i();$("#google-options").on("hide.bs.collapse",function(){q=false;k()}).on("show.bs.collapse",function(){q=true;k()});u.info("\ninitialze button event handler");p.$buttonDoNotAgree.click(function(){b()});p.$buttonAgree.click(function(){o()});p.$buttonSave.click(function(){$("#google-options").collapse("hide");r();i()});p.$buttonAgreeAll.click(function(){$("#google-options").collapse("hide");o()})}).fail(function(){u.error("\nloading translator dialog (modal): failed");u.warn("\nprobably no|wrong `contentURL` set")})}else{p.$modal.modal("show")}}.bind(this))}function i(){var x=p.getSettings();if(x){for(var w in x){var v=p.$modal.find("#google-options .translator-option[data-name="+w+'] input[type="checkbox"]');v.prop("checked",x[w])}}}function k(){if(q){p.$buttonDoNotAgree.hide();p.$buttonAgree.hide();p.$buttonSave.show();p.$buttonAgreeAll.show()}else{p.$buttonDoNotAgree.show();p.$buttonAgree.show();p.$buttonSave.hide();p.$buttonAgreeAll.hide()}}function a(w){var v=p.$modal.find("#google-options .translator-option");var y={};for(var z=0;z<v.length;z++){var B=v[z];var x=B.getAttribute("data-name");if(x==="necessary"){y[x]=true}else{if(w===undefined){var A=$(B).find('input[type="checkbox"]');y[x]=A.prop("checked")}else{y[x]=!!w}}}return y}function o(){var w=a(true);var v={};v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(w),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function b(){var v=a();v.translationEnabled=false;f.set(p.props.cookieName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}function r(){var w;var v={};w=a();v=JSON.parse(f.get(p.props.cookieConsentName));v.analysis=w.analysis;v.personalization=w.personalization;f.set(p.props.cookieConsentName,JSON.stringify(v),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);f.set(p.props.cookieName,JSON.stringify(a()),p.props.cookieStorageDays,p.props.sameSite,p.props.secure);p.$modal.modal("hide")}this.showDialog=function(){m()};this.getSettings=function(w){var v=f.get(p.props.cookieName);if(v){var x=JSON.parse(f.get(p.props.cookieName));if(w===undefined){return x}else{if(x){return x[w]}else{return false}}}else{return undefined}};u.info("\ninitializing core module finished");u.info("\nstate: finished")};
|
data/lib/j1/version.rb
CHANGED
data/lib/starter_web/Gemfile
CHANGED
@@ -53,7 +53,7 @@ gem 'jekyll', '~> 4.2'
|
|
53
53
|
|
54
54
|
# Theme Rubies, default: J1 Template (NOT used for the development system)
|
55
55
|
#
|
56
|
-
gem 'j1-template', '~> 2021.2.
|
56
|
+
gem 'j1-template', '~> 2021.2.9'
|
57
57
|
|
58
58
|
# ------------------------------------------------------------------------------
|
59
59
|
# PRODUCTION: Gem needed for the Jekyll and J1 prod environment
|
data/lib/starter_web/_config.yml
CHANGED
@@ -53,7 +53,7 @@ environment: development
|
|
53
53
|
# ------------------------------------------------------------------------------
|
54
54
|
# Sets the build version of J1 Template Gem
|
55
55
|
#
|
56
|
-
version: 2021.2.
|
56
|
+
version: 2021.2.9
|
57
57
|
|
58
58
|
# version
|
59
59
|
# ------------------------------------------------------------------------------
|
@@ -54,6 +54,7 @@ typography:
|
|
54
54
|
rtext: true
|
55
55
|
rtext_size: 300
|
56
56
|
|
57
|
+
|
57
58
|
# ==============================================================================
|
58
59
|
# URL configuration
|
59
60
|
#
|
@@ -284,33 +285,13 @@ rouge:
|
|
284
285
|
# https://developer.mozilla.org/en-US/docs/Web/HTML/Preloading_content
|
285
286
|
# https://github.com/GoogleChromeLabs/critters/issues/18 (crossorigin)
|
286
287
|
# ------------------------------------------------------------------------------
|
287
|
-
# font:
|
288
|
-
# preload: true
|
289
|
-
# cors: crossorigin
|
290
|
-
# fonts: [
|
291
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Thin.woff,
|
292
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Thin.woff2,
|
293
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Light.woff,
|
294
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Light.woff2,
|
295
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Regular.woff,
|
296
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Regular.woff2,
|
297
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Medium.woff,
|
298
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Medium.woff2,
|
299
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Bold.woff,
|
300
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Bold.woff2,
|
301
|
-
# /assets/themes/j1/core/fonts/material_design_icons/fonts/materialdesignicons-webfont.woff,
|
302
|
-
# /assets/themes/j1/core/fonts/material_design_icons/fonts/materialdesignicons-webfont.woff2
|
303
|
-
# ]
|
304
288
|
preload:
|
305
289
|
|
306
290
|
font:
|
307
291
|
preload: false
|
308
292
|
cors: crossorigin
|
309
293
|
fonts: []
|
310
|
-
|
311
|
-
# /assets/themes/j1/core/fonts/roboto/fonts/Roboto-Regular.woff,
|
312
|
-
# /assets/themes/j1/core/fonts/material_design_icons/fonts/materialdesignicons-webfont.woff
|
313
|
-
# ]
|
294
|
+
|
314
295
|
css:
|
315
296
|
preload: true
|
316
297
|
css: [
|
@@ -350,7 +331,6 @@ preconnect:
|
|
350
331
|
enabled: true
|
351
332
|
urls: [ "https://bootswatch.com" ]
|
352
333
|
|
353
|
-
|
354
334
|
# ------------------------------------------------------------------------------
|
355
335
|
# Font AweSome settings
|
356
336
|
#
|
@@ -20,100 +20,82 @@ about_config:
|
|
20
20
|
location: _data/modules/defaults/translator.yml
|
21
21
|
|
22
22
|
# ------------------------------------------------------------------------------
|
23
|
-
# Default settings
|
23
|
+
# Default translator settings (general)
|
24
24
|
#
|
25
25
|
defaults:
|
26
26
|
|
27
27
|
enabled: false
|
28
28
|
|
29
29
|
translationEnabled: false
|
30
|
-
translatorName: google
|
31
|
-
languages: [ all ] # supported languages
|
32
|
-
translationLanguage: auto # detect translation lang from browser
|
33
|
-
translateAllPages: true # enable tranlation on all pages
|
34
30
|
hideTranslatorIcon: false # hide translator icon if translation not allowed (cookie consent)
|
35
|
-
|
36
|
-
|
37
|
-
|
31
|
+
disableLanguageSelector: false # disable language dropdown for translation in dialog (modal)
|
32
|
+
translationLanguage: auto # detect translation language from browser
|
33
|
+
translateAllPages: true # enable translation for all pages
|
38
34
|
reloadPageOnChange: true # reload current page if user settings has been changed
|
39
|
-
postSelectionCallback: j1.adapter.translator.cb # currently NOT used
|
40
35
|
|
41
36
|
contentURL: /assets/data/translator # dialogs (modals) for all supported translators|languages
|
42
37
|
dialogLanguage: auto # auto|content|one of dialogLanguages
|
43
|
-
dialogLanguages: [en,
|
38
|
+
dialogLanguages: [en,de] # supported dialog (modal) languages, defaults to FIRST language defined
|
44
39
|
cookieName: j1.user.translate # name of the user translation cookie (primary data)
|
45
40
|
cookieConsentName: j1.user.consent # name of the Cookie Consent Cookie (secondary data)
|
46
41
|
xhrDataElement: google-data # container for the language-specific modal (taken fromcontentURL)
|
47
42
|
dialogContainerID: translator-dialog # container, the dialog modal is (dynamically) loaded
|
48
43
|
|
49
|
-
|
44
|
+
# ------------------------------------------------------------------------------
|
45
|
+
# Default Google Translator settings
|
46
|
+
#
|
47
|
+
google:
|
48
|
+
|
49
|
+
postSelectionCallback: "j1.adapter.translator.cbGoogle" # callback to run the translation
|
50
|
+
hideSuggestionBox: true # disable suggestions on translated text
|
51
|
+
hidePoweredBy: true # disable label "Powered by Google"
|
52
|
+
hideTopFrame: true # disable the (google) translator frame
|
50
53
|
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
+
translationLanguages: [
|
55
|
+
af, sq, am, ar, hy, az, eu, be, bn,
|
56
|
+
bs, bg, km, ca, ny, zh-CN, zh-TW,
|
57
|
+
co, hr, cs, da, nl, en, et, tl, fi,
|
58
|
+
fr, fy, gl, ka, de, el, gu, ht, ha,
|
59
|
+
haw, iw, hi, hu, is, ig, id, ga, it,
|
60
|
+
ja, jw, kn, kk, rw, ko, ku, ky, lo,
|
61
|
+
lv, lt, mk, mg, ms, ml, mt, mi, mr,
|
62
|
+
mo, mn, ne, no, nn, or, ps, fa, pl,
|
63
|
+
pt, pa, ro, rm, ru, gd, sr, st, sn,
|
64
|
+
sd, si, sk, sl, so, es, su, sw, sv,
|
65
|
+
tg, ta, tt, te, th, tr, tk, ug, uk,
|
66
|
+
ur, uz, vi, cy, xh, yi, yo, zu
|
67
|
+
]
|
68
|
+
modal_settings:
|
54
69
|
|
55
|
-
|
56
|
-
|
70
|
+
title:
|
71
|
+
en: Google Translator
|
72
|
+
de: Google Übersetzer
|
73
|
+
|
74
|
+
body_text:
|
75
|
+
en: >
|
57
76
|
This website uses the free service <em>Google Translate</em> to
|
58
77
|
translate the content into 100+ languages in a matter of seconds.
|
59
78
|
The <b>language</b> for translation is taken <b>automatically</b>
|
60
79
|
from the language settings of your <b>browser</b>.
|
61
80
|
If you do <b>not</b> want translation anymore, <b>disable</b> the service
|
62
81
|
in section <b>My Settings</b>.
|
63
|
-
|
64
|
-
|
65
|
-
<!-- source language -->
|
66
|
-
<div id="google-translator-source-language" class="mb-3">
|
67
|
-
<select id="translate-source-language" name="translate-source-language" is="ms-dropdown">
|
68
|
-
<option value="BG" data-image-css="flag-icon flag-icon-bg rectangle size-md"> Bulgarian</option>
|
69
|
-
<option value="CS" data-image-css="flag-icon flag-icon-cz rectangle size-md"> Czech</option>
|
70
|
-
<option value="DA" data-image-css="flag-icon flag-icon-dk rectangle size-md"> Danish</option>
|
71
|
-
<option selected value="DE" data-image-css="flag-icon flag-icon-de rectangle size-md"> German</option>
|
72
|
-
<option value="EL" data-image-css="flag-icon flag-icon-gr rectangle size-md"> Greek</option>
|
73
|
-
<option value="ES" data-image-css="flag-icon flag-icon-es rectangle size-md"> Spanish</option>
|
74
|
-
<option value="EN" data-image-css="flag-icon flag-icon-gb rectangle size-md"> English</option>
|
75
|
-
<option value="EN-US" data-image-css="flag-icon flag-icon-us rectangle size-md"> English (American)</option>
|
76
|
-
<option value="EN-GB" data-image-css="flag-icon flag-icon-gb rectangle size-md"> English (British)</option>
|
77
|
-
<option value="ET" data-image-css="flag-icon flag-icon-ee rectangle size-md"> Estonian</option>
|
78
|
-
<option value="FI" data-image-css="flag-icon flag-icon-fi rectangle size-md"> Finnish</option>
|
79
|
-
<option value="FR" data-image-css="flag-icon flag-icon-fr rectangle size-md"> French</option>
|
80
|
-
<option value="HU" data-image-css="flag-icon flag-icon-hu rectangle size-md"> Hungarian</option>
|
81
|
-
<option value="IT" data-image-css="flag-icon flag-icon-it rectangle size-md"> Italian</option>
|
82
|
-
<option value="JA" data-image-css="flag-icon flag-icon-jp rectangle size-md"> Japanese</option>
|
83
|
-
<option value="LV" data-image-css="flag-icon flag-icon-lv rectangle size-md"> Latvian</option>
|
84
|
-
<option value="LT" data-image-css="flag-icon flag-icon-lt rectangle size-md"> Lithuanian</option>
|
85
|
-
<option value="NL" data-image-css="flag-icon flag-icon-nl rectangle size-md"> Dutch</option>
|
86
|
-
<option value="PL" data-image-css="flag-icon flag-icon-pl rectangle size-md"> Polish</option>
|
87
|
-
<option value="PT" data-image-css="flag-icon flag-icon-pt rectangle size-md"> Portuguese</option>
|
88
|
-
<option value="PT-PT" data-image-css="flag-icon flag-icon-pt rectangle size-md"> Portuguese (Portugal)</option>
|
89
|
-
<option value="PT-BR" data-image-css="flag-icon flag-icon-br rectangle size-md"> Portuguese (Brazilian)</option>
|
90
|
-
<option value="RO" data-image-css="flag-icon flag-icon-ro rectangle size-md"> Romanian</option>
|
91
|
-
<option value="RU" data-image-css="flag-icon flag-icon-ru rectangle size-md"> Russian</option>
|
92
|
-
<option value="SK" data-image-css="flag-icon flag-icon-sk rectangle size-md"> Slovak</option>
|
93
|
-
<option value="SL" data-image-css="flag-icon flag-icon-sl rectangle size-md"> Slovenian</option>
|
94
|
-
<option value="SV" data-image-css="flag-icon flag-icon-sk rectangle size-md"> Swedish</option>
|
95
|
-
<option value="ZH" data-image-css="flag-icon flag-icon-cn rectangle size-md"> Chinese</option> </select>
|
96
|
-
</div>
|
97
|
-
<!-- test element to create msDropdowns dynamically from JSON -->
|
98
|
-
<div id="dropdowsJSON" class="mb-3" style="display:none"></div>
|
99
|
-
<br>
|
100
|
-
|
101
|
-
de: >
|
82
|
+
|
83
|
+
de: >
|
102
84
|
Diese Website nutzt den kostenlosen Dienst <em>Google Translate</em>,
|
103
|
-
um die Inhalte in
|
85
|
+
um die Inhalte in sekundenschnelle in über 100+ Sprachen zu übersetzen.
|
104
86
|
Die <b>Sprache</b> für die Übersetzung wird <b>automatisch</b> aus den
|
105
87
|
Spracheinstellungen Ihres <b>Browsers</b> übernommen. Wenn Sie <b>keine</b>
|
106
88
|
Übersetzung mehr wünschen, <b>deaktivieren</b> Sie den Dienst im Abschnitt
|
107
89
|
<b>Meine Einstellungen</b>.
|
108
|
-
<br><br>
|
109
|
-
Ihre aktuelle Spracheinstellung für die Übersetzung ist:
|
110
|
-
<br><br>
|
111
|
-
<span id="translator-current-language"> <i class="flag-icon flag-icon-de rectangle size-md "></i> German <span>
|
112
|
-
<br>
|
113
90
|
|
114
|
-
|
91
|
+
language_selector_title:
|
92
|
+
|
93
|
+
en: "Your current language setting for translation is:"
|
94
|
+
de: "Ihre aktuelle Spracheinstellung für die Übersetzung ist:"
|
115
95
|
|
116
|
-
|
96
|
+
privacy_notice:
|
97
|
+
|
98
|
+
en: >
|
117
99
|
The free service from <em>Google Translate</em> uses cookies to provide
|
118
100
|
its services, personalize advertising and run traffic analysis To use the
|
119
101
|
service, your consent on using cookies is required. Find more information
|
@@ -125,7 +107,7 @@ defaults:
|
|
125
107
|
<br><br>
|
126
108
|
<code>Personalization</code> For translations, your consent on
|
127
109
|
<b>Personalization</b> with your <b>Privacy Settings</b> is required.
|
128
|
-
|
110
|
+
de: >
|
129
111
|
Der kostenlose Dienst von <em>Google Translate</em> verwendet Cookies
|
130
112
|
um seine Dienste bereitzustellen, Werbung zu personalisieren und
|
131
113
|
Verkehrsanalysen durchzuführen:
|
@@ -138,5 +120,36 @@ defaults:
|
|
138
120
|
Zustimmung zur <b>Personalisierung</b> in den Einstellungen <code>Ihre Privatsphäre</code>
|
139
121
|
erforderlich.
|
140
122
|
|
123
|
+
# ------------------------------------------------------------------------------
|
124
|
+
# Default Deepl Translator settings (currently NOT supported)
|
125
|
+
#
|
126
|
+
# deepl:
|
127
|
+
#
|
128
|
+
# postSelectionCallback: j1.adapter.translator.cbDeepl() # currently NOT used
|
129
|
+
# translationLanguages: [
|
130
|
+
# bg, cs, da, de, el, es, en, en-us,
|
131
|
+
# en-uk, et, ft, fr, hu, it, ja, lv,
|
132
|
+
# lt, nl, af, pt, pt-pt, pt-br, ro,
|
133
|
+
# ru, sk, sl, sv, zh-CN, zh-TW
|
134
|
+
# ]
|
135
|
+
#
|
136
|
+
# modal_settings:
|
137
|
+
#
|
138
|
+
# title:
|
139
|
+
# en: Deepl Translator
|
140
|
+
# de: Deepl Übersetzer
|
141
|
+
#
|
142
|
+
# body_text:
|
143
|
+
# en:
|
144
|
+
# de:
|
145
|
+
#
|
146
|
+
# language_selector_title:
|
147
|
+
# en:
|
148
|
+
# de:
|
149
|
+
#
|
150
|
+
# privacy_notice:
|
151
|
+
# en:
|
152
|
+
# de:
|
153
|
+
|
141
154
|
# ------------------------------------------------------------------------------
|
142
155
|
# END config
|
@@ -433,7 +433,7 @@ end::tables[]
|
|
433
433
|
// -----------------------------------------------------------------------------
|
434
434
|
tag::products[]
|
435
435
|
:j1--license: MIT License
|
436
|
-
:j1--version: 2021.2.
|
436
|
+
:j1--version: 2021.2.9
|
437
437
|
:j1--site-name: Jekyll One
|
438
438
|
end::products[]
|
439
439
|
|
@@ -57,12 +57,12 @@ resource_options:
|
|
57
57
|
// -----------------------------------------------------------------------------
|
58
58
|
J1 Template implements some incubating Ruby-based extensions for Asciidoctor.
|
59
59
|
Most extensions are based on the examples given with the
|
60
|
-
link:{asciidoctor
|
60
|
+
link:{url-asciidoctor--extensions-lab}[Asciidoctor Extensions Lab, {browser-window--new}].
|
61
61
|
If you simply want to use the extensions from this repository, go ahead to
|
62
|
-
link:{asciidoctor
|
62
|
+
link:{url-asciidoctor--extensions-use}[Using an extension, {browser-window--new}].
|
63
63
|
|
64
64
|
To create Asciidoc extensions on your own, it is highly recommended to read the
|
65
|
-
link:{asciidoctor-
|
65
|
+
link:{url-asciidoctor--extensions-manual}[extensions section, {browser-window--new}] in
|
66
66
|
the Asciidoctor user manual.
|
67
67
|
|
68
68
|
== Asciidoc Extensions
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: j1-template
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2021.2.
|
4
|
+
version: 2021.2.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- juergen_jekyll_one
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-10-
|
11
|
+
date: 2021-10-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -352,20 +352,20 @@ files:
|
|
352
352
|
- assets/data/galleries.json
|
353
353
|
- assets/data/gallery_customizer.html
|
354
354
|
- assets/data/hyvor.js
|
355
|
+
- assets/data/iso-639-language-codes-flags.json
|
356
|
+
- assets/data/iso-639-language-codes.json
|
355
357
|
- assets/data/mdi_icons.json
|
356
358
|
- assets/data/mdil_icons.json
|
357
359
|
- assets/data/menu.html
|
358
360
|
- assets/data/mmenu.html
|
359
361
|
- assets/data/mmenu_sidebar.html
|
360
362
|
- assets/data/mmenu_toc.html
|
361
|
-
- assets/data/msdropdown.json
|
362
363
|
- assets/data/news_panel_posts/index.html
|
363
364
|
- assets/data/panel.html
|
364
365
|
- assets/data/quicklinks.html
|
365
366
|
- assets/data/rtext_resizer.html
|
366
367
|
- assets/data/themes.json
|
367
368
|
- assets/data/translator.html
|
368
|
-
- assets/data/translator_languages.json
|
369
369
|
- assets/data/twa_v1.json
|
370
370
|
- assets/error_pages/HTTP204.html
|
371
371
|
- assets/error_pages/HTTP400.html
|
@@ -400,6 +400,7 @@ files:
|
|
400
400
|
- assets/themes/j1/adapter/js/rtextResizer.js
|
401
401
|
- assets/themes/j1/adapter/js/themer.js
|
402
402
|
- assets/themes/j1/adapter/js/toccer.js
|
403
|
+
- assets/themes/j1/adapter/js/translator.1.js
|
403
404
|
- assets/themes/j1/adapter/js/translator.js
|
404
405
|
- assets/themes/j1/core/country-flags/1x1/ad.svg
|
405
406
|
- assets/themes/j1/core/country-flags/1x1/ae.svg
|