From ad932997dc1ba07893f2e7192923006d6c294611 Mon Sep 17 00:00:00 2001 From: Steven Hunt Date: Thu, 30 Jun 2022 15:54:37 -0400 Subject: [PATCH 1/4] Add "testjam.io online IDE" to list of IDEs I am the author of testjam.io and I wanted to update the documentation to list it here as a tool which supports Cucumber. --- content/docs/tools/general.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/docs/tools/general.md b/content/docs/tools/general.md index 88ef1fd5..17ca371b 100644 --- a/content/docs/tools/general.md +++ b/content/docs/tools/general.md @@ -41,6 +41,7 @@ See the [Cucumber extension](https://extensions.panic.com/extensions/com.rpowell * [Java IDEs](/docs/tools/java#ides) * [Ruby IDEs](/docs/tools/ruby#ides) * [CukeTest](http://cuketest.com) is a Gherkin editor and Cucumber.js development tool. +* [testjam.io](https://testjam.io) is an online IDE for running and sharing Cucumber.js snippets. # Build Tools You can run Cucumber using build tools, rather than from the command line. From 74937897e591a6b4313407e8601c2bd2e126f834 Mon Sep 17 00:00:00 2001 From: aurelien-reeves Date: Mon, 4 Jul 2022 17:38:51 +0200 Subject: [PATCH 2/4] Make sure we always set a valid language --- themes/cucumber-sb/static/js/site.js | 46 +++++++--------------------- 1 file changed, 11 insertions(+), 35 deletions(-) diff --git a/themes/cucumber-sb/static/js/site.js b/themes/cucumber-sb/static/js/site.js index fa8c9b7b..6b841f04 100644 --- a/themes/cucumber-sb/static/js/site.js +++ b/themes/cucumber-sb/static/js/site.js @@ -120,36 +120,18 @@ function getLangFromUrl(){ // Activate -var supportedLanguages = [ - "java", - "javascript", - "ruby", - "kotlin", - "scala" -] - -var defaulLanguage = 'java' - ready(function() { - var selectedLang = getLangFromUrl(); - if((selectedLang == '' || selectedLang == null)){ - if(localStorage.getItem('language') == ''){ - showOnly(defaulLanguage) - localStorage.setItem('language', defaulLanguage) - }else{ - showOnly(localStorage.getItem('language')) - } - }else{ - if(supportedLanguages.includes(selectedLang)){ - showOnly(selectedLang) - }else{ - if(localStorage.getItem('language') == ''){ - showOnly(defaulLanguage) - localStorage.setItem('language', defaulLanguage) - }else{ - showOnly(localStorage.getItem('language')) - } - } + const supportedLanguages = [...document.querySelectorAll('.tabs li')].map((li) => li.getAttribute('data-language')) + const defaultLanguage = supportedLanguages[0] + const localLanguage = localStorage.getItem('language'); + const selectedLanguage = getLangFromUrl(); + + if (supportedLanguages.includes(selectedLanguage)) { + showOnly(selectedLanguage) + } else if (supportedLanguages.includes(localLanguage)) { + showOnly(localLanguage) + } else { + showOnly(defaultLanguage) } each(document, '.tabs li', function(li) { @@ -168,12 +150,6 @@ ready(function() { }) }) - var firstLi = document.querySelector('.tabs li') - if(firstLi) { - var language = localStorage.getItem('language') || firstLi.getAttribute('data-language') - showOnly(language) - } - // Toggle navbar menu var burger = document.querySelector('.navbar-burger') if(burger) { From 76bb5d309b37ce9c54ee6344a8bca44949ade5d3 Mon Sep 17 00:00:00 2001 From: aurelien-reeves Date: Mon, 4 Jul 2022 17:43:40 +0200 Subject: [PATCH 3/4] Prevent removing the prefered language when browsing a page without language tab --- themes/cucumber-sb/static/js/site.js | 38 +++++++++++++++------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/themes/cucumber-sb/static/js/site.js b/themes/cucumber-sb/static/js/site.js index 6b841f04..cfe27d9c 100644 --- a/themes/cucumber-sb/static/js/site.js +++ b/themes/cucumber-sb/static/js/site.js @@ -122,25 +122,29 @@ function getLangFromUrl(){ ready(function() { const supportedLanguages = [...document.querySelectorAll('.tabs li')].map((li) => li.getAttribute('data-language')) - const defaultLanguage = supportedLanguages[0] - const localLanguage = localStorage.getItem('language'); - const selectedLanguage = getLangFromUrl(); - - if (supportedLanguages.includes(selectedLanguage)) { - showOnly(selectedLanguage) - } else if (supportedLanguages.includes(localLanguage)) { - showOnly(localLanguage) - } else { - showOnly(defaultLanguage) - } - each(document, '.tabs li', function(li) { - var language = li.getAttribute('data-language') - li.addEventListener('click', function () { - window.location.search = updateQueryParam(language); - showOnly(language) + if (supportedLanguages.length >= 1) { + const defaultLanguage = supportedLanguages[0] + const localLanguage = localStorage.getItem('language'); + const selectedLanguage = getLangFromUrl(); + + if (supportedLanguages.includes(selectedLanguage)) { + showOnly(selectedLanguage) + } else if (supportedLanguages.includes(localLanguage)) { + showOnly(localLanguage) + } else { + showOnly(defaultLanguage) + } + + each(document, '.tabs li', function(li) { + var language = li.getAttribute('data-language') + li.addEventListener('click', function () { + window.location.search = updateQueryParam(language); + showOnly(language) + }) }) - }) + } + each(document, '.panel.collapsible > a', function(a) { var targetSelector = a.getAttribute('data-target'); From 30f511bc83bb19cf75244d7fddacd176fe7aebae Mon Sep 17 00:00:00 2001 From: ian zhang Date: Wed, 6 Jul 2022 21:38:05 +0800 Subject: [PATCH 4/4] Add Chinese zh-CN Rule Add Chinese zh-CN rule as https://github.com/cucumber/common/pull/2036 --- layouts/shortcodes/gherkin-i18n-table.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/layouts/shortcodes/gherkin-i18n-table.html b/layouts/shortcodes/gherkin-i18n-table.html index cc5ba7a9..50558085 100644 --- a/layouts/shortcodes/gherkin-i18n-table.html +++ b/layouts/shortcodes/gherkin-i18n-table.html @@ -632,7 +632,7 @@ rule - Rule
+ Rule
规则