Mercurial Hosting > reactionary
view src/lib/Shared.luan @ 92:7a56c17befab default tip
translation
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Fri, 02 May 2025 20:20:12 -0600 |
parents | 76baf48ea36b |
children |
line wrap: on
line source
local Luan = require "luan:Luan.luan" local error = Luan.error local ipairs = Luan.ipairs or error() local pairs = Luan.pairs or error() local Time = require "luan:Time.luan" local Http = require "luan:http/Http.luan" local Translator = require "luan:gpt/Translator.luan" local Site_translator = require "luan:gpt/Site_translator.luan" local get_lang = Site_translator.get_lang or error() local languages = Site_translator.languages or error() local Shared = {} function Translator.prompt(html,language) %> Please translate the HTML below delimited by triple quotes from English to <%=language%>. Note that the content is related to computer programming, so keep that in mind while translating. The English word "library" refers to a programming library, not a place to borrow books, so translate to the word in the target language that means programming library. So for Spanish, use "librerÃa". Do not translate file names. Do not translate the contents of <code> tags. """ <%=html%> """ <% end Http.not_found_handler = Site_translator.not_found_handler or error() local started = Time.now() function Shared.head() %> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> @import "/site.css?s=<%=started%>"; </style> <script src="/site.js?s=<%=started%>"></script> <% end local function header(crumbs) local lang = get_lang() local home if lang == "en" then home = "/" else home = "/"..lang.."/" end %> <div header> <span breadcrumbs> <a href="<%=home%>">Reactionary Software</a> <% for _, crumb in ipairs(crumbs or {}) do %> / <%=crumb%> <% end %> - <select onchange="setLanguage(value)"> <% for code, name in pairs(languages) do local selected = code==lang and "selected" or "" %> <option value="<%=code%>" <%=selected%> ><%=name%></option> <% end %> </select> </span> <span>by <a href="https://linkmy.style/fschmidt">fschmidt</a></span> </div> <% end Shared.header = header function Shared.existing_header() header{[[<a href="existing.html">Existing</a>]]} end function Shared.needed_header() header{[[<a href="needed.html">Needed</a>]]} end function Shared.luan_url() local url = "https://www.luan.software" local lang = get_lang() if lang ~= "en" then url = url.."/"..lang end return url end return Shared