diff --git a/README.md b/README.md index 332177b006..8cc8a1d294 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ A [feature-rich](https://livecodes.io/docs/features/), open-source, **client-sid [![LiveCodes: npm version](https://img.shields.io/npm/v/livecodes)](https://www.npmjs.com/package/livecodes) [![LiveCodes: npm downloads](https://img.shields.io/npm/dm/livecodes)](https://www.npmjs.com/package/livecodes) [![LiveCodes: jsdelivr downloads](https://data.jsdelivr.com/v1/package/npm/livecodes/badge?style=rounded)](https://www.jsdelivr.com/package/npm/livecodes) -[![LiveCodes: languages](https://img.shields.io/badge/languages-114-blue)](https://livecodes.io/docs/languages/) +[![LiveCodes: languages](https://img.shields.io/badge/languages-115-blue)](https://livecodes.io/docs/languages/) [![LiveCodes: docs](https://img.shields.io/badge/Documentation-575757?logo=gitbook&logoColor=white)](https://livecodes.io/docs/) [![LiveCodes: llms.txt](https://img.shields.io/badge/llms.txt-575757?logo=googledocs&logoColor=white)](https://livecodes.io/docs/llms.txt) [![LiveCodes: llms-full.txt](https://img.shields.io/badge/llms--full.txt-575757?logo=googledocs&logoColor=white)](https://livecodes.io/docs/llms-full.txt) diff --git a/docs/docs/languages/fortran-wasm.mdx b/docs/docs/languages/fortran-wasm.mdx new file mode 100644 index 0000000000..a051833334 --- /dev/null +++ b/docs/docs/languages/fortran-wasm.mdx @@ -0,0 +1,125 @@ +# Fortran (Wasm) + +Fortran is a compiled, imperative programming language designed for numeric computation and scientific computing. + +Fortran in LiveCodes is compiled to WebAssembly by [LFortran](https://lfortran.org/) and run in the +browser, with no server. This is modern Fortran (free form), not a Fortran 77 subset. + +## Usage + +Demo: + +import LiveCodes from '../../src/components/LiveCodes.tsx'; + +export const fortranConfig = { + activeEditor: 'script', + script: { + language: 'fortran-wasm', + content: `program hello +print *, 'Hello, World!' +end program`, + }, + mode: 'simple', + editor: 'auto', + tools: { + status: 'full', + }, +}; + + + +### Communication with JavaScript + +The program runs in the context of the result page. A few helpers are available in the browser global +`livecodes.fortran` object: + +- `livecodes.fortran.input`: the standard input passed to the program. +- `livecodes.fortran.loaded`: a promise that resolves when the compiler has downloaded and the program + has run. Other helpers should be used after it resolves. +- `livecodes.fortran.output`: the program's standard output. +- `livecodes.fortran.error`: the compiler diagnostics, if the code failed to compile. +- `livecodes.fortran.exitCode`: the exit code of the program. +- `livecodes.fortran.run`: compiles and runs the code again with new input, returning a promise that + resolves with `output`, `error` and `exitCode`. + +Example: + + + +```fortran +program hello +print *, 'Hello, World!' +end program +``` + +Array sections, whole-array arithmetic and intrinsics behave as expected: + +```fortran +program slice +real :: a(4) +a = [10.0, 20.0, 30.0, 40.0] +print *, a(2:3) ! 20.0 and 30.0, not all four elements +print *, sum(a) ! 100.0 +end program +``` + +`READ` reads from the **stdin** pane, in the same way as the other console languages. + +## Language Info + +### Name + +`fortran-wasm` + +### Aliases / Extensions + +`f90`, `f95`, `f03`, `f08`, `f`, `for`, `ftn`, `fortran`, `lfortran` + +### Editor + +`script` + +## Compiler + +[LFortran](https://lfortran.org/) compiled to WebAssembly. + +### Version + +LFortran 0.66.0, with LLVM 22.1.8 and LLD, built with Emscripten 4.0.9. + +## Code Formatting + +Not currently supported. + +## Live Reload + +By default, new code changes are sent to the result page for re-evaluation without a full page reload. This behavior can be disabled by adding the code comment `! __livecodes_reload__` to the Fortran code, which forces a full page reload. + +This comment can be added in the [`hiddenContent` property of the editor](../configuration/configuration-object.mdx#markup) for embedded playgrounds. + +## Example Usage + +```fortran +program stats +integer :: i +real :: x(5), total +x = [1.0, 2.0, 3.0, 4.0, 5.0] +total = 0.0 +do i = 1, 5 + total = total + x(i) +end do +print *, 'Sum = ', total +print *, 'Mean = ', total / 5.0 +end program +``` + +## Starter Template + +https://livecodes.io/?template=fortran-wasm + +## Links + +- [LFortran](https://lfortran.org/) +- [Fortran language website](https://fortran-lang.org/) +- [Learn Fortran](https://fortran-lang.org/learn/) +- [@live-codes/lfortran-wasm](https://www.npmjs.com/package/@live-codes/lfortran-wasm) diff --git a/docs/src/components/LanguageSliders.tsx b/docs/src/components/LanguageSliders.tsx index aec340f1d8..e87b4a218b 100644 --- a/docs/src/components/LanguageSliders.tsx +++ b/docs/src/components/LanguageSliders.tsx @@ -92,6 +92,7 @@ export default function Sliders() { { name: 'cpp-wasm', title: 'C++ (Wasm)' }, { name: 'objc-wasm', title: 'Objective-C (Wasm)' }, { name: 'objcpp-wasm', title: 'Objective-C++ (Wasm)' }, + { name: 'fortran', title: 'Fortran' }, { name: 'rust-wasm', title: 'Rust (Wasm)' }, { name: 'swift-wasm', title: 'Swift (Wasm)' }, { name: 'haskell', title: 'Haskell' }, diff --git a/docs/src/components/TemplateList.tsx b/docs/src/components/TemplateList.tsx index 31772d078a..16e56b01d9 100644 --- a/docs/src/components/TemplateList.tsx +++ b/docs/src/components/TemplateList.tsx @@ -48,6 +48,7 @@ const templates = [ { name: 'php-wasm', title: 'PHP (Wasm) Starter', thumbnail: 'php.svg' }, { name: 'cpp', title: 'C++ Starter', thumbnail: 'cpp.svg' }, { name: 'c-wasm', title: 'C (Wasm) Starter', thumbnail: 'c.svg' }, + { name: 'fortran-wasm', title: 'Fortran Starter', thumbnail: 'fortran.svg' }, { name: 'cpp-wasm', title: 'C++ (Wasm) Starter', thumbnail: 'cpp.svg' }, { name: 'objc-wasm', title: 'Objective-C (Wasm) Starter', thumbnail: 'objective-c.svg' }, { name: 'rust-wasm', title: 'Rust (Wasm) Starter', thumbnail: 'rust.svg' }, diff --git a/functions/vendors/templates.js b/functions/vendors/templates.js index 3f6a851976..347939811e 100644 --- a/functions/vendors/templates.js +++ b/functions/vendors/templates.js @@ -50,6 +50,7 @@ export const starterTemplates = { "c-wasm": "C (Wasm) Starter", "cpp-wasm": "C++ (Wasm) Starter", "objc-wasm": "Objective-C (Wasm) Starter", + "fortran-wasm": "Fortran Starter", "rust-wasm": "Rust (Wasm) Starter", "swift-wasm": "Swift (Wasm) Starter", "zig-wasm": "Zig (Wasm) Starter", diff --git a/scripts/build.js b/scripts/build.js index 53bc4f1d29..81a0f32183 100644 --- a/scripts/build.js +++ b/scripts/build.js @@ -228,6 +228,7 @@ const iifeBuild = () => 'languages/java/lang-java-script.ts', 'languages/cpp/lang-cpp-script.ts', 'languages/clang-wasm/lang-clang-wasm-script.ts', + 'languages/fortran-wasm/lang-fortran-wasm-script.ts', 'languages/go-wasm/lang-go-wasm-script.ts', 'languages/csharp-wasm/lang-csharp-wasm-script.ts', 'languages/fanak/lang-fanak-script.ts', diff --git a/server/php/inc/starter-templates.json b/server/php/inc/starter-templates.json index 5b465e2502..cfa96c36b4 100644 --- a/server/php/inc/starter-templates.json +++ b/server/php/inc/starter-templates.json @@ -50,6 +50,7 @@ "c-wasm": "C (Wasm) Starter", "cpp-wasm": "C++ (Wasm) Starter", "objc-wasm": "Objective-C (Wasm) Starter", + "fortran-wasm": "Fortran Starter", "rust-wasm": "Rust (Wasm) Starter", "swift-wasm": "Swift (Wasm) Starter", "zig-wasm": "Zig (Wasm) Starter", diff --git a/src/livecodes/UI/command-menu-actions.ts b/src/livecodes/UI/command-menu-actions.ts index 62a0f18e71..d03bd476f2 100644 --- a/src/livecodes/UI/command-menu-actions.ts +++ b/src/livecodes/UI/command-menu-actions.ts @@ -306,6 +306,7 @@ export const getCommandMenuActions = ({ 'c-wasm', 'cpp-wasm', 'objc-wasm', + 'fortran-wasm', 'rust-wasm', 'swift-wasm', 'zig-wasm', diff --git a/src/livecodes/assets/templates/fortran.svg b/src/livecodes/assets/templates/fortran.svg new file mode 100644 index 0000000000..3f49819e71 --- /dev/null +++ b/src/livecodes/assets/templates/fortran.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/livecodes/html/language-info.html b/src/livecodes/html/language-info.html index e18804b742..f9f9713781 100644 --- a/src/livecodes/html/language-info.html +++ b/src/livecodes/html/language-info.html @@ -745,6 +745,11 @@

Fennel

>Getting Started with Fennel +
  • + Learn X in Y minutes, where X=Fennel +
  • LiveCodes DocumentationsFlow
  • +
    +

    Fortran (Wasm)

    +
    + Modern Fortran compiled to WebAssembly by + LFortran, running entirely in + the browser. +
    + +

    F#

    @@ -786,6 +827,11 @@

    F#

  • Fable official website
  • +
  • + Learn X in Y minutes, where X=F# +
  • LiveCodes DocumentationsF# (Wasm) >F# documentation
  • +
  • + Learn X in Y minutes, where X=F# +
  • LiveCodes Documentation الموقع الرسمي لفينل البدء مع فينل وثائق LiveCodes تحميل قالب البداية " + "translation": " الموقع الرسمي لفينل البدء مع فينل تعلم X في Y دقيقة، حيث X = Fennel وثائق LiveCodes تحميل قالب البداية " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "يتم تجميع Fortran الحديثة إلى WebAssembly بواسطة LFortran، وتعمل بالكامل داخل المتصفح." + }, + "fortran-wasm.link": { + "translation": " تعلم Fortran الموقع الرسمي لـ LFortran موقع لغة Fortran تعلم X في Y دقيقة، حيث X = Fortran وثائق LiveCodes تحميل قالب البدء " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# هي لغة برمجة وظيفية مفتوحة المصدر ومتوافقة مع مختلف الأنظمة الأساسية، وتعمل على منصة .NET." }, @@ -268,7 +277,7 @@ "translation": "هنا، يتم تحويله إلى لغة جافا سكريبت باستخدام Fable." }, "fsharp.link": { - "translation": "الموقع الرسمي لـ F# وثائق F# الموقع الرسمي لـ Fable وثائق LiveCodes تحميل قالب البداية " + "translation": "الموقع الرسمي لـ F# وثائق F# الموقع الرسمي لـ Fable تعلم X في Y دقيقة، حيث X = F# وثائق LiveCodes تحميل قالب البداية " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "المُترجم الحقيقي لـ F# وبيئة تشغيل .NET تعملان على WebAssembly. وهذا يتطابق مع سلوك المُترجم الرسمي لـ F#. ومع ذلك، يلزم تنزيل بيئة تشغيل .NET WebAssembly في صفحة النتائج، وهو ما قد يستغرق بعض الوقت عند التشغيل لأول مرة." }, "fsharpWasm.link": { - "translation": "الموقع الرسمي لـ F# وثائق F# وثائق LiveCodes تحميل قالب البدء " + "translation": "الموقع الرسمي لـ F# وثائق F# تعلم X في Y دقيقة، حيث X = F# وثائق LiveCodes تحميل قالب البدء " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/ar/language-info.ts b/src/livecodes/i18n/locales/ar/language-info.ts index cb9f8a6724..0da8da1c90 100644 --- a/src/livecodes/i18n/locales/ar/language-info.ts +++ b/src/livecodes/i18n/locales/ar/language-info.ts @@ -141,7 +141,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'فينل هي لغة برمجة تجمع بين سرعة وبساطة ونطاق لوا مع مرونة بناء جملة ليسب ونظام الماكرو.', - link: '<1> <2>الموقع الرسمي لفينل <3> <4>البدء مع فينل <5> <6>وثائق LiveCodes <7> <8>تحميل قالب البداية ', + link: '<1> <2>الموقع الرسمي لفينل <3> <4>البدء مع فينل <5> <6>تعلم X في Y دقيقة، حيث X = Fennel <7> <8>وثائق LiveCodes <9> <10>تحميل قالب البداية ', name: 'Fennel', }, flow: { @@ -149,16 +149,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>الموقع الرسمي لفلو <3> <4>وثائق فلو ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'يتم تجميع Fortran الحديثة إلى WebAssembly بواسطة <1>LFortran، وتعمل بالكامل داخل المتصفح.', + link: '<1> <2>تعلم Fortran <3> <4>الموقع الرسمي لـ LFortran <5> <6>موقع لغة Fortran <7> <8>تعلم X في Y دقيقة، حيث X = Fortran <9> <10>وثائق LiveCodes <11> <12>تحميل قالب البدء ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# هي لغة برمجة وظيفية مفتوحة المصدر ومتوافقة مع مختلف الأنظمة الأساسية، وتعمل على منصة .NET.', desc2: 'هنا، يتم تحويله إلى لغة جافا سكريبت باستخدام Fable.', - link: '<1><2>الموقع الرسمي لـ F# <3> <4>وثائق F# <5> <6>الموقع الرسمي لـ Fable <7> <8>وثائق LiveCodes <9> <10>تحميل قالب البداية ', + link: '<1><2>الموقع الرسمي لـ F# <3> <4>وثائق F# <5> <6>الموقع الرسمي لـ Fable <7> <8>تعلم X في Y دقيقة، حيث X = F# <9> <10>وثائق LiveCodes <11> <12>تحميل قالب البداية ', name: 'F#', }, fsharpWasm: { desc: 'المُترجم الحقيقي لـ F# وبيئة تشغيل .NET تعملان على WebAssembly. <1>وهذا يتطابق مع سلوك المُترجم الرسمي لـ F#. ومع ذلك، يلزم تنزيل بيئة تشغيل .NET WebAssembly في صفحة النتائج، وهو ما قد يستغرق بعض الوقت عند التشغيل لأول مرة.', - link: '<1><2>الموقع الرسمي لـ F# <3> <4>وثائق F# <5> <6>وثائق LiveCodes <7> <8>تحميل قالب البدء ', + link: '<1><2>الموقع الرسمي لـ F# <3> <4>وثائق F# <5> <6>تعلم X في Y دقيقة، حيث X = F# <7> <8>وثائق LiveCodes <9> <10>تحميل قالب البدء ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/ar/translation.lokalise.json b/src/livecodes/i18n/locales/ar/translation.lokalise.json index d5bb68f4a3..a42cef5d1f 100644 --- a/src/livecodes/i18n/locales/ar/translation.lokalise.json +++ b/src/livecodes/i18n/locales/ar/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "قالب Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "قالب Fortran" + }, "templates.starter.fsharp": { "translation": "قالب F#" }, diff --git a/src/livecodes/i18n/locales/ar/translation.ts b/src/livecodes/i18n/locales/ar/translation.ts index 621ee22988..62b9a1866a 100644 --- a/src/livecodes/i18n/locales/ar/translation.ts +++ b/src/livecodes/i18n/locales/ar/translation.ts @@ -1001,6 +1001,7 @@ const translation: I18nTranslation = { elm: 'قالب Elm', fanak: 'قالب Fanak', fennel: 'قالب Fennel', + 'fortran-wasm': 'قالب Fortran', fsharp: 'قالب F#', 'fsharp-wasm': 'قالب F# (Wasm)', gleam: 'قالب Gleam', diff --git a/src/livecodes/i18n/locales/bn/language-info.lokalise.json b/src/livecodes/i18n/locales/bn/language-info.lokalise.json index 78ca5d4361..2209c6b338 100644 --- a/src/livecodes/i18n/locales/bn/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/bn/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel একটি প্রোগ্রামিং ভাষা যা Lua-এর গতি, সরলতা এবং পৌঁছানোকে একটি lisp সিনট্যাক্স এবং ম্যাক্রো সিস্টেমের নমনীয়তার সাথে একত্রিত করে।" }, "fennel.link": { - "translation": " Fennel অফিসিয়াল ওয়েবসাইট Fennel দিয়ে শুরু করা LiveCodes ডকুমেন্টেশন স্টার্টার টেমপ্লেট লোড করুন " + "translation": " Fennel অফিসিয়াল ওয়েবসাইট Fennel দিয়ে শুরু করা Y মিনিটে X শিখুন, যেখানে X=Fennel LiveCodes ডকুমেন্টেশন স্টার্টার টেমপ্লেট লোড করুন " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "আধুনিক Fortran LFortran দ্বারা WebAssembly-তে কম্পাইল করা হয় এবং সম্পূর্ণভাবে ব্রাউজারে চলে।" + }, + "fortran-wasm.link": { + "translation": " Fortran শিখুন LFortran অফিসিয়াল ওয়েবসাইট Fortran ভাষার ওয়েবসাইট Y মিনিটে X শিখুন, যেখানে X=Fortran লাইভকোডস ডকুমেন্টেশন স্টার্টার টেমপ্লেট লোড করুন " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# হলো একটি ক্রস-প্ল্যাটফর্ম, ওপেন-সোর্স ফাংশনাল প্রোগ্রামিং ভাষা যা .NET প্ল্যাটফর্মে চলে।" }, @@ -268,7 +277,7 @@ "translation": "এখানে, এটি Fable ব্যবহার করে জাভাস্ক্রিপ্টে কম্পাইল করা হয়েছে।" }, "fsharp.link": { - "translation": "F# অফিসিয়াল ওয়েবসাইট F# ডকুমেন্টেশন Fable অফিসিয়াল ওয়েবসাইট LiveCodes ডকুমেন্টেশন স্টার্টার টেমপ্লেট লোড করুন " + "translation": "F# অফিসিয়াল ওয়েবসাইট F# ডকুমেন্টেশন Fable অফিসিয়াল ওয়েবসাইট Y মিনিটে X শিখুন, যেখানে X=F# LiveCodes ডকুমেন্টেশন স্টার্টার টেমপ্লেট লোড করুন " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "আসল F# কম্পাইলার এবং .NET রানটাইম WebAssembly-তে চলছে। এটি অফিসিয়াল F# কম্পাইলারের আচরণের সাথে মিলে যায়। তবে, রেজাল্ট পেজ থেকে .NET WebAssembly রানটাইমটি ডাউনলোড করতে হয়, যা প্রথমবার চালানোর সময় কিছুটা সময় নিতে পারে।" }, "fsharpWasm.link": { - "translation": "F# অফিসিয়াল ওয়েবসাইট F# ডকুমেন্টেশন লাইভকোড ডকুমেন্টেশন স্টার্টার টেমপ্লেট লোড করুন " + "translation": "F# অফিসিয়াল ওয়েবসাইট F# ডকুমেন্টেশন Y মিনিটে X শিখুন, যেখানে X=F# লাইভকোড ডকুমেন্টেশন স্টার্টার টেমপ্লেট লোড করুন " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/bn/language-info.ts b/src/livecodes/i18n/locales/bn/language-info.ts index ab5fa08321..e343eb9c07 100644 --- a/src/livecodes/i18n/locales/bn/language-info.ts +++ b/src/livecodes/i18n/locales/bn/language-info.ts @@ -141,7 +141,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel একটি প্রোগ্রামিং ভাষা যা Lua-এর গতি, সরলতা এবং পৌঁছানোকে একটি lisp সিনট্যাক্স এবং ম্যাক্রো সিস্টেমের নমনীয়তার সাথে একত্রিত করে।', - link: '<1> <2>Fennel অফিসিয়াল ওয়েবসাইট <3> <4>Fennel দিয়ে শুরু করা <5> <6>LiveCodes ডকুমেন্টেশন <7> <8>স্টার্টার টেমপ্লেট লোড করুন ', + link: '<1> <2>Fennel অফিসিয়াল ওয়েবসাইট <3> <4>Fennel দিয়ে শুরু করা <5> <6>Y মিনিটে X শিখুন, যেখানে X=Fennel <7> <8>LiveCodes ডকুমেন্টেশন <9> <10>স্টার্টার টেমপ্লেট লোড করুন ', name: 'Fennel', }, flow: { @@ -149,16 +149,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow অফিসিয়াল ওয়েবসাইট <3> <4>Flow ডকুমেন্টেশন ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'আধুনিক Fortran <1>LFortran দ্বারা WebAssembly-তে কম্পাইল করা হয় এবং সম্পূর্ণভাবে ব্রাউজারে চলে।', + link: '<1> <2>Fortran শিখুন <3> <4>LFortran অফিসিয়াল ওয়েবসাইট <5> <6>Fortran ভাষার ওয়েবসাইট <7> <8>Y মিনিটে X শিখুন, যেখানে X=Fortran <9> <10>লাইভকোডস ডকুমেন্টেশন <11> <12>স্টার্টার টেমপ্লেট লোড করুন ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# হলো একটি ক্রস-প্ল্যাটফর্ম, ওপেন-সোর্স ফাংশনাল প্রোগ্রামিং ভাষা যা .NET প্ল্যাটফর্মে চলে।', desc2: 'এখানে, এটি Fable ব্যবহার করে জাভাস্ক্রিপ্টে কম্পাইল করা হয়েছে।', - link: '<1><2>F# অফিসিয়াল ওয়েবসাইট <3> <4>F# ডকুমেন্টেশন <5> <6>Fable অফিসিয়াল ওয়েবসাইট <7> <8>LiveCodes ডকুমেন্টেশন <9> <10>স্টার্টার টেমপ্লেট লোড করুন ', + link: '<1><2>F# অফিসিয়াল ওয়েবসাইট <3> <4>F# ডকুমেন্টেশন <5> <6>Fable অফিসিয়াল ওয়েবসাইট <7> <8>Y মিনিটে X শিখুন, যেখানে X=F# <9> <10>LiveCodes ডকুমেন্টেশন <11> <12>স্টার্টার টেমপ্লেট লোড করুন ', name: 'F#', }, fsharpWasm: { desc: 'আসল F# কম্পাইলার এবং .NET রানটাইম WebAssembly-তে চলছে। এটি অফিসিয়াল F# কম্পাইলারের আচরণের সাথে মিলে যায়। তবে, রেজাল্ট পেজ থেকে .NET WebAssembly রানটাইমটি ডাউনলোড করতে হয়, যা প্রথমবার চালানোর সময় কিছুটা সময় নিতে পারে।', - link: '<1><2>F# অফিসিয়াল ওয়েবসাইট <3> <4>F# ডকুমেন্টেশন <5> <6>লাইভকোড ডকুমেন্টেশন <7> <8>স্টার্টার টেমপ্লেট লোড করুন ', + link: '<1><2>F# অফিসিয়াল ওয়েবসাইট <3> <4>F# ডকুমেন্টেশন <5> <6>Y মিনিটে X শিখুন, যেখানে X=F# <7> <8>লাইভকোড ডকুমেন্টেশন <9> <10>স্টার্টার টেমপ্লেট লোড করুন ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/bn/translation.lokalise.json b/src/livecodes/i18n/locales/bn/translation.lokalise.json index c57a38af50..04e292fb20 100644 --- a/src/livecodes/i18n/locales/bn/translation.lokalise.json +++ b/src/livecodes/i18n/locales/bn/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennel স্টার্টার" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran স্টার্টার" + }, "templates.starter.fsharp": { "translation": "F# স্টার্টার" }, diff --git a/src/livecodes/i18n/locales/bn/translation.ts b/src/livecodes/i18n/locales/bn/translation.ts index 8466e873de..b903338c21 100644 --- a/src/livecodes/i18n/locales/bn/translation.ts +++ b/src/livecodes/i18n/locales/bn/translation.ts @@ -1001,6 +1001,7 @@ const translation: I18nTranslation = { elm: 'Elm স্টার্টার', fanak: 'Fanak স্টার্টার', fennel: 'Fennel স্টার্টার', + 'fortran-wasm': 'Fortran স্টার্টার', fsharp: 'F# স্টার্টার', 'fsharp-wasm': 'F# (Wasm) স্টার্টার', gleam: 'Gleam স্টার্টার', diff --git a/src/livecodes/i18n/locales/de/language-info.lokalise.json b/src/livecodes/i18n/locales/de/language-info.lokalise.json index 05a7613a52..e76c371e75 100644 --- a/src/livecodes/i18n/locales/de/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/de/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel ist eine Programmiersprache, die die Geschwindigkeit, Einfachheit und Reichweite von Lua mit der Flexibilität einer Lisp-Syntax und eines Makrosystems verbindet." }, "fennel.link": { - "translation": " Fennel offizielle Website Erste Schritte mit Fennel LiveCodes Dokumentation Starter-Vorlage laden " + "translation": " Fennel offizielle Website Erste Schritte mit Fennel Lerne X in Y Minuten, wobei X = Fennel LiveCodes Dokumentation Starter-Vorlage laden " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Modernes Fortran wird von LFortran nach WebAssembly kompiliert und läuft vollständig im Browser." + }, + "fortran-wasm.link": { + "translation": " Fortran lernen Offizielle Website von LFortran Website der Sprache Fortran Lerne X in Y Minuten, wobei X = Fortran LiveCodes-Dokumentation Startervorlage laden " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# ist eine plattformübergreifende Open-Source-Sprache für funktionale Programmierung, die auf der .NET-Plattform läuft." }, @@ -268,7 +277,7 @@ "translation": "Hier wird der Code mithilfe von Fable in JavaScript kompiliert." }, "fsharp.link": { - "translation": "Offizielle F#-Website F#-Dokumentation Offizielle Fable-Website LiveCodes-Dokumentationen Starter-Vorlage laden " + "translation": "Offizielle F#-Website F#-Dokumentation Offizielle Fable-Website Lerne X in Y Minuten, wobei X = F# LiveCodes-Dokumentationen Starter-Vorlage laden " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "Der echte F#-Compiler und die .NET-Laufzeitumgebung, die auf WebAssembly laufen. Dies entspricht dem Verhalten des offiziellen F#-Compilers. Allerdings muss die .NET-WebAssembly-Laufzeitumgebung auf der Ergebnisseite heruntergeladen werden, was beim ersten Start einige Zeit in Anspruch nehmen kann." }, "fsharpWasm.link": { - "translation": "Offizielle F#-Website F#-Dokumentation LiveCodes-Dokumentation Startervorlage laden " + "translation": "Offizielle F#-Website F#-Dokumentation Lerne X in Y Minuten, wobei X = F# LiveCodes-Dokumentation Startervorlage laden " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/de/language-info.ts b/src/livecodes/i18n/locales/de/language-info.ts index 92e2724cdf..a4adf884fb 100644 --- a/src/livecodes/i18n/locales/de/language-info.ts +++ b/src/livecodes/i18n/locales/de/language-info.ts @@ -143,7 +143,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel ist eine Programmiersprache, die die Geschwindigkeit, Einfachheit und Reichweite von Lua mit der Flexibilität einer Lisp-Syntax und eines Makrosystems verbindet.', - link: '<1> <2>Fennel offizielle Website <3> <4>Erste Schritte mit Fennel <5> <6>LiveCodes Dokumentation <7> <8>Starter-Vorlage laden ', + link: '<1> <2>Fennel offizielle Website <3> <4>Erste Schritte mit Fennel <5> <6>Lerne X in Y Minuten, wobei X = Fennel <7> <8>LiveCodes Dokumentation <9> <10>Starter-Vorlage laden ', name: 'Fennel', }, flow: { @@ -151,16 +151,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow offizielle Website <3> <4>Flow Dokumentation ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Modernes Fortran wird von <1>LFortran nach WebAssembly kompiliert und läuft vollständig im Browser.', + link: '<1> <2>Fortran lernen <3> <4>Offizielle Website von LFortran <5> <6>Website der Sprache Fortran <7> <8>Lerne X in Y Minuten, wobei X = Fortran <9> <10>LiveCodes-Dokumentation <11> <12>Startervorlage laden ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# ist eine plattformübergreifende Open-Source-Sprache für funktionale Programmierung, die auf der .NET-Plattform läuft.', desc2: 'Hier wird der Code mithilfe von Fable in JavaScript kompiliert.', - link: '<1><2>Offizielle F#-Website <3> <4>F#-Dokumentation <5> <6>Offizielle Fable-Website <7> <8>LiveCodes-Dokumentationen <9> <10>Starter-Vorlage laden ', + link: '<1><2>Offizielle F#-Website <3> <4>F#-Dokumentation <5> <6>Offizielle Fable-Website <7> <8>Lerne X in Y Minuten, wobei X = F# <9> <10>LiveCodes-Dokumentationen <11> <12>Starter-Vorlage laden ', name: 'F#', }, fsharpWasm: { desc: 'Der echte F#-Compiler und die .NET-Laufzeitumgebung, die auf WebAssembly laufen. <1>Dies entspricht dem Verhalten des offiziellen F#-Compilers. Allerdings muss die .NET-WebAssembly-Laufzeitumgebung auf der Ergebnisseite heruntergeladen werden, was beim ersten Start einige Zeit in Anspruch nehmen kann.', - link: '<1><2>Offizielle F#-Website <3> <4>F#-Dokumentation <5> <6>LiveCodes-Dokumentation <7> <8>Startervorlage laden ', + link: '<1><2>Offizielle F#-Website <3> <4>F#-Dokumentation <5> <6>Lerne X in Y Minuten, wobei X = F# <7> <8>LiveCodes-Dokumentation <9> <10>Startervorlage laden ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/de/translation.lokalise.json b/src/livecodes/i18n/locales/de/translation.lokalise.json index b38218bee1..914ba2de33 100644 --- a/src/livecodes/i18n/locales/de/translation.lokalise.json +++ b/src/livecodes/i18n/locales/de/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennel-Starter" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran-Starter" + }, "templates.starter.fsharp": { "translation": "F# -Starter" }, diff --git a/src/livecodes/i18n/locales/de/translation.ts b/src/livecodes/i18n/locales/de/translation.ts index dfe09c0c60..915f79adf4 100644 --- a/src/livecodes/i18n/locales/de/translation.ts +++ b/src/livecodes/i18n/locales/de/translation.ts @@ -1003,6 +1003,7 @@ const translation: I18nTranslation = { elm: 'Elm-Starter', fanak: 'Fanak-Starter', fennel: 'Fennel-Starter', + 'fortran-wasm': 'Fortran-Starter', fsharp: 'F# -Starter', 'fsharp-wasm': 'F# (Wasm)-Starter', gleam: 'Gleam-Starter', diff --git a/src/livecodes/i18n/locales/en/language-info.lokalise.json b/src/livecodes/i18n/locales/en/language-info.lokalise.json index 956ae87da4..987aaaa837 100644 --- a/src/livecodes/i18n/locales/en/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/en/language-info.lokalise.json @@ -329,8 +329,8 @@ "translation": "Fennel is a programming language that brings together the speed, simplicity, and reach of Lua with the flexibility of a lisp syntax and macro system." }, "fennel.link": { - "notes": "### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n", - "translation": " Fennel official website Getting Started with Fennel LiveCodes Documentations Load starter template " + "notes": "### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n", + "translation": " Fennel official website Getting Started with Fennel Learn X in Y minutes, where X=Fennel LiveCodes Documentations Load starter template " }, "fennel.name": { "notes": "", @@ -348,6 +348,18 @@ "notes": "", "translation": "Flow" }, + "fortran-wasm.desc": { + "notes": "### ###\n\n\n", + "translation": "Modern Fortran compiled to WebAssembly by LFortran, running entirely in the browser." + }, + "fortran-wasm.link": { + "notes": "### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n", + "translation": " Learn Fortran LFortran official website Fortran language website Learn X in Y minutes, where X=Fortran LiveCodes Documentation Load starter template " + }, + "fortran-wasm.name": { + "notes": "", + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "notes": "", "translation": "F# is a cross-platform, open-source functional programming language that runs on the .NET platform." @@ -357,8 +369,8 @@ "translation": "Here, it is compiled to JavaScript using Fable." }, "fsharp.link": { - "notes": "### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n", - "translation": "F# official website F# documentation Fable official website LiveCodes Documentations Load starter template " + "notes": "### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n", + "translation": "F# official website F# documentation Fable official website Learn X in Y minutes, where X=F# LiveCodes Documentations Load starter template " }, "fsharp.name": { "notes": "", @@ -369,8 +381,8 @@ "translation": "The real F# compiler and .NET runtime running on WebAssembly. This matches the behavior of the official F# compiler. However, the .NET WebAssembly runtime needs to be downloaded in the result page, which can take some time on the first run." }, "fsharpWasm.link": { - "notes": "### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n", - "translation": "F# official website F# documentation LiveCodes Documentation Load starter template " + "notes": "### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n### ###\n
  • \n\n### ###\n\n\n", + "translation": "F# official website F# documentation Learn X in Y minutes, where X=F# LiveCodes Documentation Load starter template " }, "fsharpWasm.name": { "notes": "", diff --git a/src/livecodes/i18n/locales/en/language-info.ts b/src/livecodes/i18n/locales/en/language-info.ts index b203fa7174..0dc6d293bf 100644 --- a/src/livecodes/i18n/locales/en/language-info.ts +++ b/src/livecodes/i18n/locales/en/language-info.ts @@ -149,7 +149,7 @@ const languageInfo = { }, fennel: { desc: 'Fennel is a programming language that brings together the speed, simplicity, and reach of Lua with the flexibility of a lisp syntax and macro system.', - link: '<1> <2>Fennel official website <3> <4>Getting Started with Fennel <5> <6>LiveCodes Documentations <7> <8>Load starter template ', + link: '<1> <2>Fennel official website <3> <4>Getting Started with Fennel <5> <6>Learn X in Y minutes, where X=Fennel <7> <8>LiveCodes Documentations <9> <10>Load starter template ', name: 'Fennel', }, flow: { @@ -157,16 +157,21 @@ const languageInfo = { link: '<1> <2>Flow official website <3> <4>Flow documentation ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Modern Fortran compiled to WebAssembly by <1>LFortran, running entirely in the browser.', + link: '<1> <2>Learn Fortran <3> <4>LFortran official website <5> <6>Fortran language website <7> <8>Learn X in Y minutes, where X=Fortran <9> <10>LiveCodes Documentation <11> <12>Load starter template ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# is a cross-platform, open-source functional programming language that runs on the .NET platform.', desc2: 'Here, it is compiled to JavaScript using Fable.', - link: '<1><2>F# official website <3> <4>F# documentation <5> <6>Fable official website <7> <8>LiveCodes Documentations <9> <10>Load starter template ', + link: '<1><2>F# official website <3> <4>F# documentation <5> <6>Fable official website <7> <8>Learn X in Y minutes, where X=F# <9> <10>LiveCodes Documentations <11> <12>Load starter template ', name: 'F#', }, fsharpWasm: { desc: 'The real F# compiler and .NET runtime running on WebAssembly. <1>This matches the behavior of the official F# compiler. However, the .NET WebAssembly runtime needs to be downloaded in the result page, which can take some time on the first run.', - link: '<1><2>F# official website <3> <4>F# documentation <5> <6>LiveCodes Documentation <7> <8>Load starter template ', + link: '<1><2>F# official website <3> <4>F# documentation <5> <6>Learn X in Y minutes, where X=F# <7> <8>LiveCodes Documentation <9> <10>Load starter template ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/en/translation.lokalise.json b/src/livecodes/i18n/locales/en/translation.lokalise.json index 092739ff83..e6f2d89824 100644 --- a/src/livecodes/i18n/locales/en/translation.lokalise.json +++ b/src/livecodes/i18n/locales/en/translation.lokalise.json @@ -2648,6 +2648,10 @@ "notes": "", "translation": "Fennel Starter" }, + "templates.starter.fortran-wasm": { + "notes": "", + "translation": "Fortran Starter" + }, "templates.starter.fsharp": { "notes": "", "translation": "F# Starter" diff --git a/src/livecodes/i18n/locales/en/translation.ts b/src/livecodes/i18n/locales/en/translation.ts index 6510d84663..89958f0bde 100644 --- a/src/livecodes/i18n/locales/en/translation.ts +++ b/src/livecodes/i18n/locales/en/translation.ts @@ -1008,6 +1008,7 @@ const translation = { elm: 'Elm Starter', fanak: 'Fanak Starter', fennel: 'Fennel Starter', + 'fortran-wasm': 'Fortran Starter', fsharp: 'F# Starter', 'fsharp-wasm': 'F# (Wasm) Starter', gleam: 'Gleam Starter', diff --git a/src/livecodes/i18n/locales/es/language-info.lokalise.json b/src/livecodes/i18n/locales/es/language-info.lokalise.json index 7a926ed07f..c4f43924b7 100644 --- a/src/livecodes/i18n/locales/es/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/es/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel es un lenguaje de programación que combina la velocidad, simplicidad y alcance de Lua con la flexibilidad de una sintaxis de lisp y un sistema de macros." }, "fennel.link": { - "translation": " Sitio web oficial de Fennel Introducción a Fennel Documentación de LiveCodes Cargar plantilla inicial " + "translation": " Sitio web oficial de Fennel Introducción a Fennel Aprende X en Y minutos, donde X = Fennel Documentación de LiveCodes Cargar plantilla inicial " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Fortran moderno compilado a WebAssembly por LFortran, ejecutándose íntegramente en el navegador." + }, + "fortran-wasm.link": { + "translation": " Aprender Fortran Página web oficial de LFortran Sitio web del lenguaje Fortran Aprende X en Y minutos, donde X = Fortran Documentación de LiveCodes Cargar plantilla de inicio " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# es un lenguaje de programación funcional, de código abierto y multiplataforma que se ejecuta en la plataforma .NET." }, @@ -268,7 +277,7 @@ "translation": "Aquí se compila a JavaScript mediante Fable." }, "fsharp.link": { - "translation": "Página web oficial de F# Documentación de F# Página web oficial de Fable Documentación de LiveCodes Cargar plantilla de inicio " + "translation": "Página web oficial de F# Documentación de F# Página web oficial de Fable Aprende X en Y minutos, donde X = F# Documentación de LiveCodes Cargar plantilla de inicio " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "El compilador real de F# y el entorno de ejecución de .NET ejecutándose en WebAssembly. Esto coincide con el comportamiento del compilador oficial de F#. Sin embargo, es necesario descargar el entorno de ejecución de .NET para WebAssembly en la página de resultados, lo que puede llevar algo de tiempo la primera vez que se ejecuta." }, "fsharpWasm.link": { - "translation": "Página web oficial de F# Documentación de F# Documentación de LiveCodes Cargar plantilla de inicio " + "translation": "Página web oficial de F# Documentación de F# Aprende X en Y minutos, donde X = F# Documentación de LiveCodes Cargar plantilla de inicio " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/es/language-info.ts b/src/livecodes/i18n/locales/es/language-info.ts index 62d1066c43..1d3a0c5190 100644 --- a/src/livecodes/i18n/locales/es/language-info.ts +++ b/src/livecodes/i18n/locales/es/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel es un lenguaje de programación que combina la velocidad, simplicidad y alcance de Lua con la flexibilidad de una sintaxis de lisp y un sistema de macros.', - link: '<1> <2>Sitio web oficial de Fennel <3> <4>Introducción a Fennel <5> <6>Documentación de LiveCodes <7> <8>Cargar plantilla inicial ', + link: '<1> <2>Sitio web oficial de Fennel <3> <4>Introducción a Fennel <5> <6>Aprende X en Y minutos, donde X = Fennel <7> <8>Documentación de LiveCodes <9> <10>Cargar plantilla inicial ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Sitio web oficial de Flow <3> <4>Documentación de Flow ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Fortran moderno compilado a WebAssembly por <1>LFortran, ejecutándose íntegramente en el navegador.', + link: '<1> <2>Aprender Fortran <3> <4>Página web oficial de LFortran <5> <6>Sitio web del lenguaje Fortran <7> <8>Aprende X en Y minutos, donde X = Fortran <9> <10>Documentación de LiveCodes <11> <12>Cargar plantilla de inicio ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# es un lenguaje de programación funcional, de código abierto y multiplataforma que se ejecuta en la plataforma .NET.', desc2: 'Aquí se compila a JavaScript mediante Fable.', - link: '<1><2>Página web oficial de F# <3> <4>Documentación de F# <5> <6>Página web oficial de Fable <7> <8>Documentación de LiveCodes <9> <10>Cargar plantilla de inicio ', + link: '<1><2>Página web oficial de F# <3> <4>Documentación de F# <5> <6>Página web oficial de Fable <7> <8>Aprende X en Y minutos, donde X = F# <9> <10>Documentación de LiveCodes <11> <12>Cargar plantilla de inicio ', name: 'F#', }, fsharpWasm: { desc: 'El compilador real de F# y el entorno de ejecución de .NET ejecutándose en WebAssembly. <1>Esto coincide con el comportamiento del compilador oficial de F#. Sin embargo, es necesario descargar el entorno de ejecución de .NET para WebAssembly en la página de resultados, lo que puede llevar algo de tiempo la primera vez que se ejecuta.', - link: '<1><2>Página web oficial de F# <3> <4>Documentación de F# <5> <6>Documentación de LiveCodes <7> <8>Cargar plantilla de inicio ', + link: '<1><2>Página web oficial de F# <3> <4>Documentación de F# <5> <6>Aprende X en Y minutos, donde X = F# <7> <8>Documentación de LiveCodes <9> <10>Cargar plantilla de inicio ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/es/translation.lokalise.json b/src/livecodes/i18n/locales/es/translation.lokalise.json index 4fe29610e9..29545a4464 100644 --- a/src/livecodes/i18n/locales/es/translation.lokalise.json +++ b/src/livecodes/i18n/locales/es/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Inicio Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "Inicio Fortran" + }, "templates.starter.fsharp": { "translation": "Inicio F#" }, diff --git a/src/livecodes/i18n/locales/es/translation.ts b/src/livecodes/i18n/locales/es/translation.ts index c0dcc4f94b..97cabf6951 100644 --- a/src/livecodes/i18n/locales/es/translation.ts +++ b/src/livecodes/i18n/locales/es/translation.ts @@ -1001,6 +1001,7 @@ const translation: I18nTranslation = { elm: 'Inicio Elm', fanak: 'Inicio Fanak', fennel: 'Inicio Fennel', + 'fortran-wasm': 'Inicio Fortran', fsharp: 'Inicio F#', 'fsharp-wasm': 'Inicio F# (Wasm)', gleam: 'Inicio Gleam', diff --git a/src/livecodes/i18n/locales/fa/language-info.lokalise.json b/src/livecodes/i18n/locales/fa/language-info.lokalise.json index 99959dbeb5..a64e8cd3c7 100644 --- a/src/livecodes/i18n/locales/fa/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/fa/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel یک زبان برنامه‌نویسی است که سرعت، سادگی و دسترسی Lua را با انعطاف‌پذیری نحو لیسپ و سیستم ماکرو ترکیب می‌کند." }, "fennel.link": { - "translation": " وب‌سایت رسمی Fennel شروع کار با Fennel مستندات LiveCodes بارگذاری قالب شروع کننده " + "translation": " وب‌سایت رسمی Fennel شروع کار با Fennel یادگیری X در Y دقیقه، که X=Fennel مستندات LiveCodes بارگذاری قالب شروع کننده " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "فورتران مدرن توسط LFortran به WebAssembly کامپایل می‌شود و کاملاً در مرورگر اجرا می‌شود." + }, + "fortran-wasm.link": { + "translation": " یادگیری Fortran وبسایت رسمی LFortran وبسایت زبان Fortran یادگیری X در Y دقیقه، که X=Fortran مستندات لایوکدز بارگذاری قالب شروع " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# یک زبان برنامه‌نویسی تابعی متن‌باز و چندسکویی است که بر روی پلتفرم .NET اجرا می‌شود." }, @@ -268,7 +277,7 @@ "translation": "در اینجا، با استفاده از Fable به جاوااسکریپت کامپایل شده است." }, "fsharp.link": { - "translation": "وب‌سایت رسمی F# مستندات F# وب‌سایت رسمی Fable مستندات LiveCodes بارگیری قالب شروع " + "translation": "وب‌سایت رسمی F# مستندات F# وب‌سایت رسمی Fable یادگیری X در Y دقیقه، که X=F# مستندات LiveCodes بارگیری قالب شروع " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "کامپایلر واقعی F# و محیط اجرایی .NET که روی WebAssembly اجرا می‌شود. این با رفتار کامپایلر رسمی F# مطابقت دارد. با این حال، محیط اجرایی .NET WebAssembly باید در صفحه نتایج دانلود شود که در اولین اجرا می‌تواند مدتی طول بکشد." }, "fsharpWasm.link": { - "translation": "وب‌سایت رسمی F# اسناد F# مستندات LiveCodes بارگیری قالب شروع " + "translation": "وب‌سایت رسمی F# اسناد F# یادگیری X در Y دقیقه، که X=F# مستندات LiveCodes بارگیری قالب شروع " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/fa/language-info.ts b/src/livecodes/i18n/locales/fa/language-info.ts index b5c77cac3c..dea2e9dc89 100644 --- a/src/livecodes/i18n/locales/fa/language-info.ts +++ b/src/livecodes/i18n/locales/fa/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel یک زبان برنامه‌نویسی است که سرعت، سادگی و دسترسی Lua را با انعطاف‌پذیری نحو لیسپ و سیستم ماکرو ترکیب می‌کند.', - link: '<1> <2>وب‌سایت رسمی Fennel <3> <4>شروع کار با Fennel <5> <6>مستندات LiveCodes <7> <8>بارگذاری قالب شروع کننده ', + link: '<1> <2>وب‌سایت رسمی Fennel <3> <4>شروع کار با Fennel <5> <6>یادگیری X در Y دقیقه، که X=Fennel <7> <8>مستندات LiveCodes <9> <10>بارگذاری قالب شروع کننده ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>وب‌سایت رسمی Flow <3> <4>مستندات Flow ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'فورتران مدرن توسط <1>LFortran به WebAssembly کامپایل می‌شود و کاملاً در مرورگر اجرا می‌شود.', + link: '<1> <2>یادگیری Fortran <3> <4>وبسایت رسمی LFortran <5> <6>وبسایت زبان Fortran <7> <8>یادگیری X در Y دقیقه، که X=Fortran <9> <10>مستندات لایوکدز <11> <12>بارگذاری قالب شروع ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# یک زبان برنامه‌نویسی تابعی متن‌باز و چندسکویی است که بر روی پلتفرم .NET اجرا می‌شود.', desc2: 'در اینجا، با استفاده از Fable به جاوااسکریپت کامپایل شده است.', - link: '<1><2>وب‌سایت رسمی F# <3> <4>مستندات F# <5> <6>وب‌سایت رسمی Fable <7> <8>مستندات LiveCodes <9> <10>بارگیری قالب شروع ', + link: '<1><2>وب‌سایت رسمی F# <3> <4>مستندات F# <5> <6>وب‌سایت رسمی Fable <7> <8>یادگیری X در Y دقیقه، که X=F# <9> <10>مستندات LiveCodes <11> <12>بارگیری قالب شروع ', name: 'F#', }, fsharpWasm: { desc: 'کامپایلر واقعی F# و محیط اجرایی .NET که روی WebAssembly اجرا می‌شود. <1>این با رفتار کامپایلر رسمی F# مطابقت دارد. با این حال، محیط اجرایی .NET WebAssembly باید در صفحه نتایج دانلود شود که در اولین اجرا می‌تواند مدتی طول بکشد.', - link: '<1><2>وب‌سایت رسمی F# <3> <4>اسناد F# <5> <6>مستندات LiveCodes <7> <8>بارگیری قالب شروع ', + link: '<1><2>وب‌سایت رسمی F# <3> <4>اسناد F# <5> <6>یادگیری X در Y دقیقه، که X=F# <7> <8>مستندات LiveCodes <9> <10>بارگیری قالب شروع ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/fa/translation.lokalise.json b/src/livecodes/i18n/locales/fa/translation.lokalise.json index 38326e71a4..344ad63c46 100644 --- a/src/livecodes/i18n/locales/fa/translation.lokalise.json +++ b/src/livecodes/i18n/locales/fa/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "شروع کننده Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "شروع کننده Fortran" + }, "templates.starter.fsharp": { "translation": "شروع کننده F#" }, diff --git a/src/livecodes/i18n/locales/fa/translation.ts b/src/livecodes/i18n/locales/fa/translation.ts index 41ad249a0f..f51ed44098 100644 --- a/src/livecodes/i18n/locales/fa/translation.ts +++ b/src/livecodes/i18n/locales/fa/translation.ts @@ -1002,6 +1002,7 @@ const translation: I18nTranslation = { elm: 'شروع کننده Elm', fanak: 'شروع کننده Fanak', fennel: 'شروع کننده Fennel', + 'fortran-wasm': 'شروع کننده Fortran', fsharp: 'شروع کننده F#', 'fsharp-wasm': 'شروع کننده F# (Wasm)', gleam: 'شروع کننده Gleam', diff --git a/src/livecodes/i18n/locales/fr/language-info.lokalise.json b/src/livecodes/i18n/locales/fr/language-info.lokalise.json index e585706a2b..140c8026a2 100644 --- a/src/livecodes/i18n/locales/fr/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/fr/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel est un langage de programmation qui allie la vitesse, la simplicité et la portée de Lua à la flexibilité d'une syntaxe lisp et d'un système de macros." }, "fennel.link": { - "translation": " Site officiel de Fennel Débuter avec Fennel Documentation LiveCodes Charger le modèle de démarrage " + "translation": " Site officiel de Fennel Débuter avec Fennel Apprenez X en Y minutes, où X = Fennel Documentation LiveCodes Charger le modèle de démarrage " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Fortran moderne compilé en WebAssembly par LFortran, s'exécutant entièrement dans le navigateur." + }, + "fortran-wasm.link": { + "translation": " Apprendre Fortran Site officiel de LFortran Site web du langage Fortran Apprenez X en Y minutes, où X = Fortran Documentation LiveCodes Charger un modèle de démarrage " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# est un langage de programmation fonctionnel open source et multiplateforme qui s'exécute sur la plateforme .NET." }, @@ -268,7 +277,7 @@ "translation": "Ici, il est compilé en JavaScript à l'aide de Fable." }, "fsharp.link": { - "translation": "Site officiel de F# Documentation F# Site officiel de Fable Documentations LiveCodes Charger un modèle de démarrage " + "translation": "Site officiel de F# Documentation F# Site officiel de Fable Apprenez X en Y minutes, où X = F# Documentations LiveCodes Charger un modèle de démarrage " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "Le véritable compilateur F# et le runtime .NET fonctionnant sur WebAssembly. Cela correspond au comportement du compilateur F# officiel. Cependant, le runtime .NET WebAssembly doit être téléchargé depuis la page de résultats, ce qui peut prendre un certain temps lors de la première exécution." }, "fsharpWasm.link": { - "translation": "Site officiel de F# Documentation F# Documentation LiveCodes Charger un modèle de démarrage " + "translation": "Site officiel de F# Documentation F# Apprenez X en Y minutes, où X = F# Documentation LiveCodes Charger un modèle de démarrage " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/fr/language-info.ts b/src/livecodes/i18n/locales/fr/language-info.ts index 782205f43a..e9328b4798 100644 --- a/src/livecodes/i18n/locales/fr/language-info.ts +++ b/src/livecodes/i18n/locales/fr/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: "Fennel est un langage de programmation qui allie la vitesse, la simplicité et la portée de Lua à la flexibilité d'une syntaxe lisp et d'un système de macros.", - link: '<1> <2>Site officiel de Fennel <3> <4>Débuter avec Fennel <5> <6>Documentation LiveCodes <7> <8>Charger le modèle de démarrage ', + link: '<1> <2>Site officiel de Fennel <3> <4>Débuter avec Fennel <5> <6>Apprenez X en Y minutes, où X = Fennel <7> <8>Documentation LiveCodes <9> <10>Charger le modèle de démarrage ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Site officiel de Flow <3> <4>Documentation de Flow ', name: 'Flow', }, + 'fortran-wasm': { + desc: "Fortran moderne compilé en WebAssembly par <1>LFortran, s'exécutant entièrement dans le navigateur.", + link: '<1> <2>Apprendre Fortran <3> <4>Site officiel de LFortran <5> <6>Site web du langage Fortran <7> <8>Apprenez X en Y minutes, où X = Fortran <9> <10>Documentation LiveCodes <11> <12>Charger un modèle de démarrage ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: "F# est un langage de programmation fonctionnel open source et multiplateforme qui s'exécute sur la plateforme .NET.", desc2: "Ici, il est compilé en JavaScript à l'aide de Fable.", - link: '<1><2>Site officiel de F# <3> <4>Documentation F# <5> <6>Site officiel de Fable <7> <8>Documentations LiveCodes <9> <10>Charger un modèle de démarrage ', + link: '<1><2>Site officiel de F# <3> <4>Documentation F# <5> <6>Site officiel de Fable <7> <8>Apprenez X en Y minutes, où X = F# <9> <10>Documentations LiveCodes <11> <12>Charger un modèle de démarrage ', name: 'F#', }, fsharpWasm: { desc: 'Le véritable compilateur F# et le runtime .NET fonctionnant sur WebAssembly. <1>Cela correspond au comportement du compilateur F# officiel. Cependant, le runtime .NET WebAssembly doit être téléchargé depuis la page de résultats, ce qui peut prendre un certain temps lors de la première exécution.', - link: '<1><2>Site officiel de F# <3> <4>Documentation F# <5> <6>Documentation LiveCodes <7> <8>Charger un modèle de démarrage ', + link: '<1><2>Site officiel de F# <3> <4>Documentation F# <5> <6>Apprenez X en Y minutes, où X = F# <7> <8>Documentation LiveCodes <9> <10>Charger un modèle de démarrage ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/fr/translation.lokalise.json b/src/livecodes/i18n/locales/fr/translation.lokalise.json index 4147e5091a..4135e48ffd 100644 --- a/src/livecodes/i18n/locales/fr/translation.lokalise.json +++ b/src/livecodes/i18n/locales/fr/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Démarrage Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "Démarrage Fortran" + }, "templates.starter.fsharp": { "translation": "Démarrage F#" }, diff --git a/src/livecodes/i18n/locales/fr/translation.ts b/src/livecodes/i18n/locales/fr/translation.ts index 65b64c3f8a..6d083ee2b2 100644 --- a/src/livecodes/i18n/locales/fr/translation.ts +++ b/src/livecodes/i18n/locales/fr/translation.ts @@ -1003,6 +1003,7 @@ const translation: I18nTranslation = { elm: 'Démarrage Elm', fanak: 'Démarrage Fanak', fennel: 'Démarrage Fennel', + 'fortran-wasm': 'Démarrage Fortran', fsharp: 'Démarrage F#', 'fsharp-wasm': 'Démarrage F# (Wasm)', gleam: 'Démarrage Gleam', diff --git a/src/livecodes/i18n/locales/hi/language-info.lokalise.json b/src/livecodes/i18n/locales/hi/language-info.lokalise.json index 6e6dbaf91f..f280849b4d 100644 --- a/src/livecodes/i18n/locales/hi/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/hi/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel एक प्रोग्रामिंग भाषा है जो Lua की गति, सरलता, और पहुंच को लिस्प सिंटैक्स और मैक्रो सिस्टम की लचीलेपन के साथ जोड़ती है।" }, "fennel.link": { - "translation": " Fennel आधिकारिक वेबसाइट Fennel के साथ शुरुआत करना LiveCodes दस्तावेज़ीकरण स्टार्टर टेम्पलेट लोड करें " + "translation": " Fennel आधिकारिक वेबसाइट Fennel के साथ शुरुआत करना Y मिनट में X सीखें, जहाँ X=Fennel LiveCodes दस्तावेज़ीकरण स्टार्टर टेम्पलेट लोड करें " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "आधुनिक फोरट्रान को LFortran द्वारा WebAssembly में संकलित किया जाता है, जो पूरी तरह से ब्राउज़र में चलता है।" + }, + "fortran-wasm.link": { + "translation": " फोरट्रान सीखें LFortran आधिकारिक वेबसाइट फोरट्रान भाषा वेबसाइट Y मिनट में X सीखें, जहाँ X=Fortran लाइवकोड्स दस्तावेज़ीकरण स्टार्टर टेम्पलेट लोड करें " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# एक क्रॉस-प्लेटफ़ॉर्म, ओपन-सोर्स फ़ंक्शनल प्रोग्रामिंग भाषा है जो .NET प्लेटफ़ॉर्म पर चलती है।" }, @@ -268,7 +277,7 @@ "translation": "यहां, इसे फेबल का उपयोग करके जावास्क्रिप्ट में संकलित किया जाता है।" }, "fsharp.link": { - "translation": "एफ# आधिकारिक वेबसाइट एफ# दस्तावेज कल्पित आधिकारिक वेबसाइट लाइवकोड दस्तावेज स्टार्टर लोड करें टेम्पलेट " + "translation": "एफ# आधिकारिक वेबसाइट एफ# दस्तावेज कल्पित आधिकारिक वेबसाइट Y मिनट में X सीखें, जहाँ X=F# लाइवकोड दस्तावेज स्टार्टर लोड करें टेम्पलेट " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "वेबअसेंबली पर चलने वाला असली F# कंपाइलर और .NET रनटाइम। यह आधिकारिक F# कंपाइलर के व्यवहार से मेल खाता है। हालाँकि, .NET वेबअसेंबली रनटाइम को परिणाम पृष्ठ में डाउनलोड करने की आवश्यकता होती है, जिसमें पहली बार चलाने पर कुछ समय लग सकता है।" }, "fsharpWasm.link": { - "translation": "एफ# आधिकारिक वेबसाइट एफ# दस्तावेज लाइवकोड दस्तावेजीकरण स्टार्टर टेम्पलेट लोड करें " + "translation": "एफ# आधिकारिक वेबसाइट एफ# दस्तावेज Y मिनट में X सीखें, जहाँ X=F# लाइवकोड दस्तावेजीकरण स्टार्टर टेम्पलेट लोड करें " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/hi/language-info.ts b/src/livecodes/i18n/locales/hi/language-info.ts index 3c3a8a152d..2f6cb47781 100644 --- a/src/livecodes/i18n/locales/hi/language-info.ts +++ b/src/livecodes/i18n/locales/hi/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel एक प्रोग्रामिंग भाषा है जो Lua की गति, सरलता, और पहुंच को लिस्प सिंटैक्स और मैक्रो सिस्टम की लचीलेपन के साथ जोड़ती है।', - link: '<1> <2>Fennel आधिकारिक वेबसाइट <3> <4>Fennel के साथ शुरुआत करना <5> <6>LiveCodes दस्तावेज़ीकरण <7> <8>स्टार्टर टेम्पलेट लोड करें ', + link: '<1> <2>Fennel आधिकारिक वेबसाइट <3> <4>Fennel के साथ शुरुआत करना <5> <6>Y मिनट में X सीखें, जहाँ X=Fennel <7> <8>LiveCodes दस्तावेज़ीकरण <9> <10>स्टार्टर टेम्पलेट लोड करें ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow आधिकारिक वेबसाइट <3> <4>Flow दस्तावेज़ीकरण ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'आधुनिक फोरट्रान को <1>LFortran द्वारा WebAssembly में संकलित किया जाता है, जो पूरी तरह से ब्राउज़र में चलता है।', + link: '<1> <2>फोरट्रान सीखें <3> <4>LFortran आधिकारिक वेबसाइट <5> <6>फोरट्रान भाषा वेबसाइट <7> <8>Y मिनट में X सीखें, जहाँ X=Fortran <9> <10>लाइवकोड्स दस्तावेज़ीकरण <11> <12>स्टार्टर टेम्पलेट लोड करें ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# एक क्रॉस-प्लेटफ़ॉर्म, ओपन-सोर्स फ़ंक्शनल प्रोग्रामिंग भाषा है जो .NET प्लेटफ़ॉर्म पर चलती है।', desc2: 'यहां, इसे फेबल का उपयोग करके जावास्क्रिप्ट में संकलित किया जाता है।', - link: '<1><2>एफ# आधिकारिक वेबसाइट <3> <4>एफ# दस्तावेज <5> <6>कल्पित आधिकारिक वेबसाइट <7> <8>लाइवकोड दस्तावेज <9> <10>स्टार्टर लोड करें टेम्पलेट ', + link: '<1><2>एफ# आधिकारिक वेबसाइट <3> <4>एफ# दस्तावेज <5> <6>कल्पित आधिकारिक वेबसाइट <7> <8>Y मिनट में X सीखें, जहाँ X=F# <9> <10>लाइवकोड दस्तावेज <11> <12>स्टार्टर लोड करें टेम्पलेट ', name: 'F#', }, fsharpWasm: { desc: 'वेबअसेंबली पर चलने वाला असली F# कंपाइलर और .NET रनटाइम। <1> यह आधिकारिक F# कंपाइलर के व्यवहार से मेल खाता है। हालाँकि, .NET वेबअसेंबली रनटाइम को परिणाम पृष्ठ में डाउनलोड करने की आवश्यकता होती है, जिसमें पहली बार चलाने पर कुछ समय लग सकता है।', - link: '<1><2>एफ# आधिकारिक वेबसाइट <3> <4>एफ# दस्तावेज <5> <6>लाइवकोड दस्तावेजीकरण <7> <8>स्टार्टर टेम्पलेट लोड करें ', + link: '<1><2>एफ# आधिकारिक वेबसाइट <3> <4>एफ# दस्तावेज <5> <6>Y मिनट में X सीखें, जहाँ X=F# <7> <8>लाइवकोड दस्तावेजीकरण <9> <10>स्टार्टर टेम्पलेट लोड करें ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/hi/translation.lokalise.json b/src/livecodes/i18n/locales/hi/translation.lokalise.json index a1ea325fc3..c05ad0a63e 100644 --- a/src/livecodes/i18n/locales/hi/translation.lokalise.json +++ b/src/livecodes/i18n/locales/hi/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennel स्टार्टर" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran स्टार्टर" + }, "templates.starter.fsharp": { "translation": "F# स्टार्टर" }, diff --git a/src/livecodes/i18n/locales/hi/translation.ts b/src/livecodes/i18n/locales/hi/translation.ts index 0f2cf0d132..2120fab325 100644 --- a/src/livecodes/i18n/locales/hi/translation.ts +++ b/src/livecodes/i18n/locales/hi/translation.ts @@ -1001,6 +1001,7 @@ const translation: I18nTranslation = { elm: 'Elm स्टार्टर', fanak: 'Fanak स्टार्टर', fennel: 'Fennel स्टार्टर', + 'fortran-wasm': 'Fortran स्टार्टर', fsharp: 'F# स्टार्टर', 'fsharp-wasm': 'F# (Wasm) स्टार्टर', gleam: 'Gleam स्टार्टर', diff --git a/src/livecodes/i18n/locales/hu/language-info.lokalise.json b/src/livecodes/i18n/locales/hu/language-info.lokalise.json index 42f6a024a6..84eac14e02 100644 --- a/src/livecodes/i18n/locales/hu/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/hu/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "A Fennel egy programozási nyelv, amely ötvözi a Lua sebességét, egyszerűségét és elérhetőségét a lisp szintaxis és makrórendszer rugalmasságával." }, "fennel.link": { - "translation": " Fennel hivatalos weboldal Kezdés a Fennel-lel LiveCodes dokumentáció Kezdő sablon betöltése " + "translation": " Fennel hivatalos weboldal Kezdés a Fennel-lel Tanulj meg X-et Y perc alatt, ahol X=Fennel LiveCodes dokumentáció Kezdő sablon betöltése " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "A modern Fortran a LFortran segítségével WebAssembly-re fordul, és teljes egészében a böngészőben fut." + }, + "fortran-wasm.link": { + "translation": " Fortran tanulása Az LFortran hivatalos weboldala A Fortran nyelv weboldala Tanulj meg X-et Y perc alatt, ahol X=Fortran LiveCodes dokumentáció Indító sablon betöltése " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "Az F# egy platformfüggetlen, nyílt forráskódú funkcionális programozási nyelv, amely a .NET-platformon fut." }, @@ -268,7 +277,7 @@ "translation": "Itt a Fable segítségével JavaScript-re fordítják." }, "fsharp.link": { - "translation": "Az F# hivatalos weboldala F# dokumentáció A Fable hivatalos weboldala LiveCodes dokumentációk Kezdő sablon betöltése " + "translation": "Az F# hivatalos weboldala F# dokumentáció A Fable hivatalos weboldala Tanulj meg X-et Y perc alatt, ahol X=F# LiveCodes dokumentációk Kezdő sablon betöltése " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "A valódi F#-fordító és a .NET futtatókörnyezet a WebAssembly-n. Ez megegyezik a hivatalos F#-fordító viselkedésével. Azonban az eredményoldalon le kell tölteni a .NET WebAssembly futtatókörnyezetet, ami az első futtatáskor némi időt vehet igénybe." }, "fsharpWasm.link": { - "translation": "Az F# hivatalos weboldala F# dokumentáció LiveCodes dokumentáció Kezdő sablon betöltése " + "translation": "Az F# hivatalos weboldala F# dokumentáció Tanulj meg X-et Y perc alatt, ahol X=F# LiveCodes dokumentáció Kezdő sablon betöltése " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/hu/language-info.ts b/src/livecodes/i18n/locales/hu/language-info.ts index ca4ecbe4e3..6e8d4606e2 100644 --- a/src/livecodes/i18n/locales/hu/language-info.ts +++ b/src/livecodes/i18n/locales/hu/language-info.ts @@ -143,7 +143,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'A Fennel egy programozási nyelv, amely ötvözi a Lua sebességét, egyszerűségét és elérhetőségét a lisp szintaxis és makrórendszer rugalmasságával.', - link: '<1> <2>Fennel hivatalos weboldal <3> <4>Kezdés a Fennel-lel <5> <6>LiveCodes dokumentáció <7> <8>Kezdő sablon betöltése ', + link: '<1> <2>Fennel hivatalos weboldal <3> <4>Kezdés a Fennel-lel <5> <6>Tanulj meg X-et Y perc alatt, ahol X=Fennel <7> <8>LiveCodes dokumentáció <9> <10>Kezdő sablon betöltése ', name: 'Fennel', }, flow: { @@ -151,16 +151,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow hivatalos weboldal <3> <4>Flow dokumentáció ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'A modern Fortran a <1>LFortran segítségével WebAssembly-re fordul, és teljes egészében a böngészőben fut.', + link: '<1> <2>Fortran tanulása <3> <4>Az LFortran hivatalos weboldala <5> <6>A Fortran nyelv weboldala <7> <8>Tanulj meg X-et Y perc alatt, ahol X=Fortran <9> <10>LiveCodes dokumentáció <11> <12>Indító sablon betöltése ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'Az F# egy platformfüggetlen, nyílt forráskódú funkcionális programozási nyelv, amely a .NET-platformon fut.', desc2: 'Itt a Fable segítségével JavaScript-re fordítják.', - link: '<1><2>Az F# hivatalos weboldala <3> <4>F# dokumentáció <5> <6>A Fable hivatalos weboldala <7> <8>LiveCodes dokumentációk <9> <10>Kezdő sablon betöltése ', + link: '<1><2>Az F# hivatalos weboldala <3> <4>F# dokumentáció <5> <6>A Fable hivatalos weboldala <7> <8>Tanulj meg X-et Y perc alatt, ahol X=F# <9> <10>LiveCodes dokumentációk <11> <12>Kezdő sablon betöltése ', name: 'F#', }, fsharpWasm: { desc: 'A valódi F#-fordító és a .NET futtatókörnyezet a WebAssembly-n. <1>Ez megegyezik a hivatalos F#-fordító viselkedésével. Azonban az eredményoldalon le kell tölteni a .NET WebAssembly futtatókörnyezetet, ami az első futtatáskor némi időt vehet igénybe.', - link: '<1><2>Az F# hivatalos weboldala <3> <4>F# dokumentáció <5> <6>LiveCodes dokumentáció <7> <8>Kezdő sablon betöltése ', + link: '<1><2>Az F# hivatalos weboldala <3> <4>F# dokumentáció <5> <6>Tanulj meg X-et Y perc alatt, ahol X=F# <7> <8>LiveCodes dokumentáció <9> <10>Kezdő sablon betöltése ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/hu/translation.lokalise.json b/src/livecodes/i18n/locales/hu/translation.lokalise.json index d9cd4eec30..f46a2869c1 100644 --- a/src/livecodes/i18n/locales/hu/translation.lokalise.json +++ b/src/livecodes/i18n/locales/hu/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennel kezdő" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran kezdő" + }, "templates.starter.fsharp": { "translation": "F# kezdő" }, diff --git a/src/livecodes/i18n/locales/hu/translation.ts b/src/livecodes/i18n/locales/hu/translation.ts index d4f8d60fac..dcb1301048 100644 --- a/src/livecodes/i18n/locales/hu/translation.ts +++ b/src/livecodes/i18n/locales/hu/translation.ts @@ -1002,6 +1002,7 @@ const translation: I18nTranslation = { elm: 'Elm kezdő', fanak: 'Fanak kezdő', fennel: 'Fennel kezdő', + 'fortran-wasm': 'Fortran kezdő', fsharp: 'F# kezdő', 'fsharp-wasm': 'F# (Wasm) kezdő', gleam: 'Gleam kezdő', diff --git a/src/livecodes/i18n/locales/id/language-info.lokalise.json b/src/livecodes/i18n/locales/id/language-info.lokalise.json index 3f56880fb4..c5a075af70 100644 --- a/src/livecodes/i18n/locales/id/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/id/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel adalah bahasa pemrograman yang menggabungkan kecepatan, kesederhanaan, dan jangkauan Lua dengan fleksibilitas sintaks lisp dan sistem makro." }, "fennel.link": { - "translation": " Situs web resmi Fennel Memulai dengan Fennel Dokumentasi LiveCodes Muat template pemula " + "translation": " Situs web resmi Fennel Memulai dengan Fennel Belajar X dalam Y menit, di mana X = Fennel Dokumentasi LiveCodes Muat template pemula " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Fortran modern dikompilasi ke WebAssembly oleh LFortran, berjalan sepenuhnya di dalam browser." + }, + "fortran-wasm.link": { + "translation": " Belajar Fortran Situs web resmi LFortran Situs web bahasa Fortran Belajar X dalam Y menit, di mana X = Fortran Dokumentasi LiveCodes Muat templat awal " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# adalah bahasa pemrograman fungsional lintas platform dan sumber terbuka yang berjalan di platform .NET." }, @@ -268,7 +277,7 @@ "translation": "Di sini, kode tersebut dikompilasi menjadi JavaScript menggunakan Fable." }, "fsharp.link": { - "translation": "Situs web resmi F# Dokumentasi F# Situs web resmi Fable Dokumentasi LiveCodes Muat templat awal " + "translation": "Situs web resmi F# Dokumentasi F# Situs web resmi Fable Belajar X dalam Y menit, di mana X = F# Dokumentasi LiveCodes Muat templat awal " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "Kompiler F# asli dan runtime .NET yang berjalan di WebAssembly. Hal ini sesuai dengan perilaku kompiler F# resmi. Namun, runtime .NET WebAssembly perlu diunduh di halaman hasil, yang mungkin membutuhkan waktu cukup lama saat dijalankan untuk pertama kalinya." }, "fsharpWasm.link": { - "translation": "Situs web resmi F# Dokumentasi F# Dokumentasi LiveCodes Muat templat awal " + "translation": "Situs web resmi F# Dokumentasi F# Belajar X dalam Y menit, di mana X = F# Dokumentasi LiveCodes Muat templat awal " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/id/language-info.ts b/src/livecodes/i18n/locales/id/language-info.ts index 30cf03ffc1..9a24feb09e 100644 --- a/src/livecodes/i18n/locales/id/language-info.ts +++ b/src/livecodes/i18n/locales/id/language-info.ts @@ -143,7 +143,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel adalah bahasa pemrograman yang menggabungkan kecepatan, kesederhanaan, dan jangkauan Lua dengan fleksibilitas sintaks lisp dan sistem makro.', - link: '<1> <2>Situs web resmi Fennel <3> <4>Memulai dengan Fennel <5> <6>Dokumentasi LiveCodes <7> <8>Muat template pemula ', + link: '<1> <2>Situs web resmi Fennel <3> <4>Memulai dengan Fennel <5> <6>Belajar X dalam Y menit, di mana X = Fennel <7> <8>Dokumentasi LiveCodes <9> <10>Muat template pemula ', name: 'Fennel', }, flow: { @@ -151,16 +151,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Situs web resmi Flow <3> <4>Dokumentasi Flow ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Fortran modern dikompilasi ke WebAssembly oleh <1>LFortran, berjalan sepenuhnya di dalam browser.', + link: '<1> <2>Belajar Fortran <3> <4>Situs web resmi LFortran <5> <6>Situs web bahasa Fortran <7> <8>Belajar X dalam Y menit, di mana X = Fortran <9> <10>Dokumentasi LiveCodes <11> <12>Muat templat awal ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# adalah bahasa pemrograman fungsional lintas platform dan sumber terbuka yang berjalan di platform .NET.', desc2: 'Di sini, kode tersebut dikompilasi menjadi JavaScript menggunakan Fable.', - link: '<1><2>Situs web resmi F# <3> <4>Dokumentasi F# <5> <6>Situs web resmi Fable <7> <8>Dokumentasi LiveCodes <9> <10>Muat templat awal ', + link: '<1><2>Situs web resmi F# <3> <4>Dokumentasi F# <5> <6>Situs web resmi Fable <7> <8>Belajar X dalam Y menit, di mana X = F# <9> <10>Dokumentasi LiveCodes <11> <12>Muat templat awal ', name: 'F#', }, fsharpWasm: { desc: 'Kompiler F# asli dan runtime .NET yang berjalan di WebAssembly. <1>Hal ini sesuai dengan perilaku kompiler F# resmi. Namun, runtime .NET WebAssembly perlu diunduh di halaman hasil, yang mungkin membutuhkan waktu cukup lama saat dijalankan untuk pertama kalinya.', - link: '<1><2>Situs web resmi F# <3> <4>Dokumentasi F# <5> <6>Dokumentasi LiveCodes <7> <8>Muat templat awal ', + link: '<1><2>Situs web resmi F# <3> <4>Dokumentasi F# <5> <6>Belajar X dalam Y menit, di mana X = F# <7> <8>Dokumentasi LiveCodes <9> <10>Muat templat awal ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/id/translation.lokalise.json b/src/livecodes/i18n/locales/id/translation.lokalise.json index 13e4fc80f6..6d0aa7c2be 100644 --- a/src/livecodes/i18n/locales/id/translation.lokalise.json +++ b/src/livecodes/i18n/locales/id/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Pemula Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "Pemula Fortran" + }, "templates.starter.fsharp": { "translation": "Pemula F#" }, diff --git a/src/livecodes/i18n/locales/id/translation.ts b/src/livecodes/i18n/locales/id/translation.ts index fe0b44985b..ad70da0152 100644 --- a/src/livecodes/i18n/locales/id/translation.ts +++ b/src/livecodes/i18n/locales/id/translation.ts @@ -1001,6 +1001,7 @@ const translation: I18nTranslation = { elm: 'Pemula Elm', fanak: 'Pemula Fanak', fennel: 'Pemula Fennel', + 'fortran-wasm': 'Pemula Fortran', fsharp: 'Pemula F#', 'fsharp-wasm': 'Pemula F# (Wasm)', gleam: 'Pemula Gleam', diff --git a/src/livecodes/i18n/locales/it/language-info.lokalise.json b/src/livecodes/i18n/locales/it/language-info.lokalise.json index ca679f4d0d..34bba3d623 100644 --- a/src/livecodes/i18n/locales/it/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/it/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel è un linguaggio di programmazione che unisce la velocità, la semplicità e la portata di Lua con la flessibilità di una sintassi lisp e un sistema di macro." }, "fennel.link": { - "translation": " Sito ufficiale di Fennel Iniziare con Fennel Documentazione LiveCodes Carica modello di partenza " + "translation": " Sito ufficiale di Fennel Iniziare con Fennel Impara X in Y minuti, dove X = Fennel Documentazione LiveCodes Carica modello di partenza " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Fortran moderno compilato in WebAssembly da LFortran, eseguito interamente nel browser." + }, + "fortran-wasm.link": { + "translation": " Impara Fortran Sito web ufficiale di LFortran Sito web del linguaggio Fortran Impara X in Y minuti, dove X = Fortran Documentazione di LiveCodes Carica il modello di avvio " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# è un linguaggio di programmazione funzionale multipiattaforma e open source che gira sulla piattaforma .NET." }, @@ -268,7 +277,7 @@ "translation": "Qui viene compilato in JavaScript utilizzando Fable." }, "fsharp.link": { - "translation": "Sito web ufficiale di F# Documentazione di F# Sito web ufficiale di Fable Documentazione LiveCodes Carica modello di avvio " + "translation": "Sito web ufficiale di F# Documentazione di F# Sito web ufficiale di Fable Impara X in Y minuti, dove X = F# Documentazione LiveCodes Carica modello di avvio " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "Il vero compilatore F# e il runtime .NET in esecuzione su WebAssembly. Questo corrisponde al comportamento del compilatore F# ufficiale. Tuttavia, nella pagina dei risultati è necessario scaricare il runtime .NET per WebAssembly, operazione che può richiedere un po’ di tempo al primo avvio." }, "fsharpWasm.link": { - "translation": "Sito web ufficiale di F# Documentazione di F# Documentazione di LiveCodes Carica il modello di avvio " + "translation": "Sito web ufficiale di F# Documentazione di F# Impara X in Y minuti, dove X = F# Documentazione di LiveCodes Carica il modello di avvio " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/it/language-info.ts b/src/livecodes/i18n/locales/it/language-info.ts index 8313202392..09bad4dc6b 100644 --- a/src/livecodes/i18n/locales/it/language-info.ts +++ b/src/livecodes/i18n/locales/it/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel è un linguaggio di programmazione che unisce la velocità, la semplicità e la portata di Lua con la flessibilità di una sintassi lisp e un sistema di macro.', - link: '<1> <2>Sito ufficiale di Fennel <3> <4>Iniziare con Fennel <5> <6>Documentazione LiveCodes <7> <8>Carica modello di partenza ', + link: '<1> <2>Sito ufficiale di Fennel <3> <4>Iniziare con Fennel <5> <6>Impara X in Y minuti, dove X = Fennel <7> <8>Documentazione LiveCodes <9> <10>Carica modello di partenza ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Sito ufficiale di Flow <3> <4>Documentazione di Flow ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Fortran moderno compilato in WebAssembly da <1>LFortran, eseguito interamente nel browser.', + link: '<1> <2>Impara Fortran <3> <4>Sito web ufficiale di LFortran <5> <6>Sito web del linguaggio Fortran <7> <8>Impara X in Y minuti, dove X = Fortran <9> <10>Documentazione di LiveCodes <11> <12>Carica il modello di avvio ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# è un linguaggio di programmazione funzionale multipiattaforma e open source che gira sulla piattaforma .NET.', desc2: 'Qui viene compilato in JavaScript utilizzando Fable.', - link: '<1><2>Sito web ufficiale di F# <3> <4>Documentazione di F# <5> <6>Sito web ufficiale di Fable <7> <8>Documentazione LiveCodes <9> <10>Carica modello di avvio ', + link: '<1><2>Sito web ufficiale di F# <3> <4>Documentazione di F# <5> <6>Sito web ufficiale di Fable <7> <8>Impara X in Y minuti, dove X = F# <9> <10>Documentazione LiveCodes <11> <12>Carica modello di avvio ', name: 'F#', }, fsharpWasm: { desc: 'Il vero compilatore F# e il runtime .NET in esecuzione su WebAssembly. <1>Questo corrisponde al comportamento del compilatore F# ufficiale. Tuttavia, nella pagina dei risultati è necessario scaricare il runtime .NET per WebAssembly, operazione che può richiedere un po’ di tempo al primo avvio.', - link: '<1><2>Sito web ufficiale di F# <3> <4>Documentazione di F# <5> <6>Documentazione di LiveCodes <7> <8>Carica il modello di avvio ', + link: '<1><2>Sito web ufficiale di F# <3> <4>Documentazione di F# <5> <6>Impara X in Y minuti, dove X = F# <7> <8>Documentazione di LiveCodes <9> <10>Carica il modello di avvio ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/it/translation.lokalise.json b/src/livecodes/i18n/locales/it/translation.lokalise.json index e381a0cf8c..816e747b3a 100644 --- a/src/livecodes/i18n/locales/it/translation.lokalise.json +++ b/src/livecodes/i18n/locales/it/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Starter Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "Starter Fortran" + }, "templates.starter.fsharp": { "translation": "Starter F#" }, diff --git a/src/livecodes/i18n/locales/it/translation.ts b/src/livecodes/i18n/locales/it/translation.ts index 11eb69165c..00d5a12ec9 100644 --- a/src/livecodes/i18n/locales/it/translation.ts +++ b/src/livecodes/i18n/locales/it/translation.ts @@ -1002,6 +1002,7 @@ const translation: I18nTranslation = { elm: 'Starter Elm', fanak: 'Starter Fanak', fennel: 'Starter Fennel', + 'fortran-wasm': 'Starter Fortran', fsharp: 'Starter F#', 'fsharp-wasm': 'Starter F# (Wasm)', gleam: 'Starter Gleam', diff --git a/src/livecodes/i18n/locales/ja/language-info.lokalise.json b/src/livecodes/i18n/locales/ja/language-info.lokalise.json index 16a9ed05ea..1b50161e6a 100644 --- a/src/livecodes/i18n/locales/ja/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/ja/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel は、Lua のスピード、シンプルさ、リーチと、Lisp 構文とマクロシステムの柔軟性を組み合わせたプログラミング言語です。" }, "fennel.link": { - "translation": " Fennel 公式ウェブサイト Fennel 入門 LiveCodes ドキュメント スターターテンプレートを読み込む " + "translation": " Fennel 公式ウェブサイト Fennel 入門 「Y分でXを学ぶ」(X=Fennel) LiveCodes ドキュメント スターターテンプレートを読み込む " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "モダンな Fortran は LFortran によって WebAssembly にコンパイルされ、ブラウザ内で完全に実行されます。" + }, + "fortran-wasm.link": { + "translation": " Fortran を学ぶ LFortran 公式サイト Fortran 言語のウェブサイト 「Y分でXを学ぶ」(X=Fortran) LiveCodes ドキュメント スターターテンプレートを読み込む " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# は、.NET プラットフォーム上で動作する、クロスプラットフォームのオープンソース関数型プログラミング言語です。" }, @@ -268,7 +277,7 @@ "translation": "ここでは、Fable を使用して JavaScript にコンパイルされています。" }, "fsharp.link": { - "translation": "F# 公式サイト F# ドキュメント Fable 公式サイト LiveCodes ドキュメント スターターテンプレートの読み込み " + "translation": "F# 公式サイト F# ドキュメント Fable 公式サイト 「Y分でXを学ぶ」(X=F#) LiveCodes ドキュメント スターターテンプレートの読み込み " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "WebAssembly上で動作する本物のF#コンパイラと.NETランタイム。これは公式のF#コンパイラの動作と一致しています。ただし、検索結果ページから.NET WebAssemblyランタイムをダウンロードする必要があり、初回実行時には多少時間がかかる場合があります。" }, "fsharpWasm.link": { - "translation": "F# 公式サイト F# ドキュメント LiveCodes ドキュメント スターターテンプレートの読み込み " + "translation": "F# 公式サイト F# ドキュメント 「Y分でXを学ぶ」(X=F#) LiveCodes ドキュメント スターターテンプレートの読み込み " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/ja/language-info.ts b/src/livecodes/i18n/locales/ja/language-info.ts index a55dec2d71..eb625fdb27 100644 --- a/src/livecodes/i18n/locales/ja/language-info.ts +++ b/src/livecodes/i18n/locales/ja/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel は、Lua のスピード、シンプルさ、リーチと、Lisp 構文とマクロシステムの柔軟性を組み合わせたプログラミング言語です。', - link: '<1> <2>Fennel 公式ウェブサイト <3> <4>Fennel 入門 <5> <6>LiveCodes ドキュメント <7> <8>スターターテンプレートを読み込む ', + link: '<1> <2>Fennel 公式ウェブサイト <3> <4>Fennel 入門 <5> <6>「Y分でXを学ぶ」(X=Fennel) <7> <8>LiveCodes ドキュメント <9> <10>スターターテンプレートを読み込む ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow 公式ウェブサイト <3> <4>Flow ドキュメント ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'モダンな Fortran は <1>LFortran によって WebAssembly にコンパイルされ、ブラウザ内で完全に実行されます。', + link: '<1> <2>Fortran を学ぶ <3> <4>LFortran 公式サイト <5> <6>Fortran 言語のウェブサイト <7> <8>「Y分でXを学ぶ」(X=Fortran) <9> <10>LiveCodes ドキュメント <11> <12>スターターテンプレートを読み込む ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# は、.NET プラットフォーム上で動作する、クロスプラットフォームのオープンソース関数型プログラミング言語です。', desc2: 'ここでは、Fable を使用して JavaScript にコンパイルされています。', - link: '<1><2>F# 公式サイト <3> <4>F# ドキュメント <5> <6>Fable 公式サイト <7> <8>LiveCodes ドキュメント <9> <10>スターターテンプレートの読み込み ', + link: '<1><2>F# 公式サイト <3> <4>F# ドキュメント <5> <6>Fable 公式サイト <7> <8>「Y分でXを学ぶ」(X=F#) <9> <10>LiveCodes ドキュメント <11> <12>スターターテンプレートの読み込み ', name: 'F#', }, fsharpWasm: { desc: 'WebAssembly上で動作する本物のF#コンパイラと.NETランタイム。<1>これは公式のF#コンパイラの動作と一致しています。ただし、検索結果ページから.NET WebAssemblyランタイムをダウンロードする必要があり、初回実行時には多少時間がかかる場合があります。', - link: '<1><2>F# 公式サイト <3> <4>F# ドキュメント <5> <6>LiveCodes ドキュメント <7> <8>スターターテンプレートの読み込み ', + link: '<1><2>F# 公式サイト <3> <4>F# ドキュメント <5> <6>「Y分でXを学ぶ」(X=F#) <7> <8>LiveCodes ドキュメント <9> <10>スターターテンプレートの読み込み ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/ja/translation.lokalise.json b/src/livecodes/i18n/locales/ja/translation.lokalise.json index ff74129476..43ae4dbe59 100644 --- a/src/livecodes/i18n/locales/ja/translation.lokalise.json +++ b/src/livecodes/i18n/locales/ja/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennelスターター" }, + "templates.starter.fortran-wasm": { + "translation": "Fortranスターター" + }, "templates.starter.fsharp": { "translation": "F#スターター" }, diff --git a/src/livecodes/i18n/locales/ja/translation.ts b/src/livecodes/i18n/locales/ja/translation.ts index 536c0a407d..152287864c 100644 --- a/src/livecodes/i18n/locales/ja/translation.ts +++ b/src/livecodes/i18n/locales/ja/translation.ts @@ -1002,6 +1002,7 @@ const translation: I18nTranslation = { elm: 'Elmスターター', fanak: 'Fanakスターター', fennel: 'Fennelスターター', + 'fortran-wasm': 'Fortranスターター', fsharp: 'F#スターター', 'fsharp-wasm': 'F#(Wasm)スターター', gleam: 'Gleamスターター', diff --git a/src/livecodes/i18n/locales/nl/language-info.lokalise.json b/src/livecodes/i18n/locales/nl/language-info.lokalise.json index ddce6eee66..1f5f1f62f6 100644 --- a/src/livecodes/i18n/locales/nl/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/nl/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel is een programmeertaal die de snelheid, eenvoud en bereik van Lua combineert met de flexibiliteit van een lisp-syntaxis en macrosysteem." }, "fennel.link": { - "translation": " Fennel officiële website Aan de slag met Fennel LiveCodes Documentatie Startsjabloon laden " + "translation": " Fennel officiële website Aan de slag met Fennel Leer X in Y minuten, waarbij X = Fennel LiveCodes Documentatie Startsjabloon laden " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Moderne Fortran wordt door LFortran gecompileerd naar WebAssembly en draait volledig in de browser." + }, + "fortran-wasm.link": { + "translation": " Fortran leren Officiële website van LFortran Website van de taal Fortran Leer X in Y minuten, waarbij X = Fortran LiveCodes-documentatie Starterssjabloon laden " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# is een platformonafhankelijke, open-source functionele programmeertaal die op het .NET-platform draait." }, @@ -268,7 +277,7 @@ "translation": "Hier wordt het met behulp van Fable naar JavaScript gecompileerd." }, "fsharp.link": { - "translation": "Officiële website van F# F#-documentatie Officiële website van Fable LiveCodes-documentatie Starterssjabloon laden " + "translation": "Officiële website van F# F#-documentatie Officiële website van Fable Leer X in Y minuten, waarbij X = F# LiveCodes-documentatie Starterssjabloon laden " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "De echte F#-compiler en de .NET-runtime draaien op WebAssembly. Dit komt overeen met het gedrag van de officiële F#-compiler. De .NET WebAssembly-runtime moet echter op de resultatenpagina worden gedownload, wat bij de eerste keer opstarten enige tijd kan duren." }, "fsharpWasm.link": { - "translation": "Officiële website van F# F#-documentatie LiveCodes-documentatie Startersjabloon laden " + "translation": "Officiële website van F# F#-documentatie Leer X in Y minuten, waarbij X = F# LiveCodes-documentatie Startersjabloon laden " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/nl/language-info.ts b/src/livecodes/i18n/locales/nl/language-info.ts index e6fb73cb20..e1f714ea1c 100644 --- a/src/livecodes/i18n/locales/nl/language-info.ts +++ b/src/livecodes/i18n/locales/nl/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel is een programmeertaal die de snelheid, eenvoud en bereik van Lua combineert met de flexibiliteit van een lisp-syntaxis en macrosysteem.', - link: '<1> <2>Fennel officiële website <3> <4>Aan de slag met Fennel <5> <6>LiveCodes Documentatie <7> <8>Startsjabloon laden ', + link: '<1> <2>Fennel officiële website <3> <4>Aan de slag met Fennel <5> <6>Leer X in Y minuten, waarbij X = Fennel <7> <8>LiveCodes Documentatie <9> <10>Startsjabloon laden ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow officiële website <3> <4>Flow documentatie ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Moderne Fortran wordt door <1>LFortran gecompileerd naar WebAssembly en draait volledig in de browser.', + link: '<1> <2>Fortran leren <3> <4>Officiële website van LFortran <5> <6>Website van de taal Fortran <7> <8>Leer X in Y minuten, waarbij X = Fortran <9> <10>LiveCodes-documentatie <11> <12>Starterssjabloon laden ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# is een platformonafhankelijke, open-source functionele programmeertaal die op het .NET-platform draait.', desc2: 'Hier wordt het met behulp van Fable naar JavaScript gecompileerd.', - link: '<1><2>Officiële website van F# <3> <4>F#-documentatie <5> <6>Officiële website van Fable <7> <8>LiveCodes-documentatie <9> <10>Starterssjabloon laden ', + link: '<1><2>Officiële website van F# <3> <4>F#-documentatie <5> <6>Officiële website van Fable <7> <8>Leer X in Y minuten, waarbij X = F# <9> <10>LiveCodes-documentatie <11> <12>Starterssjabloon laden ', name: 'F#', }, fsharpWasm: { desc: 'De echte F#-compiler en de .NET-runtime draaien op WebAssembly. <1>Dit komt overeen met het gedrag van de officiële F#-compiler. De .NET WebAssembly-runtime moet echter op de resultatenpagina worden gedownload, wat bij de eerste keer opstarten enige tijd kan duren.', - link: '<1><2>Officiële website van F# <3> <4>F#-documentatie <5> <6>LiveCodes-documentatie <7> <8>Startersjabloon laden ', + link: '<1><2>Officiële website van F# <3> <4>F#-documentatie <5> <6>Leer X in Y minuten, waarbij X = F# <7> <8>LiveCodes-documentatie <9> <10>Startersjabloon laden ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/nl/translation.lokalise.json b/src/livecodes/i18n/locales/nl/translation.lokalise.json index 1e00aa47a2..1a2cf5bea2 100644 --- a/src/livecodes/i18n/locales/nl/translation.lokalise.json +++ b/src/livecodes/i18n/locales/nl/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennel-starter" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran-starter" + }, "templates.starter.fsharp": { "translation": "F#-starter" }, diff --git a/src/livecodes/i18n/locales/nl/translation.ts b/src/livecodes/i18n/locales/nl/translation.ts index 1c90fdddec..7aac8a6a1a 100644 --- a/src/livecodes/i18n/locales/nl/translation.ts +++ b/src/livecodes/i18n/locales/nl/translation.ts @@ -1002,6 +1002,7 @@ const translation: I18nTranslation = { elm: 'Elm-starter', fanak: 'Fanak-starter', fennel: 'Fennel-starter', + 'fortran-wasm': 'Fortran-starter', fsharp: 'F#-starter', 'fsharp-wasm': 'F# (Wasm)-starter', gleam: 'Gleam-starter', diff --git a/src/livecodes/i18n/locales/pt/language-info.lokalise.json b/src/livecodes/i18n/locales/pt/language-info.lokalise.json index 79595f2966..32cd91fd32 100644 --- a/src/livecodes/i18n/locales/pt/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/pt/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel é uma linguagem de programação que une a velocidade, simplicidade e alcance do Lua com a flexibilidade de uma sintaxe lisp e sistema de macros." }, "fennel.link": { - "translation": " Site oficial do Fennel Começando com Fennel Documentação do LiveCodes Carregar modelo inicial " + "translation": " Site oficial do Fennel Começando com Fennel Aprenda X em Y minutos, onde X = Fennel Documentação do LiveCodes Carregar modelo inicial " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Fortran moderno compilado para WebAssembly pelo LFortran, executado na íntegra no navegador." + }, + "fortran-wasm.link": { + "translation": " Aprender Fortran Site oficial do LFortran Site da linguagem Fortran Aprenda X em Y minutos, onde X = Fortran Documentação do LiveCodes Carregar modelo inicial " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "O F# é uma linguagem de programação funcional, multiplataforma e de código aberto que funciona na plataforma .NET." }, @@ -268,7 +277,7 @@ "translation": "Aqui, é compilado para JavaScript utilizando o Fable." }, "fsharp.link": { - "translation": "Site oficial do F# Documentação do F# Site oficial do Fable Documentação do LiveCodes Carregar modelo inicial " + "translation": "Site oficial do F# Documentação do F# Site oficial do Fable Aprenda X em Y minutos, onde X = F# Documentação do LiveCodes Carregar modelo inicial " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "O verdadeiro compilador F# e o ambiente de execução .NET a funcionar no WebAssembly. Isto corresponde ao comportamento do compilador oficial do F#. No entanto, o ambiente de execução .NET para WebAssembly tem de ser descarregado na página de resultados, o que pode demorar algum tempo na primeira execução." }, "fsharpWasm.link": { - "translation": "Site oficial do F# Documentação do F# Documentação do LiveCodes Carregar modelo inicial " + "translation": "Site oficial do F# Documentação do F# Aprenda X em Y minutos, onde X = F# Documentação do LiveCodes Carregar modelo inicial " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/pt/language-info.ts b/src/livecodes/i18n/locales/pt/language-info.ts index c2f8902db7..a79cf64a9c 100644 --- a/src/livecodes/i18n/locales/pt/language-info.ts +++ b/src/livecodes/i18n/locales/pt/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel é uma linguagem de programação que une a velocidade, simplicidade e alcance do Lua com a flexibilidade de uma sintaxe lisp e sistema de macros.', - link: '<1> <2>Site oficial do Fennel <3> <4>Começando com Fennel <5> <6>Documentação do LiveCodes <7> <8>Carregar modelo inicial ', + link: '<1> <2>Site oficial do Fennel <3> <4>Começando com Fennel <5> <6>Aprenda X em Y minutos, onde X = Fennel <7> <8>Documentação do LiveCodes <9> <10>Carregar modelo inicial ', name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Site oficial do Flow <3> <4>Documentação do Flow ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Fortran moderno compilado para WebAssembly pelo <1>LFortran, executado na íntegra no navegador.', + link: '<1> <2>Aprender Fortran <3> <4>Site oficial do LFortran <5> <6>Site da linguagem Fortran <7> <8>Aprenda X em Y minutos, onde X = Fortran <9> <10>Documentação do LiveCodes <11> <12>Carregar modelo inicial ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'O F# é uma linguagem de programação funcional, multiplataforma e de código aberto que funciona na plataforma .NET.', desc2: 'Aqui, é compilado para JavaScript utilizando o Fable.', - link: '<1><2>Site oficial do F# <3> <4>Documentação do F# <5> <6>Site oficial do Fable <7> <8>Documentação do LiveCodes <9> <10>Carregar modelo inicial ', + link: '<1><2>Site oficial do F# <3> <4>Documentação do F# <5> <6>Site oficial do Fable <7> <8>Aprenda X em Y minutos, onde X = F# <9> <10>Documentação do LiveCodes <11> <12>Carregar modelo inicial ', name: 'F#', }, fsharpWasm: { desc: 'O verdadeiro compilador F# e o ambiente de execução .NET a funcionar no WebAssembly. <1>Isto corresponde ao comportamento do compilador oficial do F#. No entanto, o ambiente de execução .NET para WebAssembly tem de ser descarregado na página de resultados, o que pode demorar algum tempo na primeira execução.', - link: '<1><2>Site oficial do F# <3> <4>Documentação do F# <5> <6>Documentação do LiveCodes <7> <8>Carregar modelo inicial ', + link: '<1><2>Site oficial do F# <3> <4>Documentação do F# <5> <6>Aprenda X em Y minutos, onde X = F# <7> <8>Documentação do LiveCodes <9> <10>Carregar modelo inicial ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/pt/translation.lokalise.json b/src/livecodes/i18n/locales/pt/translation.lokalise.json index e7c50d3a59..9240d000f2 100644 --- a/src/livecodes/i18n/locales/pt/translation.lokalise.json +++ b/src/livecodes/i18n/locales/pt/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Iniciante Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "Iniciante Fortran" + }, "templates.starter.fsharp": { "translation": "Iniciante F#" }, diff --git a/src/livecodes/i18n/locales/pt/translation.ts b/src/livecodes/i18n/locales/pt/translation.ts index e970099e2a..e068a9419b 100644 --- a/src/livecodes/i18n/locales/pt/translation.ts +++ b/src/livecodes/i18n/locales/pt/translation.ts @@ -1002,6 +1002,7 @@ const translation: I18nTranslation = { elm: 'Iniciante Elm', fanak: 'Iniciante Fanak', fennel: 'Iniciante Fennel', + 'fortran-wasm': 'Iniciante Fortran', fsharp: 'Iniciante F#', 'fsharp-wasm': 'Iniciante F# (Wasm)', gleam: 'Iniciante Gleam', diff --git a/src/livecodes/i18n/locales/ru/language-info.lokalise.json b/src/livecodes/i18n/locales/ru/language-info.lokalise.json index 9d6cd73614..36f603eb61 100644 --- a/src/livecodes/i18n/locales/ru/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/ru/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel - это язык программирования, который объединяет скорость, простоту и охват Lua с гибкостью синтаксиса и системы макросов Lisp." }, "fennel.link": { - "translation": " Официальный сайт Fennel Начало работы с Fennel Документация LiveCodes Загрузить стартовый шаблон " + "translation": " Официальный сайт Fennel Начало работы с Fennel «Изучите X за Y минут», где X = Fennel Документация LiveCodes Загрузить стартовый шаблон " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Современный Fortran компилируется в WebAssembly с помощью LFortran и полностью выполняется в браузере." + }, + "fortran-wasm.link": { + "translation": " Изучите Fortran Официальный сайт LFortran Сайт языка Fortran «Изучите X за Y минут», где X = Fortran Документация LiveCodes Загрузить стартовый шаблон " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# — это кроссплатформенный язык функционального программирования с открытым исходным кодом, работающий на платформе .NET." }, @@ -268,7 +277,7 @@ "translation": "Здесь код компилируется в JavaScript с помощью Fable." }, "fsharp.link": { - "translation": "Официальный сайт F# Документация по F# Официальный сайт Fable Документация по LiveCodes Загрузить стартовый шаблон " + "translation": "Официальный сайт F# Документация по F# Официальный сайт Fable «Изучите X за Y минут», где X = F# Документация по LiveCodes Загрузить стартовый шаблон " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "Настоящий компилятор F# и среда выполнения .NET, работающие на WebAssembly. Это соответствует поведению официального компилятора F#. Однако на странице результатов необходимо загрузить среду выполнения .NET для WebAssembly, что при первом запуске может занять некоторое время." }, "fsharpWasm.link": { - "translation": "Официальный сайт F# Документация по F# Документация LiveCodes Загрузить стартовый шаблон " + "translation": "Официальный сайт F# Документация по F# «Изучите X за Y минут», где X = F# Документация LiveCodes Загрузить стартовый шаблон " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/ru/language-info.ts b/src/livecodes/i18n/locales/ru/language-info.ts index d98a9ce610..b40fa609d1 100644 --- a/src/livecodes/i18n/locales/ru/language-info.ts +++ b/src/livecodes/i18n/locales/ru/language-info.ts @@ -143,7 +143,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel - это язык программирования, который объединяет скорость, простоту и охват Lua с гибкостью синтаксиса и системы макросов Lisp.', - link: '<1> <2>Официальный сайт Fennel <3> <4>Начало работы с Fennel <5> <6>Документация LiveCodes <7> <8>Загрузить стартовый шаблон ', + link: '<1> <2>Официальный сайт Fennel <3> <4>Начало работы с Fennel <5> <6>«Изучите X за Y минут», где X = Fennel <7> <8>Документация LiveCodes <9> <10>Загрузить стартовый шаблон ', name: 'Fennel', }, flow: { @@ -151,16 +151,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Официальный сайт Flow <3> <4>Документация Flow ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Современный Fortran компилируется в WebAssembly с помощью <1>LFortran и полностью выполняется в браузере.', + link: '<1> <2>Изучите Fortran <3> <4>Официальный сайт LFortran <5> <6>Сайт языка Fortran <7> <8>«Изучите X за Y минут», где X = Fortran <9> <10>Документация LiveCodes <11> <12>Загрузить стартовый шаблон ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# — это кроссплатформенный язык функционального программирования с открытым исходным кодом, работающий на платформе .NET.', desc2: 'Здесь код компилируется в JavaScript с помощью Fable.', - link: '<1><2>Официальный сайт F# <3> <4>Документация по F# <5> <6>Официальный сайт Fable <7> <8>Документация по LiveCodes <9> <10>Загрузить стартовый шаблон ', + link: '<1><2>Официальный сайт F# <3> <4>Документация по F# <5> <6>Официальный сайт Fable <7> <8>«Изучите X за Y минут», где X = F# <9> <10>Документация по LiveCodes <11> <12>Загрузить стартовый шаблон ', name: 'F#', }, fsharpWasm: { desc: 'Настоящий компилятор F# и среда выполнения .NET, работающие на WebAssembly. <1>Это соответствует поведению официального компилятора F#. Однако на странице результатов необходимо загрузить среду выполнения .NET для WebAssembly, что при первом запуске может занять некоторое время.', - link: '<1><2>Официальный сайт F# <3> <4>Документация по F# <5> <6>Документация LiveCodes <7> <8>Загрузить стартовый шаблон ', + link: '<1><2>Официальный сайт F# <3> <4>Документация по F# <5> <6>«Изучите X за Y минут», где X = F# <7> <8>Документация LiveCodes <9> <10>Загрузить стартовый шаблон ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/ru/translation.lokalise.json b/src/livecodes/i18n/locales/ru/translation.lokalise.json index 1cfaba72af..4a0004d386 100644 --- a/src/livecodes/i18n/locales/ru/translation.lokalise.json +++ b/src/livecodes/i18n/locales/ru/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Стартер Fennel" }, + "templates.starter.fortran-wasm": { + "translation": "Стартер Fortran" + }, "templates.starter.fsharp": { "translation": "Стартер F#" }, diff --git a/src/livecodes/i18n/locales/ru/translation.ts b/src/livecodes/i18n/locales/ru/translation.ts index 0102d8a8df..0073f09164 100644 --- a/src/livecodes/i18n/locales/ru/translation.ts +++ b/src/livecodes/i18n/locales/ru/translation.ts @@ -1001,6 +1001,7 @@ const translation: I18nTranslation = { elm: 'Стартер Elm', fanak: 'Стартер Fanak', fennel: 'Стартер Fennel', + 'fortran-wasm': 'Стартер Fortran', fsharp: 'Стартер F#', 'fsharp-wasm': 'Стартер F# (Wasm)', gleam: 'Стартер Gleam', diff --git a/src/livecodes/i18n/locales/tr/language-info.lokalise.json b/src/livecodes/i18n/locales/tr/language-info.lokalise.json index 9d625c4e90..935c311b93 100644 --- a/src/livecodes/i18n/locales/tr/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/tr/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel, Lua'nın hızını, basitliğini ve erişimini bir lisp sözdizimi ve makro sisteminin esnekliğiyle birleştiren bir programlama dilidir." }, "fennel.link": { - "translation": " Fennel resmi web sitesi Fennel'e Başlarken LiveCodes Dokümantasyonu Başlangıç şablonunu yükle " + "translation": " Fennel resmi web sitesi Fennel'e Başlarken Y dakikada X'i öğrenin, burada X=Fennel LiveCodes Dokümantasyonu Başlangıç şablonunu yükle " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "Modern Fortran, LFortran tarafından WebAssembly’ye derlenir ve tamamen tarayıcı içinde çalışır." + }, + "fortran-wasm.link": { + "translation": " Fortran öğrenin LFortran resmi web sitesi Fortran dili web sitesi Y dakikada X'i öğrenin, burada X=Fortran LiveCodes Belgeleri Başlangıç şablonunu yükle " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F#, .NET platformunda çalışan, platformlar arası, açık kaynaklı bir işlevsel programlama dilidir." }, @@ -268,7 +277,7 @@ "translation": "Burada, Fable kullanılarak JavaScript’e derlenir." }, "fsharp.link": { - "translation": "F# resmi web sitesi F# belgeleri Fable resmi web sitesi LiveCodes Belgeleri Başlangıç şablonunu yükle " + "translation": "F# resmi web sitesi F# belgeleri Fable resmi web sitesi Y dakikada X'i öğrenin, burada X=F# LiveCodes Belgeleri Başlangıç şablonunu yükle " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "WebAssembly üzerinde çalışan gerçek F# derleyicisi ve .NET çalışma zamanı. Bu, resmi F# derleyicisinin davranışıyla aynıdır. Ancak, sonuç sayfasında .NET WebAssembly çalışma zamanının indirilmesi gerekir; bu da ilk çalıştırmada biraz zaman alabilir." }, "fsharpWasm.link": { - "translation": "F# resmi web sitesi F# belgeleri LiveCodes Belgeleri Başlangıç şablonunu yükle " + "translation": "F# resmi web sitesi F# belgeleri Y dakikada X'i öğrenin, burada X=F# LiveCodes Belgeleri Başlangıç şablonunu yükle " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/tr/language-info.ts b/src/livecodes/i18n/locales/tr/language-info.ts index 7012f752d5..aac52ba913 100644 --- a/src/livecodes/i18n/locales/tr/language-info.ts +++ b/src/livecodes/i18n/locales/tr/language-info.ts @@ -142,7 +142,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: "Fennel, Lua'nın hızını, basitliğini ve erişimini bir lisp sözdizimi ve makro sisteminin esnekliğiyle birleştiren bir programlama dilidir.", - link: "<1> <2>Fennel resmi web sitesi <3> <4>Fennel'e Başlarken <5> <6>LiveCodes Dokümantasyonu <7> <8>Başlangıç şablonunu yükle ", + link: "<1> <2>Fennel resmi web sitesi <3> <4>Fennel'e Başlarken <5> <6>Y dakikada X'i öğrenin, burada X=Fennel <7> <8>LiveCodes Dokümantasyonu <9> <10>Başlangıç şablonunu yükle ", name: 'Fennel', }, flow: { @@ -150,16 +150,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow resmi web sitesi <3> <4>Flow dokümantasyonu ', name: 'Flow', }, + 'fortran-wasm': { + desc: 'Modern Fortran, <1>LFortran tarafından WebAssembly’ye derlenir ve tamamen tarayıcı içinde çalışır.', + link: "<1> <2>Fortran öğrenin <3> <4>LFortran resmi web sitesi <5> <6>Fortran dili web sitesi <7> <8>Y dakikada X'i öğrenin, burada X=Fortran <9> <10>LiveCodes Belgeleri <11> <12>Başlangıç şablonunu yükle ", + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F#, .NET platformunda çalışan, platformlar arası, açık kaynaklı bir işlevsel programlama dilidir.', desc2: 'Burada, Fable kullanılarak JavaScript’e derlenir.', - link: '<1><2>F# resmi web sitesi <3> <4>F# belgeleri <5> <6>Fable resmi web sitesi <7> <8>LiveCodes Belgeleri <9> <10>Başlangıç şablonunu yükle ', + link: "<1><2>F# resmi web sitesi <3> <4>F# belgeleri <5> <6>Fable resmi web sitesi <7> <8>Y dakikada X'i öğrenin, burada X=F# <9> <10>LiveCodes Belgeleri <11> <12>Başlangıç şablonunu yükle ", name: 'F#', }, fsharpWasm: { desc: 'WebAssembly üzerinde çalışan gerçek F# derleyicisi ve .NET çalışma zamanı. <1>Bu, resmi F# derleyicisinin davranışıyla aynıdır. Ancak, sonuç sayfasında .NET WebAssembly çalışma zamanının indirilmesi gerekir; bu da ilk çalıştırmada biraz zaman alabilir.', - link: '<1><2>F# resmi web sitesi <3> <4>F# belgeleri <5> <6>LiveCodes Belgeleri <7> <8>Başlangıç şablonunu yükle ', + link: "<1><2>F# resmi web sitesi <3> <4>F# belgeleri <5> <6>Y dakikada X'i öğrenin, burada X=F# <7> <8>LiveCodes Belgeleri <9> <10>Başlangıç şablonunu yükle ", name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/tr/translation.lokalise.json b/src/livecodes/i18n/locales/tr/translation.lokalise.json index 48c14ddbf9..9d8bcbdd5d 100644 --- a/src/livecodes/i18n/locales/tr/translation.lokalise.json +++ b/src/livecodes/i18n/locales/tr/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennel Başlangıç" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran Başlangıç" + }, "templates.starter.fsharp": { "translation": "F# Başlangıç" }, diff --git a/src/livecodes/i18n/locales/tr/translation.ts b/src/livecodes/i18n/locales/tr/translation.ts index 15ee86f629..3cc5c451b0 100644 --- a/src/livecodes/i18n/locales/tr/translation.ts +++ b/src/livecodes/i18n/locales/tr/translation.ts @@ -1002,6 +1002,7 @@ const translation: I18nTranslation = { elm: 'Elm Başlangıç', fanak: 'Fanak Başlangıç', fennel: 'Fennel Başlangıç', + 'fortran-wasm': 'Fortran Başlangıç', fsharp: 'F# Başlangıç', 'fsharp-wasm': 'F# (Wasm) Başlangıç', gleam: 'Gleam Başlangıç', diff --git a/src/livecodes/i18n/locales/ur/language-info.lokalise.json b/src/livecodes/i18n/locales/ur/language-info.lokalise.json index 3f76004454..4c7705337a 100644 --- a/src/livecodes/i18n/locales/ur/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/ur/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "فینل ایک پروگرامنگ زبان ہے جو لوا کی رفتار، سادگی اور پہنچ کو لسپ نحو اور میکرو سسٹم کی لچک کے ساتھ جمع کرتی ہے۔" }, "fennel.link": { - "translation": " فینل کی سرکاری ویب سائٹ فینل کے ساتھ شروعات لائیو کوڈز دستاویزات ابتدائی سانچہ لوڈ کریں " + "translation": " فینل کی سرکاری ویب سائٹ فینل کے ساتھ شروعات Y منٹ میں X سیکھیں، جہاں X=Fennel لائیو کوڈز دستاویزات ابتدائی سانچہ لوڈ کریں " }, "fennel.name": { "translation": "فینل" @@ -261,6 +261,15 @@ "flow.name": { "translation": "فلو" }, + "fortran-wasm.desc": { + "translation": "جدید فورٹران LFortran کے ذریعے WebAssembly میں مرتب کیا جاتا ہے، جو مکمل طور پر براؤزر میں چلتا ہے۔" + }, + "fortran-wasm.link": { + "translation": " فورٹران سیکھیں LFortran آفیشل ویب سائٹ فورٹران زبان کی ویب سائٹ Y منٹ میں X سیکھیں، جہاں X=Fortran لائیو کوڈز دستاویزات اسٹارٹر ٹیمپلیٹ لوڈ کریں " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# ایک کراس پلیٹ فارم، اوپن سورس فنکشنل پروگرامنگ لینگویج ہے جو .NET پلیٹ فارم پر چلتی ہے۔" }, @@ -268,7 +277,7 @@ "translation": "یہاں، اسے Fable کا استعمال کرتے ہوئے JavaScript پر مرتب کیا گیا ہے۔" }, "fsharp.link": { - "translation": "F# آفیشل ویب سائٹ F# دستاویزات Fable آفیشل ویب سائٹ LiveCodes Documentations لوڈ اسٹارٹر ٹیمپلیٹ " + "translation": "F# آفیشل ویب سائٹ F# دستاویزات Fable آفیشل ویب سائٹ Y منٹ میں X سیکھیں، جہاں X=F# LiveCodes Documentations لوڈ اسٹارٹر ٹیمپلیٹ " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "حقیقی F# کمپائلر اور .NET رن ٹائم WebAssembly پر چل رہا ہے۔ یہ آفیشل F# کمپائلر کے رویے سے میل کھاتا ہے۔ تاہم، .NET WebAssembly رن ٹائم کو رزلٹ پیج میں ڈاؤن لوڈ کرنے کی ضرورت ہے، جس میں پہلے رن پر کچھ وقت لگ سکتا ہے۔" }, "fsharpWasm.link": { - "translation": "F# آفیشل ویب سائٹ F# دستاویزات LiveCodes دستاویزی لوڈ اسٹارٹر ٹیمپلیٹ " + "translation": "F# آفیشل ویب سائٹ F# دستاویزات Y منٹ میں X سیکھیں، جہاں X=F# LiveCodes دستاویزی لوڈ اسٹارٹر ٹیمپلیٹ " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/ur/language-info.ts b/src/livecodes/i18n/locales/ur/language-info.ts index 4fef221cb5..84355149fa 100644 --- a/src/livecodes/i18n/locales/ur/language-info.ts +++ b/src/livecodes/i18n/locales/ur/language-info.ts @@ -143,7 +143,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'فینل ایک پروگرامنگ زبان ہے جو لوا کی رفتار، سادگی اور پہنچ کو لسپ نحو اور میکرو سسٹم کی لچک کے ساتھ جمع کرتی ہے۔', - link: '<1> <2>فینل کی سرکاری ویب سائٹ <3> <4>فینل کے ساتھ شروعات <5> <6>لائیو کوڈز دستاویزات <7> <8>ابتدائی سانچہ لوڈ کریں ', + link: '<1> <2>فینل کی سرکاری ویب سائٹ <3> <4>فینل کے ساتھ شروعات <5> <6>Y منٹ میں X سیکھیں، جہاں X=Fennel <7> <8>لائیو کوڈز دستاویزات <9> <10>ابتدائی سانچہ لوڈ کریں ', name: 'فینل', }, flow: { @@ -151,16 +151,21 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>فلو کی سرکاری ویب سائٹ <3> <4>فلو کی دستاویزات ', name: 'فلو', }, + 'fortran-wasm': { + desc: 'جدید فورٹران <1>LFortran کے ذریعے WebAssembly میں مرتب کیا جاتا ہے، جو مکمل طور پر براؤزر میں چلتا ہے۔', + link: '<1> <2>فورٹران سیکھیں <3> <4>LFortran آفیشل ویب سائٹ <5> <6>فورٹران زبان کی ویب سائٹ <7> <8>Y منٹ میں X سیکھیں، جہاں X=Fortran <9> <10>لائیو کوڈز دستاویزات <11> <12>اسٹارٹر ٹیمپلیٹ لوڈ کریں ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# ایک کراس پلیٹ فارم، اوپن سورس فنکشنل پروگرامنگ لینگویج ہے جو .NET پلیٹ فارم پر چلتی ہے۔', desc2: 'یہاں، اسے Fable کا استعمال کرتے ہوئے JavaScript پر مرتب کیا گیا ہے۔', - link: '<1><2>F# آفیشل ویب سائٹ <3> <4>F# دستاویزات <5> <6>Fable آفیشل ویب سائٹ <7> <8>LiveCodes Documentations <9> <10>لوڈ اسٹارٹر ٹیمپلیٹ ', + link: '<1><2>F# آفیشل ویب سائٹ <3> <4>F# دستاویزات <5> <6>Fable آفیشل ویب سائٹ <7> <8>Y منٹ میں X سیکھیں، جہاں X=F# <9> <10>LiveCodes Documentations <11> <12>لوڈ اسٹارٹر ٹیمپلیٹ ', name: 'F#', }, fsharpWasm: { desc: 'حقیقی F# کمپائلر اور .NET رن ٹائم WebAssembly پر چل رہا ہے۔ <1>یہ آفیشل F# کمپائلر کے رویے سے میل کھاتا ہے۔ تاہم، .NET WebAssembly رن ٹائم کو رزلٹ پیج میں ڈاؤن لوڈ کرنے کی ضرورت ہے، جس میں پہلے رن پر کچھ وقت لگ سکتا ہے۔', - link: '<1><2>F# آفیشل ویب سائٹ <3> <4>F# دستاویزات <5> <6>LiveCodes دستاویزی <7> <8>لوڈ اسٹارٹر ٹیمپلیٹ ', + link: '<1><2>F# آفیشل ویب سائٹ <3> <4>F# دستاویزات <5> <6>Y منٹ میں X سیکھیں، جہاں X=F# <7> <8>LiveCodes دستاویزی <9> <10>لوڈ اسٹارٹر ٹیمپلیٹ ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/ur/translation.lokalise.json b/src/livecodes/i18n/locales/ur/translation.lokalise.json index 32ec27b9c1..6abab68d77 100644 --- a/src/livecodes/i18n/locales/ur/translation.lokalise.json +++ b/src/livecodes/i18n/locales/ur/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "فینل شروعاتی" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran شروعاتی" + }, "templates.starter.fsharp": { "translation": "F# شروعاتی" }, diff --git a/src/livecodes/i18n/locales/ur/translation.ts b/src/livecodes/i18n/locales/ur/translation.ts index 9d235cb585..592a0d7d93 100644 --- a/src/livecodes/i18n/locales/ur/translation.ts +++ b/src/livecodes/i18n/locales/ur/translation.ts @@ -1001,6 +1001,7 @@ const translation: I18nTranslation = { elm: 'ایلم شروعاتی', fanak: 'Fanak شروعاتی', fennel: 'فینل شروعاتی', + 'fortran-wasm': 'Fortran شروعاتی', fsharp: 'F# شروعاتی', 'fsharp-wasm': 'F# (واسم) شروعاتی', gleam: 'گلیم شروعاتی', diff --git a/src/livecodes/i18n/locales/zh-CN/language-info.lokalise.json b/src/livecodes/i18n/locales/zh-CN/language-info.lokalise.json index 94d2c1ea6d..cb11cf9eb3 100644 --- a/src/livecodes/i18n/locales/zh-CN/language-info.lokalise.json +++ b/src/livecodes/i18n/locales/zh-CN/language-info.lokalise.json @@ -247,7 +247,7 @@ "translation": "Fennel 是一种编程语言,它结合了 Lua 的快速、简洁和广泛性以及 Lisp 语法和宏系统的灵活性。" }, "fennel.link": { - "translation": " Fennel 官方网站 Fennel 入门 LiveCodes 文档 加载启动模板 " + "translation": " Fennel 官方网站 Fennel 入门 《Y分钟学会X》,其中X=Fennel LiveCodes 文档 加载启动模板 " }, "fennel.name": { "translation": "Fennel" @@ -261,6 +261,15 @@ "flow.name": { "translation": "Flow" }, + "fortran-wasm.desc": { + "translation": "现代 Fortran 由 LFortran 编译为 WebAssembly,完全在浏览器中运行。" + }, + "fortran-wasm.link": { + "translation": " 学习 Fortran LFortran 官方网站 Fortran 语言网站 《Y分钟学会X》,其中X=Fortran LiveCodes 文档 加载入门模板 " + }, + "fortran-wasm.name": { + "translation": "Fortran (Wasm)" + }, "fsharp.desc1": { "translation": "F# 是一种基于 .NET 平台的跨平台、开源函数式编程语言。" }, @@ -268,7 +277,7 @@ "translation": "这里,它使用 Fable 编译成了 JavaScript。" }, "fsharp.link": { - "translation": "F# 官方网站 F# 文档 Fable 官方网站 LiveCodes 文档 加载入门模板 " + "translation": "F# 官方网站 F# 文档 Fable 官方网站 《Y分钟学会X》,其中X=F# LiveCodes 文档 加载入门模板 " }, "fsharp.name": { "translation": "F#" @@ -277,7 +286,7 @@ "translation": "在 WebAssembly 上运行的真实 F# 编译器和 .NET 运行时。这与官方 F# 编译器的行为一致。不过,需要在结果页面下载 .NET WebAssembly 运行时,首次运行时可能需要一些时间。" }, "fsharpWasm.link": { - "translation": "F# 官方网站 F# 文档 LiveCodes 文档 加载入门模板 " + "translation": "F# 官方网站 F# 文档 《Y分钟学会X》,其中X=F# LiveCodes 文档 加载入门模板 " }, "fsharpWasm.name": { "translation": "F# (Wasm)" diff --git a/src/livecodes/i18n/locales/zh-CN/language-info.ts b/src/livecodes/i18n/locales/zh-CN/language-info.ts index 0d6f3b6d41..400ddd621a 100644 --- a/src/livecodes/i18n/locales/zh-CN/language-info.ts +++ b/src/livecodes/i18n/locales/zh-CN/language-info.ts @@ -141,7 +141,7 @@ const languageInfo: I18nLangInfoTranslation = { }, fennel: { desc: 'Fennel 是一种编程语言,它结合了 Lua 的快速、简洁和广泛性以及 Lisp 语法和宏系统的灵活性。', - link: '<1> <2>Fennel 官方网站 <3> <4>Fennel 入门 <5> <6>LiveCodes 文档 <7> <8>加载启动模板 ', + link: '<1> <2>Fennel 官方网站 <3> <4>Fennel 入门 <5> <6>《Y分钟学会X》,其中X=Fennel <7> <8>LiveCodes 文档 <9> <10>加载启动模板 ', name: 'Fennel', }, flow: { @@ -149,15 +149,20 @@ const languageInfo: I18nLangInfoTranslation = { link: '<1> <2>Flow 官方网站 <3> <4>Flow 文档 ', name: 'Flow', }, + 'fortran-wasm': { + desc: '现代 Fortran 由 <1>LFortran 编译为 WebAssembly,完全在浏览器中运行。', + link: '<1> <2>学习 Fortran <3> <4>LFortran 官方网站 <5> <6>Fortran 语言网站 <7> <8>《Y分钟学会X》,其中X=Fortran <9> <10>LiveCodes 文档 <11> <12>加载入门模板 ', + name: 'Fortran (Wasm)', + }, fsharp: { desc1: 'F# 是一种基于 .NET 平台的跨平台、开源函数式编程语言。', desc2: '这里,它使用 Fable 编译成了 JavaScript。', - link: '<1><2>F# 官方网站 <3> <4>F# 文档 <5> <6>Fable 官方网站 <7> <8>LiveCodes 文档 <9> <10>加载入门模板 ', + link: '<1><2>F# 官方网站 <3> <4>F# 文档 <5> <6>Fable 官方网站 <7> <8>《Y分钟学会X》,其中X=F# <9> <10>LiveCodes 文档 <11> <12>加载入门模板 ', name: 'F#', }, fsharpWasm: { desc: '在 WebAssembly 上运行的真实 F# 编译器和 .NET 运行时。<1>这与官方 F# 编译器的行为一致。不过,需要在结果页面下载 .NET WebAssembly 运行时,首次运行时可能需要一些时间。', - link: '<1><2>F# 官方网站 <3> <4>F# 文档 <5> <6>LiveCodes 文档 <7> <8>加载入门模板 ', + link: '<1><2>F# 官方网站 <3> <4>F# 文档 <5> <6>《Y分钟学会X》,其中X=F# <7> <8>LiveCodes 文档 <9> <10>加载入门模板 ', name: 'F# (Wasm)', }, gleam: { diff --git a/src/livecodes/i18n/locales/zh-CN/translation.lokalise.json b/src/livecodes/i18n/locales/zh-CN/translation.lokalise.json index 5a56391f6e..360d3eb3dc 100644 --- a/src/livecodes/i18n/locales/zh-CN/translation.lokalise.json +++ b/src/livecodes/i18n/locales/zh-CN/translation.lokalise.json @@ -1986,6 +1986,9 @@ "templates.starter.fennel": { "translation": "Fennel 启动模板" }, + "templates.starter.fortran-wasm": { + "translation": "Fortran 启动模板" + }, "templates.starter.fsharp": { "translation": "F# 启动模板" }, diff --git a/src/livecodes/i18n/locales/zh-CN/translation.ts b/src/livecodes/i18n/locales/zh-CN/translation.ts index a2082920c7..759aa9540b 100644 --- a/src/livecodes/i18n/locales/zh-CN/translation.ts +++ b/src/livecodes/i18n/locales/zh-CN/translation.ts @@ -999,6 +999,7 @@ const translation: I18nTranslation = { elm: 'Elm 启动模板', fanak: 'Fanak 启动模板', fennel: 'Fennel 启动模板', + 'fortran-wasm': 'Fortran 启动模板', fsharp: 'F# 启动模板', 'fsharp-wasm': 'F#(WASM)启动模板', gleam: 'Gleam 启动模板', diff --git a/src/livecodes/languages/fortran-wasm/__tests__/lang-fortran-wasm.spec.ts b/src/livecodes/languages/fortran-wasm/__tests__/lang-fortran-wasm.spec.ts new file mode 100644 index 0000000000..b5de253b26 --- /dev/null +++ b/src/livecodes/languages/fortran-wasm/__tests__/lang-fortran-wasm.spec.ts @@ -0,0 +1,30 @@ +import { fortranWasm } from '../lang-fortran-wasm'; + +describe('Fortran (Wasm) language spec', () => { + it('is registered as fortran-wasm, with the wasm compiler script', () => { + expect(fortranWasm.name).toBe('fortran-wasm'); + expect(fortranWasm.title).toBe('Fortran (Wasm)'); + expect(fortranWasm.compiler).toMatchObject({ + scriptType: 'text/fortran-wasm', + compiledCodeLanguage: 'fortran', + liveReload: true, + }); + }); + + it('accepts the common Fortran extensions', () => { + expect(fortranWasm.extensions).toEqual( + expect.arrayContaining(['fortran', 'f90', 'f95', 'f03', 'f08', 'f', 'for', 'ftn']), + ); + }); + + it('warns that the first run is a large download', () => { + // The compiler is ~19 MB compressed; the app shows a loading indicator for it. + expect(fortranWasm.largeDownload).toBe(true); + }); + + it('uses the Fortran editors', () => { + expect(fortranWasm.editor).toBe('script'); + expect(fortranWasm.editorSupport?.monaco?.language).toBe('fortran'); + expect(fortranWasm.editorSupport?.codejar?.language).toBe('fortran'); + }); +}); diff --git a/src/livecodes/languages/fortran-wasm/index.ts b/src/livecodes/languages/fortran-wasm/index.ts new file mode 100644 index 0000000000..e226f00eac --- /dev/null +++ b/src/livecodes/languages/fortran-wasm/index.ts @@ -0,0 +1 @@ +export * from './lang-fortran-wasm'; diff --git a/src/livecodes/languages/fortran-wasm/lang-fortran-wasm-script.ts b/src/livecodes/languages/fortran-wasm/lang-fortran-wasm-script.ts new file mode 100644 index 0000000000..4b7f702c63 --- /dev/null +++ b/src/livecodes/languages/fortran-wasm/lang-fortran-wasm-script.ts @@ -0,0 +1,296 @@ +/* eslint-disable no-console */ +import { createWorkerFromContent, getErrorMessage } from '../../utils/utils'; +import { fortranWasmBaseUrl } from '../../vendors'; + +// One runner for one language. The compiler itself is @live-codes/lfortran-wasm, loaded from its +// CDN build: the IIFE defines `self.lfortranWasm`, which the worker reaches with importScripts. +// It compiles to WebAssembly and runs the program in place, because a browser has no linker +// subprocess to hand a binary to. +const SCRIPT_TYPE = 'text/fortran-wasm'; + +interface WorkerRunResult { + output: string; + errors: string[]; + exitCode: number | null; +} + +interface RunResult { + input: string; + output: string | null; + error: string | null; + exitCode: number | null; +} + +interface Runner { + ensureReady: () => Promise; + run: (code: string, input: string) => Promise; +} + +interface FortranWasmApi { + ready: boolean; + input: string; + output: string | null; + error: string | null; + exitCode: number | null; + loaded: Promise; + init: Promise | null; + runner: Runner | null; + run: (input?: string) => Promise; +} + +declare const window: Window & { + livecodes: Record; +}; + +const getWorkerSrc = () => ` +importScripts(${JSON.stringify(fortranWasmBaseUrl + 'dist/lfortran-wasm.global.js')}); + +let compiler = null; + +const getCompiler = () => { + compiler = + compiler || + self.lfortranWasm.createCompiler({ + baseUrl: ${JSON.stringify(fortranWasmBaseUrl + 'assets/')}, + }); + return compiler; +}; + +addEventListener('message', async (event) => { + const { id, code, input } = event.data; + try { + const result = await (await getCompiler()).run(code, input); + postMessage({ + id, + result: { + output: result.stdout, + // The package reports diagnostics as one rendered string; the runner's contract is a list. + errors: result.errors ? [result.errors] : [], + exitCode: result.exitCode, + }, + }); + } catch (error) { + postMessage({ id, error: String((error && error.message) || error) }); + } +}); + +getCompiler().then( + () => postMessage({ type: 'ready' }), + (error) => postMessage({ type: 'error', message: String((error && error.message) || error) }), +); +`; + +// A single compile + run is normally quick; a long timeout guards against hangs (e.g. an infinite +// loop in the user program) by killing and respawning the worker. +const RUN_TIMEOUT_MS = 120000; + +interface Pending { + resolve: (result: WorkerRunResult) => void; + reject: (error: Error) => void; + timer: ReturnType; +} + +const createRunner = (): Runner => { + let worker: Worker | null = null; + let ready: Promise | null = null; + let settleReady: ((error?: Error) => void) | null = null; + let pending: Record = {}; + let nextId = 1; + + const failAll = (error: Error) => { + for (const id of Object.keys(pending)) { + const request = pending[Number(id)]; + clearTimeout(request.timer); + request.reject(error); + } + pending = {}; + }; + + const teardown = (error: Error) => { + worker?.terminate(); + worker = null; + ready = null; + settleReady?.(error); + settleReady = null; + failAll(error); + }; + + const onMessage = (event: MessageEvent) => { + const message = event.data ?? {}; + if (message.type === 'ready') { + settleReady?.(); + settleReady = null; + return; + } + if (message.type === 'error') { + // The runtime failed to load (network, or the browser is unsupported). + teardown(new Error(message.message)); + return; + } + const request = pending[message.id]; + if (!request) return; + delete pending[message.id]; + clearTimeout(request.timer); + if (message.error != null) { + request.reject(new Error(message.error)); + } else { + request.resolve(message.result); + } + }; + + const spawn = () => { + ready = new Promise((resolve, reject) => { + settleReady = (error?: Error) => (error ? reject(error) : resolve()); + }); + worker = createWorkerFromContent(getWorkerSrc()); + worker.onmessage = onMessage; + worker.onerror = (event) => teardown(new Error(`The Fortran worker crashed: ${event.message}`)); + }; + + /** Spawn the worker if needed and resolve once the compiler has loaded. */ + const ensureReady = async () => { + if (!ready) spawn(); + await ready; + }; + + const run = (code: string, input: string) => + ensureReady().then( + () => + new Promise((resolve, reject) => { + // `ensureReady` can resolve after the worker has been torn down (crash or timeout), so + // the worker may be gone by the time the request is registered. + if (!worker) { + reject(new Error('The Fortran worker is not available')); + return; + } + const id = nextId++; + const timer = setTimeout(() => { + // The worker hung — kill it and reject, so the next run respawns a fresh worker. + teardown(new Error('The Fortran compiler timed out')); + }, RUN_TIMEOUT_MS); + pending[id] = { resolve, reject, timer }; + worker.postMessage({ id, code, input }); + }), + ); + + return { ensureReady, run }; +}; + +/** + * Reads the program out of the result page. + * + * The result page writes the code inline as the `innerHTML` of a + * ` +`.trimStart(), + }, + style: { + language: 'css', + content: ` +.container, +.container button { + text-align: center; + font: 1em sans-serif; +} +.logo { + width: 150px; +} +`.trimStart(), + }, + script: { + language: 'fortran', + content: ` +program counter +implicit none +integer :: count + +print *, 'Fortran' + +read *, count +count = count + 1 +print *, count +end program +`.trimStart(), + }, +}; diff --git a/src/livecodes/templates/starter/index.ts b/src/livecodes/templates/starter/index.ts index 07558aa9d1..7b172772c7 100644 --- a/src/livecodes/templates/starter/index.ts +++ b/src/livecodes/templates/starter/index.ts @@ -25,6 +25,7 @@ import { diagramsStarter } from './diagrams-starter'; import { elmStarter } from './elm-starter'; import { fanakStarter } from './fanak-starter'; import { fennelStarter } from './fennel-starter'; +import { fortranWasmStarter } from './fortran-wasm-starter'; import { fsharpStarter } from './fsharp-starter'; import { fsharpWasmStarter } from './fsharp-wasm-starter'; import { gleamStarter } from './gleam-starter'; @@ -137,6 +138,7 @@ export const starterTemplates = [ cWasmStarter, cppWasmStarter, objcWasmStarter, + fortranWasmStarter, rustWasmStarter, swiftWasmStarter, zigWasmStarter, diff --git a/src/livecodes/vendors.ts b/src/livecodes/vendors.ts index 08e728fe74..8fd81b246f 100644 --- a/src/livecodes/vendors.ts +++ b/src/livecodes/vendors.ts @@ -264,6 +264,8 @@ export const fontUbuntuMonoUrl = /* @__PURE__ */ getUrl('@fontsource/ubuntu-mono export const fontVictorMonoUrl = /* @__PURE__ */ getUrl('victormono@1.5.4/dist/index.css'); +export const fortranWasmBaseUrl = /* @__PURE__ */ getUrl('@live-codes/lfortran-wasm@0.3.0/'); + export const fscreenUrl = /* @__PURE__ */ getUrl('fscreen@1.2.0/dist/fscreen.esm.js'); export const fsharpWasmBaseUrl = /* @__PURE__ */ getUrl('@live-codes/fsharp-wasm@0.3.0/'); diff --git a/src/sdk/models.ts b/src/sdk/models.ts index 6eb0f544d9..b746207a07 100644 --- a/src/sdk/models.ts +++ b/src/sdk/models.ts @@ -175,6 +175,16 @@ export type Language = | 'wasm.c' | 'clang.c' | 'clang-c' + | 'fortran' + | 'f90' + | 'f95' + | 'f03' + | 'f08' + | 'f' + | 'for' + | 'ftn' + | 'fortran-wasm' + | 'lfortran' | 'cpp-wasm' | 'cppwasm' | 'wasm.cpp' @@ -473,6 +483,7 @@ export type TemplateName = | 'c-wasm' | 'cpp-wasm' | 'objc-wasm' + | 'fortran-wasm' | 'java' | 'csharp-wasm' | 'blazor-wasm' diff --git a/storybook/preact/stories/EmbedOptions/template.stories.ts b/storybook/preact/stories/EmbedOptions/template.stories.ts index 48c6b69067..a9e2264a5f 100644 --- a/storybook/preact/stories/EmbedOptions/template.stories.ts +++ b/storybook/preact/stories/EmbedOptions/template.stories.ts @@ -65,6 +65,7 @@ export const Cpp = livecodesStory({ template: 'cpp' }); export const CWasm = livecodesStory({ template: 'c-wasm' }); export const CppWasm = livecodesStory({ template: 'cpp-wasm' }); export const ObjcWasm = livecodesStory({ template: 'objc-wasm' }); +export const FortranWasm = livecodesStory({ template: 'fortran-wasm' }); export const RustWasm = livecodesStory({ template: 'rust-wasm' }); export const SwiftWasm = livecodesStory({ template: 'swift-wasm' }); export const ZigWasm = livecodesStory({ template: 'zig-wasm' }); diff --git a/storybook/react/stories/EmbedOptions/template.stories.ts b/storybook/react/stories/EmbedOptions/template.stories.ts index 48c6b69067..a9e2264a5f 100644 --- a/storybook/react/stories/EmbedOptions/template.stories.ts +++ b/storybook/react/stories/EmbedOptions/template.stories.ts @@ -65,6 +65,7 @@ export const Cpp = livecodesStory({ template: 'cpp' }); export const CWasm = livecodesStory({ template: 'c-wasm' }); export const CppWasm = livecodesStory({ template: 'cpp-wasm' }); export const ObjcWasm = livecodesStory({ template: 'objc-wasm' }); +export const FortranWasm = livecodesStory({ template: 'fortran-wasm' }); export const RustWasm = livecodesStory({ template: 'rust-wasm' }); export const SwiftWasm = livecodesStory({ template: 'swift-wasm' }); export const ZigWasm = livecodesStory({ template: 'zig-wasm' }); diff --git a/storybook/solid/stories/EmbedOptions/template.stories.ts b/storybook/solid/stories/EmbedOptions/template.stories.ts index 48c6b69067..a9e2264a5f 100644 --- a/storybook/solid/stories/EmbedOptions/template.stories.ts +++ b/storybook/solid/stories/EmbedOptions/template.stories.ts @@ -65,6 +65,7 @@ export const Cpp = livecodesStory({ template: 'cpp' }); export const CWasm = livecodesStory({ template: 'c-wasm' }); export const CppWasm = livecodesStory({ template: 'cpp-wasm' }); export const ObjcWasm = livecodesStory({ template: 'objc-wasm' }); +export const FortranWasm = livecodesStory({ template: 'fortran-wasm' }); export const RustWasm = livecodesStory({ template: 'rust-wasm' }); export const SwiftWasm = livecodesStory({ template: 'swift-wasm' }); export const ZigWasm = livecodesStory({ template: 'zig-wasm' }); diff --git a/storybook/svelte/stories/EmbedOptions/template.stories.ts b/storybook/svelte/stories/EmbedOptions/template.stories.ts index 48c6b69067..a9e2264a5f 100644 --- a/storybook/svelte/stories/EmbedOptions/template.stories.ts +++ b/storybook/svelte/stories/EmbedOptions/template.stories.ts @@ -65,6 +65,7 @@ export const Cpp = livecodesStory({ template: 'cpp' }); export const CWasm = livecodesStory({ template: 'c-wasm' }); export const CppWasm = livecodesStory({ template: 'cpp-wasm' }); export const ObjcWasm = livecodesStory({ template: 'objc-wasm' }); +export const FortranWasm = livecodesStory({ template: 'fortran-wasm' }); export const RustWasm = livecodesStory({ template: 'rust-wasm' }); export const SwiftWasm = livecodesStory({ template: 'swift-wasm' }); export const ZigWasm = livecodesStory({ template: 'zig-wasm' }); diff --git a/storybook/vue/stories/EmbedOptions/template.stories.ts b/storybook/vue/stories/EmbedOptions/template.stories.ts index 48c6b69067..a9e2264a5f 100644 --- a/storybook/vue/stories/EmbedOptions/template.stories.ts +++ b/storybook/vue/stories/EmbedOptions/template.stories.ts @@ -65,6 +65,7 @@ export const Cpp = livecodesStory({ template: 'cpp' }); export const CWasm = livecodesStory({ template: 'c-wasm' }); export const CppWasm = livecodesStory({ template: 'cpp-wasm' }); export const ObjcWasm = livecodesStory({ template: 'objc-wasm' }); +export const FortranWasm = livecodesStory({ template: 'fortran-wasm' }); export const RustWasm = livecodesStory({ template: 'rust-wasm' }); export const SwiftWasm = livecodesStory({ template: 'swift-wasm' }); export const ZigWasm = livecodesStory({ template: 'zig-wasm' }); diff --git a/storybook/web-components/stories/EmbedOptions/template.stories.ts b/storybook/web-components/stories/EmbedOptions/template.stories.ts index 48c6b69067..a9e2264a5f 100644 --- a/storybook/web-components/stories/EmbedOptions/template.stories.ts +++ b/storybook/web-components/stories/EmbedOptions/template.stories.ts @@ -65,6 +65,7 @@ export const Cpp = livecodesStory({ template: 'cpp' }); export const CWasm = livecodesStory({ template: 'c-wasm' }); export const CppWasm = livecodesStory({ template: 'cpp-wasm' }); export const ObjcWasm = livecodesStory({ template: 'objc-wasm' }); +export const FortranWasm = livecodesStory({ template: 'fortran-wasm' }); export const RustWasm = livecodesStory({ template: 'rust-wasm' }); export const SwiftWasm = livecodesStory({ template: 'swift-wasm' }); export const ZigWasm = livecodesStory({ template: 'zig-wasm' }); diff --git a/vendor-licenses.md b/vendor-licenses.md index a38bc040fa..1df1547e4a 100644 --- a/vendor-licenses.md +++ b/vendor-licenses.md @@ -344,6 +344,12 @@ wabt.js: [Apache-2.0 license](https://github.com/AssemblyScript/wabt.js/blob/182 wacl: [BSD 3-Clause License](https://github.com/ecky-l/wacl/blob/9daacabb0102a9986f33263261350edfeebdd83b/LICENSE) +@live-codes/lfortran-wasm: [MIT License](https://github.com/live-codes/browser-fortran/blob/main/LICENSE) + +LFortran (Wasm): [BSD 3-Clause License](https://github.com/lfortran/lfortran/blob/main/LICENSE) + +LLVM / LLD (Wasm): [Apache License 2.0 with LLVM-exception](https://github.com/llvm/llvm-project/blob/main/LICENSE.TXT) + @wasm-fmt/clang-format: [MIT License](https://github.com/wasm-fmt/clang-format/blob/6a84f2d980e5ff4145bd9178a49cd5146e48df78/LICENSE) @wasm-fmt/ruff_fmt: [MIT License](https://github.com/wasm-fmt/ruff_fmt/blob/6dc277e1be013159858c7de6b150063baa7214bb/LICENSE)