English | 日本語(原文|Original)
js-i18n.nvim は、JavaScript の i18n ライブラリをサポートする Neovim プラグインです。
concept.mp4
Warning
このプラグインはまだ開発中であり、開発者の利用ケースに最適化しています。
- 翻訳をバーチャルテキストとして表示
- 翻訳の編集 (コマンド or コードアクション)
- 翻訳が不足している場合のエラー表示
- 定義ジャンプ
- ホバーによる翻訳の表示
- キーの補完
- モノレポ のサポート
- いくつかのライブラリのサポート (i18next, react-i18next, next-intl)
- Neovim 0.10.0 以上 (0.10.0 未満では動作確認していません)
- jq 翻訳文言の編集に使用します。
{
"nabekou29/js-i18n.nvim",
dependencies = {
"neovim/nvim-lspconfig",
"nvim-treesitter/nvim-treesitter",
"nvim-lua/plenary.nvim",
},
event = { "BufReadPre", "BufNewFile" },
opts = {}
}
-
:I18nSetLang [lang]
- 言語を設定します。設定された言語はバーチャルテキストの表示や定義ジャンプに使用されます。 -
:I18nEditTranslation [lang]
- カーソルがある位置の翻訳を編集します。キーにマッチする翻訳がない場合は、新しい翻訳を追加します。
lang
を省略した場合は、現在表示されている言語を使用します。 -
:I18nVirtualTextEnable
- バーチャルテキストの表示を有効にします。 -
:I18nVirtualTextDisable
- バーチャルテキストの表示を無効にします。 -
:I18nVirtualTextToggle
- バーチャルテキストの表示を切り替えます。 -
:I18nDiagnosticEnable
- 診断情報の表示を有効にします。 -
:I18nDiagnosticDisable
- 診断情報の表示を無効にします。 -
:I18nDiagnosticToggle
- 診断情報の表示を切り替えます。 -
:I18nCopyKey
- JSON ファイルで実行することで、カーソルがある位置のキーをクリップボードにコピーします。
デフォルトの設定は以下の通りです。 完全な設定の一覧は config.lua を参照してください。
{
primary_language = {}, -- 優先表示する言語(バーチャルテキストなどの表示に使用する言語の初期設定)
translation_source = { "**/{locales,messages}/*.json" }, -- 翻訳リソースのパターン
detect_language = ..., -- 言語を検出する関数。デフォルトではファイル名からヒューリスティックに検出する関数が使用されます。
key_separator = ".", -- キーのセパレータ
virt_text = {
enabled = true, -- バーチャルテキストの表示を有効にする
format = ..., -- バーチャルテキストのフォーマット関数
conceal_key = false, -- キーを隠して翻訳のみを表示する
fallback = false, -- 選択中のバーチャルテキストが表示できない場合に
max_length = 0, -- バーチャルテキストの最大長。0の場合は無制限。
max_width = 0, -- バーチャルテキストの最大幅。0の場合は無制限。(`max_length` が優先されます。)
},
diagnostic = {
enabled = true, -- 診断情報の表示を有効にする
severity = vim.diagnostic.severity.WARN, -- 診断情報の重要度
},
}
- ライブラリサポートの強化
- namespace のサポート