国际化(i18n:代表“国际化”为“i”后跟18个字母,其次是“n”)是规划和实施产品和服务的过程,以便它们可以轻松地适应特定的当地语言和文化,这一过程称为本地化。国际化过程有时被称为翻译或本地化启用。
如何使用VBA从64位Windows Vista调用ActivateKeyboardLayout
在 XP 下运行 VBA 我能够调用 ActivateKeyboardLayout 将我的输入语言从英语切换到另一种语言。然而,这在 Vista64 下不再起作用。 任何建议或工作...
我想翻译用 C++ 编写的 GTK+ 应用程序。我不知道从哪里开始,我听说过 gettext(),但我不知道,我应该如何使用它。
有没有办法在 React 组件之外使用 next-intl ? 现在,我通过调用钩子 useTranslations 来获取 t,然后将其实例传递给我的函数: 函数 formatFoo(t, foo) { 如果....
所以......我有一个STL向量,我需要使用用户提供的字符串来搜索/过滤。 (只是提到这一点,以防在这个特定的用例中有一个特定的/更好的方法来做到这一点) 目前(这...
Django 允许覆盖模型的 verbose_name 和 verbose_name_plural,这允许我们为非英语语言指定模型名称的正确复数形式(例如 Kandydaci 作为复数...
我看到 Rubocop 出现 linting 错误,但我不太确定如何修复: 示例取自 Rubocop for Rails/i18nLocaleTexts # 坏的 用户类 < ApplicationRecord validates :email, presen...
我想创建一条自定义消息,每当用户尝试使用已使用的电子邮件地址进行注册时,都会向他们显示该消息。我希望文本内容为“提供的电子邮件地址...
Angular i18n:如何使用 URL 路由/切换按钮更改语言?
我正在构建一个简单的应用程序来使用 Angular 11 学习国际化。我遵循的教程是:https://lokalise.com/blog/angular-i18n/ 我按照教程尝试创建一个应用程序...
使用 Rails 6 I18n 翻译来实现自定义/特定于用户的命名模式
我想做的是利用 I18n 本地化结构来处理特定于组织的命名模式,独立于用户的实际本地化。像这样的东西: 默认命名架构 笑...
我正在开发一个网上商店,但奇怪的是我的 useLocalePath 适用于某些链接,但适用于其他链接。 组件内部的使用示例: 常量 </desc> <question vote="0"> <p>我正在开发一个网上商店,但奇怪的是我的 useLocalePath 对某些链接有效,但对其他链接无效。</p> <p>组件内部的使用示例:</p> <pre><code><script setup> const localePath = useLocalePath() </script> <NuxtLink :to="localePath(`/laptops/${slugify(productBrand)}/${slugify(productModel)}/${productId}`)" :title="productName" class="flex flex-col md:flex-row"> content </NuxtLink> </code></pre> <p>当我访问该网站时,这可以完美地翻译为荷兰语、德语和英语。</p> <p>但是当我将鼠标悬停在其他部分(即菜单中的某些内容)上时,它不会添加 NL 或 DE 的语言前缀。</p> <pre><code><NuxtLink :to="localePath('/search')" title=""> <img src="/temp/header.png" width="1481" height="612" alt="" class="w-full" /> </NuxtLink> </code></pre> <p>代码完全一样。并且pages目录中的页面(文件名search.vue)有一个defineI18nRoute:</p> <pre><code>defineI18nRoute({ paths: { en: '/search', nl: '/zoeken', de: '/suche', } }) </code></pre> <p>例如:我使用的是英文版。我将鼠标悬停在产品上并获取此 URL:</p> <p>http://localhost:3000/en/product/brand/abcd-7540/52261</p> <p>当我使用荷兰语时,我得到这个 URL:</p> <p>http://localhost:3000/nl/product/brand/abcd-7540/52261</p> <p>所以这部分工作正常!但是当我将鼠标悬停在荷兰语菜单项上时,我得到了这个:</p> <p>http://localhost:3000/menu-item-2</p> <p>缺少语言前缀。</p> <p>当我使用英语时将鼠标悬停在它上面时,我得到了这个,希望是正确的:</p> <p>http://localhost:3000/en/menu-item-2</p> <p>我可以<strong>以任何语言</strong>手动输入 URL,并且页面加载得非常好。</p> <p>我已经为此苦苦挣扎了好几天。有谁知道可能是什么问题?下面你可以找到我的版本和 i18n 文件:</p> <pre><code>"dependencies": { "@nuxtjs/device": "3.2.4", "@nuxtjs/i18n": "9.1.0", "nuxt-tiptap-editor": "^2.0.0", "nuxt": "^3.14.1592", "nuxt-storage": "^1.2.2", "vue": "latest", "vue-router": "latest" }, </code></pre> <p>nuxt.config.ts</p> <pre><code>modules: [ '@nuxtjs/i18n', '@nuxtjs/tailwindcss', '@nuxtjs/device', "nuxt-tiptap-editor" ], i18n: { legacy: false, globalInjection: true, strategy: 'prefix', defaultLocale: 'en', locales: [ { code: "en", iso: "en_EN", name: 'English' }, { code: "nl", iso: "nl_NL", name: 'Nederlands' }, { code: "de", iso: "de_DE", name: 'Deutsch' }, ], vueI18n: './i18n.config.ts' </code></pre> <p>最后是我的 i18n.config.ts 文件:</p> <pre><code>import en from "./locales/en.json" import nl from "./locales/nl.json" import de from "./locales/de.json" export default defineI18nConfig(() => ({ legacy: false, globalInjection: true, strategy: 'prefix', defaultLocale: 'en', numberFormats: { en: { currency: { style: 'currency', currency: 'EUR' }, decimal: { style: 'decimal', minimumFractionDigits: 2, maximumFractionDigits: 2 } }, nl: { currency: { style: 'currency', currency: 'EUR' }, decimal: { style: 'decimal', minimumFractionDigits: 2, maximumFractionDigits: 2 } }, de: { currency: { style: 'currency', currency: 'EUR' }, decimal: { style: 'decimal', minimumFractionDigits: 2, maximumFractionDigits: 2 } }, }, datetimeFormats: { en: { short: { year: 'numeric', month: 'numeric', day: 'numeric' }, long: { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric', minute: 'numeric' } }, nl: { short: { day: 'numeric', month: 'numeric', year: 'numeric', }, long: { day: 'numeric', month: 'short', year: 'numeric', hour: 'numeric', minute: 'numeric' } }, de: { short: { day: 'numeric', month: 'numeric', year: 'numeric', }, long: { day: 'numeric', month: 'short', year: 'numeric', hour: 'numeric', minute: 'numeric' } }, }, locales: [ { code: "en", iso: "en_EN", name: 'English' }, { code: "nl", iso: "nl_NL", name: 'Nederlands' }, { code: "de", iso: "de_DE", name: 'Deutsch' }, ], messages: { en: en, nl: nl, de: de, }, })) </code></pre> <p>我尝试在网站的不同部分添加 NuxtLink。有时有效,有时无效。</p> <p>我打开了 Nuxt 检查器,所有路线都在“路线”选项卡上可见。每种语言在列表中都有可见的正确路线。</p> <p>我又做了一个测试:</p> <pre><code><NuxtLink :to="localePath('/contact')">Contact</NuxtLink><br /> <NuxtLink :to="localePath('/customer-service')">Customer service</NuxtLink><br /> <NuxtLink :to="localePath('/privacy-policy')">Privacy policy</NuxtLink><br /> </code></pre> <p>所有这些页面都存在。他们在英语中工作得很好,但在荷兰语中只有联系人有效。其他人缺少前缀。在德语中没有前缀。</p> </question> <answer tick="false" vote="0"> <p>我从我这边测试了这个,这是我的步骤 nuxt.config.ts 设置(<em>我没有使用 vueI18n</em>)</p> <pre><code> i18n: { strategy: 'prefix', locales: [ { code: 'en', iso: 'en_EN', name: 'English', }, { code: 'nl', iso: 'nl_NL', name: 'Nederlands', }, { code: 'de', iso: 'de_DE', name: 'Deutsch', }, ], defaultLocale: 'en', langDir: 'locales/', }, </code></pre> <p>首页代码</p> <pre><code><template> <div class="min-h-screen"> <header class="border-b mb-8"> <nav class="container flex justify-between items-center p-4"> <NuxtLink to="/">LOGO</NuxtLink> <ul class="flex space-x-4"> <li v-for="lang in availableLocales" :key="lang.code"> <NuxtLink :to="switchLocalePath(lang.code)"> {{ lang.name }} </NuxtLink> </li> </ul> </nav> </header> <main> <div class="container"> <p>this is the main content</p> <NuxtLink :to="localePath('/contact')">Contact</NuxtLink><br /> <NuxtLink :to="localePath('/customer-service')" >Customer service</NuxtLink > </div> </main> </div> </template> <script lang="ts" setup> const { locale, locales } = useI18n() const switchLocalePath = useSwitchLocalePath() const localePath = useLocalePath() const availableLocales = computed(() => { return locales.value.filter((i: any) => i.code !== locale.value) }) </script> <style></style> </code></pre> <p>这段代码在悬停和切换语言时都可以正常工作。</p> </answer> </body></html>
如何通过按模块或按页面分离翻译文件来在 Angular v11 项目中实现国际化
我想知道如何通过按模块或按页面分离翻译文件来在 Angular v11 项目中实现国际化。 我正在学习 i18n 国际化,以及
Nuxt i18n:无法解析导入“locales/en.json”(该文件是否存在?)
说明: 我在 Nuxt 3 项目中设置 @nuxtjs/i18n 模块时遇到问题。当我运行该应用程序时,出现以下错误: 无法解析导入“../i18n/locales...
i18n 的单个或多个 Translation.json 文件?
我正在 Aurelia 开展一个项目并使用 aurelia-i18n 插件。 到目前为止,它看起来很棒,翻译正在工作,并且当我更改区域设置时会立即更新界面语言。 问题:是...
在 i18n SSR Angular 19 应用程序中设置 LOCALE_ID 的最佳方法是什么?
在 i18n SSR Angular 19 应用程序中设置 LOCALE_ID 的最佳方法是什么? 我可以通过设置此 DI 令牌在服务器 (app.server.config.ts) 上设置它: { 提供:LOCALE_ID, 使用工厂:...
我正在使用 Rails 3.1.1,我想正确翻译 ActiveModel 的错误消息。我不知道覆盖 i18n_scope 是否是解决我的问题的正确方法(或者是否还有其他
所有国际浏览器都以英语还是浏览器的母语显示异常 STACK?
这个问题不是关于翻译网页内容。它是关于 JavaScript 引擎中抛出的异常。 我想知道是否所有国际安装的浏览器都安装...
我正在开发一个 Angular 19 项目,我正在尝试添加国际化 (i18n) 功能以支持多种语言。我遵循了一些指南和建议,但我不断遇到
在jade.renderFile()中包含i18n翻译,不带express
我有一个应用程序,我一直在我的 jade 文件中使用旧的 i18n __(' ') 语法进行翻译,但现在我正在将电子邮件功能移到我的 Express 控制器之外。 现在就开始做吧
我正在尝试使用 i18next-json-sync npm 包来同步我的 angular2/nodejs 项目的不同语言文件。但给定的用法对我不起作用。 我的 lang 文件结构是: -package.js...
我有带有文本的表格结构。我想使用react-i18next 对其进行本地化。 使用 Trans,它支持基本的 html 标签,例如 .但是,我的电子邮件模板如下: &l... 我有带有文本的表格结构。我想使用react-i18next 来本地化它。 使用Trans,它支持基本的html标签,如。但是,我的电子邮件模板如下: <table><tr><td>Hello User</td></tr><tr><td>Please visit the site for exclusive offers</td></tr></table> 我不想将表格和文本分开。我希望它在translation.json 本身中。 i18n中有没有办法实现这种场景? 只需将 HTML 标签提供给 Trans 组件即可。其中 component 对象中的键与翻译 JSON 中的 HTML 标签相匹配。根据您的需要进行修改。 <Trans i18nKey="yourKey" components={{table: <table></table>, tr: <tr></tr>, td: <td></td>}}/>