main
dart 3,175 lines 86.5 KB
Raw
1 // ignore: unused_import
2 import 'package:intl/intl.dart' as intl;
3 import 'app_localizations.dart';
4
5 // ignore_for_file: type=lint
6
7 /// The translations for Japanese (`ja`).
8 class AppLocalizationsJa extends AppLocalizations {
9 AppLocalizationsJa([String locale = 'ja']) : super(locale);
10
11 @override
12 String get app_name => 'LocalMind';
13
14 @override
15 String get app_tagline => 'ローカルAI。プライバシーを保護して、あなたのルールで。';
16
17 @override
18 String get app_version => '1.0.0';
19
20 @override
21 String get cancel => 'キャンセル';
22
23 @override
24 String get confirm => '確認';
25
26 @override
27 String get delete => '削除';
28
29 @override
30 String get save => '保存';
31
32 @override
33 String get retry => '再試行';
34
35 @override
36 String get close => '閉じる';
37
38 @override
39 String get done => '完了';
40
41 @override
42 String get continue_action => '続行';
43
44 @override
45 String get skip => 'スキップ';
46
47 @override
48 String get install => 'インストール';
49
50 @override
51 String get download => 'ダウンロード';
52
53 @override
54 String get resume => '再開';
55
56 @override
57 String get pause => '一時停止';
58
59 @override
60 String get stop => '停止';
61
62 @override
63 String get edit => '編集';
64
65 @override
66 String get preview => 'プレビュー';
67
68 @override
69 String get unload => 'アンロード';
70
71 @override
72 String get load => 'ロード';
73
74 @override
75 String get rename => '名前変更';
76
77 @override
78 String get pin => 'ピン留め';
79
80 @override
81 String get unpin => 'ピン留め解除';
82
83 @override
84 String get share => '共有';
85
86 @override
87 String get copy => 'コピー';
88
89 @override
90 String get copied => 'コピーしました!';
91
92 @override
93 String get copied_to_clipboard => 'クリップボードにコピーしました';
94
95 @override
96 String get select => '選択';
97
98 @override
99 String get active => 'アクティブ';
100
101 @override
102 String get all => 'すべて';
103
104 @override
105 String get none => 'なし';
106
107 @override
108 String get none_selected => '未選択';
109
110 @override
111 String get online => 'オンライン';
112
113 @override
114 String get connected => '接続済み';
115
116 @override
117 String get checking => '確認中';
118
119 @override
120 String get offline => 'オフライン';
121
122 @override
123 String get error => 'エラー';
124
125 @override
126 String get unknown_error => '不明なエラー';
127
128 @override
129 String get not_now => '後で';
130
131 @override
132 String get enable => '有効にする';
133
134 @override
135 String get proceed_anyway => 'このまま続行';
136
137 @override
138 String get test_connection => '接続テスト';
139
140 @override
141 String get testing => 'テスト中...';
142
143 @override
144 String get connection_successful => '接続に成功しました!';
145
146 @override
147 String get connection_failed => '接続に失敗しました。設定を確認してください。';
148
149 @override
150 String get save_continue => '保存して続行';
151
152 @override
153 String get save_changes => '変更を保存';
154
155 @override
156 String get finish_setup => 'セットアップを完了';
157
158 @override
159 String get start_new_chat => '新しいチャットを開始';
160
161 @override
162 String get cannot_undo => 'この操作は取り消せません。';
163
164 @override
165 String get ram_warning => 'RAM警告';
166
167 @override
168 String get recommended => '推奨';
169
170 @override
171 String get may_be_large => 'このデバイスには大きすぎる可能性があります';
172
173 @override
174 String get calculating => '計算中...';
175
176 @override
177 String get download_failed => 'ダウンロード失敗';
178
179 @override
180 String get downloaded => 'ダウンロード済み';
181
182 @override
183 String get not_downloaded => '未ダウンロード';
184
185 @override
186 String get installed => 'インストール済み';
187
188 @override
189 String get not_installed => '未インストール';
190
191 @override
192 String get loading => '読み込み中...';
193
194 @override
195 String get thinking => '思考中';
196
197 @override
198 String get processing => '処理中...';
199
200 @override
201 String get initializing => '初期化中...';
202
203 @override
204 String get ready => '準備完了';
205
206 @override
207 String get preparing_app => 'アプリを準備中...';
208
209 @override
210 String get initializing_services => 'サービスを初期化中...';
211
212 @override
213 String get configuring_server => 'サーバーを構成中...';
214
215 @override
216 String get startup_failed => '起動に失敗しました';
217
218 @override
219 String get something_went_wrong => '問題が発生しました';
220
221 @override
222 String get delete_model_title => 'モデルを削除';
223
224 @override
225 String delete_model_body(String name) {
226 return '$name を削除してもよろしいですか?';
227 }
228
229 @override
230 String delete_model_body_with_size(String name, String size) {
231 return '$name を削除してもよろしいですか?これにより約 $size の空き容量が増えます。\n\n必要に応じて、このモデルは後で再ダウンロードできます。';
232 }
233
234 @override
235 String get delete_voice_title => '音声の削除';
236
237 @override
238 String delete_voice_body(String name, String size) {
239 return '$name を削除してもよろしいですか?これにより約 $size の空き容量が増えます。\n\n必要に応じて、この音声は後で再ダウンロードできます。';
240 }
241
242 @override
243 String get delete_server_title => 'サーバーの削除';
244
245 @override
246 String delete_server_body(String name) {
247 return '本当に「$name」を削除しますか?この操作は取り消せません。';
248 }
249
250 @override
251 String get delete_conversation_title => 'チャットを削除しますか?';
252
253 @override
254 String delete_conversation_body(String title) {
255 return '本当に「$title」を削除しますか?この操作は取り消せません。';
256 }
257
258 @override
259 String get delete_message_title => 'メッセージを削除しますか?';
260
261 @override
262 String delete_persona_title(String name) {
263 return '「$name」を削除しますか?';
264 }
265
266 @override
267 String get delete_persona_body => 'この操作は取り消せません。';
268
269 @override
270 String get delete_builtin_persona_body => 'これは組み込みのペルソナです。後で「設定」から復元できます。';
271
272 @override
273 String get restore_builtin_personas => 'デフォルトのペルソナを復元';
274
275 @override
276 String get restore_builtin_personas_desc => '削除した組み込みペルソナを再追加する';
277
278 @override
279 String get restore_builtin_personas_success => 'デフォルトのペルソナが復元されました';
280
281 @override
282 String get clear_personas => 'ペルソナをクリア';
283
284 @override
285 String get enable_image_compression => '送信前に画像を圧縮';
286
287 @override
288 String get enable_image_compression_desc =>
289 '添付画像のサイズ変更と圧縮を行い、送信がサーバー制限内に収まるようにします';
290
291 @override
292 String get image_compression_level => '圧縮率の強さ';
293
294 @override
295 String get image_compression_level_desc => '圧縮率が高いほど、より低画質で小さいファイルサイズになります';
296
297 @override
298 String get image_compression_level_low => '低';
299
300 @override
301 String get image_compression_level_medium => '中';
302
303 @override
304 String get image_compression_level_high => '高';
305
306 @override
307 String get sort_models_tooltip => 'モデルを並べ替え';
308
309 @override
310 String get sort_by_favorites => 'お気に入りを優先';
311
312 @override
313 String get sort_by_name => '名前順 (A-Z)';
314
315 @override
316 String get sort_by_size_smallest => 'サイズ順 (小さい順)';
317
318 @override
319 String get sort_by_size_largest => 'サイズ順 (大きい順)';
320
321 @override
322 String get sort_by_context_length => 'コンテキスト長順';
323
324 @override
325 String bulk_ai_rename_progress(int done, int total) {
326 return '名前変更中 $done/$total...';
327 }
328
329 @override
330 String selected_count(int count) {
331 return '$count 件選択中';
332 }
333
334 @override
335 String get ai_rename_tooltip => 'AIで選択項目の名前を変更';
336
337 @override
338 String get new_chat_in_folder_tooltip => 'このフォルダー内に新規チャット';
339
340 @override
341 String total_tokens_count(int count) {
342 return '$count トークン';
343 }
344
345 @override
346 String get smart_replies_use_persona => 'スマートリプライにペルソナを使用';
347
348 @override
349 String get smart_replies_use_persona_desc =>
350 '提案される返信が一般的なアシスタントではなく、有効なペルソナのトーンに沿ったものになります';
351
352 @override
353 String get keep_persona_on_new_chat => '新規チャット時にペルソナを維持';
354
355 @override
356 String get keep_persona_on_new_chat_desc => '新しいチャットの開始時に選択したペルソナをクリアしない';
357
358 @override
359 String get role_swap_button_enabled => 'ロール切替ボタンを表示';
360
361 @override
362 String get role_swap_button_enabled_desc =>
363 'チャット入力欄に、回答を生成せずにユーザーではなくアシスタントとしてメッセージを送信できるボタンを表示します';
364
365 @override
366 String get send_as_user_tooltip => 'ユーザーとして送信';
367
368 @override
369 String get send_as_assistant_tooltip => 'アシスタントとして送信 (回答なし)';
370
371 @override
372 String get insert_without_generating_tooltip => '回答を生成せずに挿入';
373
374 @override
375 String get token_usage_title => 'トークン使用量';
376
377 @override
378 String get total_tokens_label => '使用トークン';
379
380 @override
381 String get usage_percent_label => '使用されたコンテキスト';
382
383 @override
384 String get export_choice_title => 'エクスポート';
385
386 @override
387 String get export_choice_body => 'どのようにエクスポートしますか?';
388
389 @override
390 String get copy_to_clipboard => 'クリップボードにコピー';
391
392 @override
393 String bulk_export_conversations_success(int count) {
394 return '$count 件の会話をエクスポートしました';
395 }
396
397 @override
398 String get bulk_ai_rename_confirm_title => 'AIで名前を変更しますか?';
399
400 @override
401 String bulk_ai_rename_confirm_body(int count) {
402 return 'これにより、AIが選択した $count 件の会話それぞれに対して新しいタイトルを生成し、現在のタイトルを上書きします。処理には時間がかかる場合があり、元に戻すことはできません。';
403 }
404
405 @override
406 String get sort_by_modified_date => '最終更新日';
407
408 @override
409 String get sort_by_created_date => '作成日';
410
411 @override
412 String get sort_title => '並べ替え';
413
414 @override
415 String get clear_conversation_title => 'チャット履歴をクリアしますか?';
416
417 @override
418 String get clear_conversation_body => 'このチャット内のすべてのメッセージが削除されます。';
419
420 @override
421 String get clear => 'クリア';
422
423 @override
424 String label_completed(String label) {
425 return '$label が完了しました';
426 }
427
428 @override
429 String error_with_message(String error) {
430 return 'エラー: $error';
431 }
432
433 @override
434 String preview_failed(String error) {
435 return 'プレビューに失敗しました: $error';
436 }
437
438 @override
439 String loading_model(String modelId) {
440 return '$modelId を読み込み中...';
441 }
442
443 @override
444 String model_loaded(String modelId, String backend) {
445 return 'モデルを読み込みました: $modelId ($backend)';
446 }
447
448 @override
449 String get no_model_loaded =>
450 'モデルが読み込まれていません。「ローカルモデルの管理」をタップしてモデルをダウンロードし、読み込んでください。';
451
452 @override
453 String loading_model_error(String error) {
454 return 'エラー: $error';
455 }
456
457 @override
458 String get delete_conversation => 'チャットを削除しますか?';
459
460 @override
461 String get nav_history => '履歴';
462
463 @override
464 String get nav_servers => 'サーバー';
465
466 @override
467 String get nav_local_models => 'ローカルモデル';
468
469 @override
470 String get nav_tts => '音声合成';
471
472 @override
473 String get nav_personas => 'ペルソナ';
474
475 @override
476 String get nav_settings => '設定';
477
478 @override
479 String get nav_new_chat => '新しいチャット';
480
481 @override
482 String get search_hint => 'チャットを検索...';
483
484 @override
485 String get no_server_selected => 'サーバーが選択されていません';
486
487 @override
488 String get switch_server => 'サーバー切り替え';
489
490 @override
491 String get switch_server_subtitle => '接続するサーバーを選択してください';
492
493 @override
494 String get manage_servers => 'サーバーの管理';
495
496 @override
497 String get open_source => 'オープンソース';
498
499 @override
500 String get open_source_desc =>
501 'LocalMind はオープンソースです。GitHub で開発状況の確認や貢献ができます。';
502
503 @override
504 String get star_on_github => 'GitHub でスターを付ける';
505
506 @override
507 String get add_more => 'さらに追加';
508
509 @override
510 String get on_github => 'GitHub で';
511
512 @override
513 String get could_not_open_github => 'GitHub を開けませんでした。';
514
515 @override
516 String get settings_title => '設定';
517
518 @override
519 String get settings_appearance => '外観';
520
521 @override
522 String get settings_language => '言語';
523
524 @override
525 String get language_system_default => 'システムデフォルト';
526
527 @override
528 String get settings_tts => '音声合成';
529
530 @override
531 String get settings_android_assistant => 'Android アシスタント';
532
533 @override
534 String get assistant_default_title => 'デフォルトの音声アシスタント';
535
536 @override
537 String get assistant_default_description =>
538 'Localmind を Android のシステムデフォルト音声アシスタントに設定します。';
539
540 @override
541 String get assistant_status_active => 'Localmind がデフォルトのアシスタントに設定されています';
542
543 @override
544 String get assistant_status_available => 'Localmind をデフォルトのアシスタントに設定できます';
545
546 @override
547 String get assistant_status_manual => 'システム設定を開き、Localmind を手動で選択してください';
548
549 @override
550 String get assistant_status_unsupported =>
551 'デフォルトアシスタントの設定は Android 7.0 以降でのみ利用可能です';
552
553 @override
554 String get assistant_status_checking => 'アシスタントのステータスを確認中…';
555
556 @override
557 String get assistant_set_default => 'デフォルトアシスタントに設定';
558
559 @override
560 String get assistant_open_settings => 'アシスタント設定を開く';
561
562 @override
563 String assistant_error(Object error) {
564 return 'エラー: $error';
565 }
566
567 @override
568 String get settings_behavior => '動作';
569
570 @override
571 String get settings_on_device => 'ローカル推論';
572
573 @override
574 String get settings_default_server => 'デフォルトサーバー';
575
576 @override
577 String get settings_default_persona => 'デフォルトペルソナ';
578
579 @override
580 String get settings_default_model => 'デフォルトモデル';
581
582 @override
583 String get settings_default_model_desc => '新しいチャットを開始するときに自動的に選択されます。';
584
585 @override
586 String get settings_privacy => 'プライバシー';
587
588 @override
589 String get settings_data_management => 'データ管理';
590
591 @override
592 String get settings_about => 'LocalMind について';
593
594 @override
595 String get theme => 'テーマ';
596
597 @override
598 String get theme_system => 'システム';
599
600 @override
601 String get theme_light => 'ライト';
602
603 @override
604 String get theme_dark => 'ダーク';
605
606 @override
607 String get theme_claude => 'Claude';
608
609 @override
610 String get font_size => 'フォントサイズ';
611
612 @override
613 String get font_size_desc => 'チャットのテキストサイズを調整します。';
614
615 @override
616 String get font_preview => 'これはテキストの表示サイズ確認用のプレビューです。';
617
618 @override
619 String get code_theme_dark => 'コードテーマ (ダーク)';
620
621 @override
622 String get code_theme_light => 'コードテーマ (ライト)';
623
624 @override
625 String get code_theme_desc => 'コードブロックのシンタックスハイライトテーマを選択します。';
626
627 @override
628 String get tts_engine => '音声合成エンジン';
629
630 @override
631 String get tts_engine_system => 'システム音声合成';
632
633 @override
634 String get tts_engine_kitten => 'Kitten TTS';
635
636 @override
637 String get voice => '音声';
638
639 @override
640 String get voice_female => '女性';
641
642 @override
643 String get voice_male => '男性';
644
645 @override
646 String get voice_other => 'その他';
647
648 @override
649 String get tts_speed => '読み上げ速度';
650
651 @override
652 String get tts_speed_desc => '再生速度を調整します。';
653
654 @override
655 String get manage_tts_models => '音声合成モデルの管理';
656
657 @override
658 String get manage_on_device_models => 'ローカルモデルの管理';
659
660 @override
661 String get enable_smart_reply => 'スマートリプライ';
662
663 @override
664 String get ai_user_response_enabled => 'AIユーザーメッセージ (送信長押し)';
665
666 @override
667 String get ai_user_response_enabled_desc =>
668 '送信ボタンを3秒間長押しすると、AIが次のメッセージを執筆して送信します';
669
670 @override
671 String get ai_user_response_tooltip => 'AIでユーザーメッセージを生成';
672
673 @override
674 String get streaming_responses => 'ストリーミング応答';
675
676 @override
677 String get auto_generate_titles => 'タイトルの自動生成';
678
679 @override
680 String get send_on_enter => 'Enterキーで送信';
681
682 @override
683 String get show_system_messages => 'システムメッセージを表示';
684
685 @override
686 String get show_system_messages_desc =>
687 'ペルソナが選択されていない場合、リクエストごとに関連するデフォルトのアシスタントシステムプロンプトを送信する';
688
689 @override
690 String get show_system_messages_in_chat => 'チャット内にシステムメッセージを表示';
691
692 @override
693 String get show_system_messages_in_chat_desc =>
694 'インポートされたバックアップなどからのシステムメッセージを、チャット画面上に吹き出しとして表示します';
695
696 @override
697 String get auto_collapse_thinking => '思考プロセスを自動で折りたたむ';
698
699 @override
700 String get auto_collapse_thinking_desc =>
701 'メインの回答が存在する場合、生成完了後に推論プロセスを自動で折りたたみます';
702
703 @override
704 String get haptic_feedback => '触覚フィードバック';
705
706 @override
707 String get enable_mcp => 'MCPを有効化';
708
709 @override
710 String get new_chat_mcp_default => '新規チャットでMCPをデフォルトにする';
711
712 @override
713 String get show_data_indicator => 'データインジケーターを表示';
714
715 @override
716 String get privacy_info => '「LocalMindがあなたのデータを閲覧することはありません」';
717
718 @override
719 String get delete_all_conversations => 'すべてのチャット履歴を削除';
720
721 @override
722 String get reset_settings_defaults => '設定をデフォルトに戻す';
723
724 @override
725 String get chat_title => 'LocalMind';
726
727 @override
728 String get chat_parameters_tooltip => 'チャットパラメータ';
729
730 @override
731 String get change_persona => 'ペルソナを変更';
732
733 @override
734 String get set_persona => 'ペルソナを設定';
735
736 @override
737 String get remove_persona => 'ペルソナを削除';
738
739 @override
740 String get clear_conversation => '履歴をクリア';
741
742 @override
743 String get connection_error => '接続エラー。サーバーを確認してください。';
744
745 @override
746 String get disconnected => 'サーバーから切断されました。';
747
748 @override
749 String get configure => '構成';
750
751 @override
752 String get select_model => 'モデルを選択';
753
754 @override
755 String get select_persona => 'ペルソナを選択';
756
757 @override
758 String get manage_personas => 'ペルソナの管理';
759
760 @override
761 String get personas_combine_hint => '選択したペルソナは統合されます';
762
763 @override
764 String get start_conversation => 'チャットを開始しましょう';
765
766 @override
767 String get recent_chats => '最近のチャット';
768
769 @override
770 String get see_all => 'すべて見る';
771
772 @override
773 String get quick_write => '関数の作成をサポートして';
774
775 @override
776 String get quick_explain => 'このコードを説明して';
777
778 @override
779 String get quick_debug => 'デバッグして';
780
781 @override
782 String get quick_async => 'async/await はどう使えばいい?';
783
784 @override
785 String get history_missing_title => '履歴が見つかりません';
786
787 @override
788 String get history_missing_desc => 'このチャットのメッセージが削除されたか、履歴レコードが破損しています。';
789
790 @override
791 String get technical_details => '技術的な詳細';
792
793 @override
794 String get last_error => '最後のエラー:';
795
796 @override
797 String get copy_info => '情報をコピー';
798
799 @override
800 String get conversation_id => '会話ID';
801
802 @override
803 String get created_at => '作成日時';
804
805 @override
806 String get expected_messages => '期待されるメッセージ数';
807
808 @override
809 String get debug_dialog_desc => '同期の問題を特定するための診断情報。';
810
811 @override
812 String get chat_input_hint => '何でも質問してください';
813
814 @override
815 String get send_message_tooltip => 'メッセージを送信';
816
817 @override
818 String get stop_generation_tooltip => '生成を停止';
819
820 @override
821 String get attach_images_tooltip => '画像を添付';
822
823 @override
824 String get start_listening_tooltip => '聞き取りを開始';
825
826 @override
827 String get stop_listening_tooltip => '聞き取りを停止';
828
829 @override
830 String tool_label(String toolCallId) {
831 return 'ツール: $toolCallId';
832 }
833
834 @override
835 String get tool_unknown => 'ツール: 不明';
836
837 @override
838 String get message_options => 'メッセージオプション';
839
840 @override
841 String get copy_markdown => 'Markdownとしてコピー';
842
843 @override
844 String get copied_markdown => 'Markdownとしてコピーしました';
845
846 @override
847 String get read_aloud => '読み上げる';
848
849 @override
850 String get stop_reading => '読み上げを停止';
851
852 @override
853 String get more => 'その他';
854
855 @override
856 String character_count(int length) {
857 return '$length 文字';
858 }
859
860 @override
861 String get edit_message => 'メッセージを編集';
862
863 @override
864 String get edit_message_desc => '保存すると、以下の応答が削除され、再生成されます。';
865
866 @override
867 String get save_regenerate => '保存して再生成';
868
869 @override
870 String get chat_settings_title => 'チャット設定';
871
872 @override
873 String get reset_defaults => 'デフォルトに戻す';
874
875 @override
876 String get parameters_tab => 'パラメータ';
877
878 @override
879 String get mcp_tab => 'MCP';
880
881 @override
882 String get temperature => '温度';
883
884 @override
885 String get temperature_desc => 'ランダム性を制御:高い=創造的、低い=集中';
886
887 @override
888 String get top_p => 'Top P';
889
890 @override
891 String get top_p_desc => '核サンプリングしきい値';
892
893 @override
894 String get max_tokens => '最大トークン数';
895
896 @override
897 String get max_tokens_desc => '応答制限';
898
899 @override
900 String get context_length => 'コンテキスト長';
901
902 @override
903 String get context_length_desc => '履歴ウィンドウ';
904
905 @override
906 String get mcp_disabled_warning => 'MCPはグローバルで無効化されています。設定画面から有効化して使用してください。';
907
908 @override
909 String get mcp_enable_chat => 'このチャットでMCPを有効化';
910
911 @override
912 String get auto_execute_tools => 'ツールの自動実行';
913
914 @override
915 String get beta_label => 'ベータ';
916
917 @override
918 String get experimental_label => '実験的';
919
920 @override
921 String get add_ephemeral_mcp => '一時的なMCPサーバーを追加';
922
923 @override
924 String get mcp_label_placeholder => 'ラベル';
925
926 @override
927 String get mcp_url_placeholder => 'URL (https://...)';
928
929 @override
930 String get active_integrations => '有効な統合';
931
932 @override
933 String get import_mcp_json => 'JSONをインポート';
934
935 @override
936 String get import_mcp_json_dialog_title => 'MCP設定JSONをインポート';
937
938 @override
939 String get import_mcp_json_instructions =>
940 'LM Studio (mcp.json) から mcpServers JSON を直接コピーするか、以下にプラグイン配列を貼り付けてください:';
941
942 @override
943 String get import_mcp_json_placeholder =>
944 'ここに mcpServers JSON またはプラグインリストを貼り付け...';
945
946 @override
947 String mcp_import_success(int count) {
948 return '$count 件の統合を正常にインポートしました';
949 }
950
951 @override
952 String get mcp_import_failed => 'JSON 内に有効な MCP 統合が見つかりませんでした';
953
954 @override
955 String get enable_notifications => '通知を有効にする';
956
957 @override
958 String get enable_notifications_desc => 'モデルのダウンロード完了時に通知を受け取ります。';
959
960 @override
961 String get chat_history_title => 'チャット履歴';
962
963 @override
964 String get conversation_just_now => 'たった今';
965
966 @override
967 String conversation_minutes_ago(int minutes) {
968 return '$minutes分前';
969 }
970
971 @override
972 String conversation_hours_ago(int hours) {
973 return '$hours時間前';
974 }
975
976 @override
977 String get conversation_yesterday => '昨日';
978
979 @override
980 String conversation_days_ago(int days) {
981 return '$days日前';
982 }
983
984 @override
985 String conversation_date(int month, int day, int year) {
986 return '$year/$month/$day';
987 }
988
989 @override
990 String get options_tooltip => 'オプション';
991
992 @override
993 String get no_results_found => '結果が見つかりません';
994
995 @override
996 String get no_conversations_yet => 'チャット履歴がまだありません';
997
998 @override
999 String get try_different_search => '別の検索ワードを試してください';
1000
1001 @override
1002 String get start_new_conversation => '新しいチャットを開始する';
1003
1004 @override
1005 String get rename_conversation => 'チャットの名前を変更';
1006
1007 @override
1008 String get enter_new_title => '新しいタイトルを入力';
1009
1010 @override
1011 String get pinned_section => 'ピン留め済み';
1012
1013 @override
1014 String get today_section => '今日';
1015
1016 @override
1017 String get yesterday_section => '昨日';
1018
1019 @override
1020 String get previous_7_days => '過去 7 日間';
1021
1022 @override
1023 String get previous_30_days => '過去 30 日間';
1024
1025 @override
1026 String get older_section => '過去';
1027
1028 @override
1029 String get onboarding_choose_language => '言語の選択';
1030
1031 @override
1032 String get onboarding_choose_language_desc =>
1033 '優先する言語を選択してください。この設定はいつでも変更できます。';
1034
1035 @override
1036 String get onboarding_localmind => 'LOCALMIND';
1037
1038 @override
1039 String get onboarding_connect_server => 'サーバーへの接続';
1040
1041 @override
1042 String get onboarding_connect_desc =>
1043 'LM Studio、Ollama、またはOpenRouterに接続して、プライベートAI体験を開始しましょう。';
1044
1045 @override
1046 String get openai_compatible_api => 'OpenAI 互換 API';
1047
1048 @override
1049 String get https_requires_ssl => 'HTTPS には SSL が必要です';
1050
1051 @override
1052 String get most_local_setups_use_http => 'ほとんどのローカル設定では http:// を使います';
1053
1054 @override
1055 String get onboarding_welcome => 'Welcome to LocalMind';
1056
1057 @override
1058 String get server_type_on_device => 'ローカル';
1059
1060 @override
1061 String get server_type_lm_studio => 'LM Studio';
1062
1063 @override
1064 String get server_type_ollama => 'Ollama';
1065
1066 @override
1067 String get server_type_ollama_cloud => 'Ollama Cloud';
1068
1069 @override
1070 String get server_type_ollama_cloud_sub => 'クラウド管理';
1071
1072 @override
1073 String get server_type_ollama_cloud_display => 'Ollama Cloud';
1074
1075 @override
1076 String get server_address_ollama_cloud => 'ollama.com';
1077
1078 @override
1079 String get ollama_cloud_disclosure =>
1080 'Ollama Cloud に接続すると、チャットメッセージと入力は推論のために Ollama の管理サーバーに送信されます。LocalMind は会話を追跡または保存しません。このキーは ollama.com/settings/keys でいつでも取り消すことができます。';
1081
1082 @override
1083 String get api_key_required_ollama_cloud => 'Ollama Cloud には API キーが必要です';
1084
1085 @override
1086 String get api_key_hint_ollama_cloud => 'Ollama Cloud API キーを貼り付け';
1087
1088 @override
1089 String get add_server_ollama_cloud_subtitle =>
1090 'ollama.com/settings/keys の API キーで Ollama Cloud に接続し、管理対象のクラウドモデルにアクセスします。';
1091
1092 @override
1093 String get add_server_openrouter_subtitle =>
1094 '有効な API キーで OpenRouter 経由で接続し、モデルルーティングの準備を整えます。';
1095
1096 @override
1097 String get add_server_requesty_subtitle =>
1098 '有効な API キーで Requesty 経由で接続し、モデルルーティングの準備を整えます。';
1099
1100 @override
1101 String get add_server_endpoint_subtitle =>
1102 'ローカルまたはセルフホストのエンドポイントを設定し、保存前に接続を確認します。';
1103
1104 @override
1105 String get server_type_openrouter => 'OpenRouter';
1106
1107 @override
1108 String get server_type_requesty => 'Requesty';
1109
1110 @override
1111 String get server_type_openrouter_sub => '統合クラウド';
1112
1113 @override
1114 String get server_type_requesty_sub => '統合クラウド';
1115
1116 @override
1117 String get ready_continue => '続行可能';
1118
1119 @override
1120 String get waiting_selection => '選択待ち';
1121
1122 @override
1123 String get setup_connection => '接続のセットアップ';
1124
1125 @override
1126 String setup_connection_desc(String server) {
1127 return 'チャットを開始するには、$server サーバーを構成してください。';
1128 }
1129
1130 @override
1131 String get server_name => 'サーバー名';
1132
1133 @override
1134 String get name_required => '名前は必須です';
1135
1136 @override
1137 String get name_max_50 => '最大50文字';
1138
1139 @override
1140 String get host_label => 'ホスト / IPアドレス';
1141
1142 @override
1143 String get host_required => 'ホストは必須です';
1144
1145 @override
1146 String get port_label => 'ポート';
1147
1148 @override
1149 String get port_required => 'ポートは必須です';
1150
1151 @override
1152 String get port_invalid => '数値である必要があります';
1153
1154 @override
1155 String get port_range => '有効なポート番号(1-65535)を入力してください';
1156
1157 @override
1158 String get api_key_required => 'APIキー *';
1159
1160 @override
1161 String get api_key_optional => 'APIキー(オプション)';
1162
1163 @override
1164 String get api_key_required_openrouter => 'OpenRouterにはAPIキーが必要です';
1165
1166 @override
1167 String get api_key_required_requesty => 'RequestyにはAPIキーが必要です';
1168
1169 @override
1170 String get api_key_format => 'OpenRouterのAPIキーは sk- で始まります';
1171
1172 @override
1173 String get my_server_hint => 'マイサーバー';
1174
1175 @override
1176 String get name_length_validation => '名前は50文字以内にする必要があります';
1177
1178 @override
1179 String get host_valid => '有効なホスト名またはIPアドレスを入力してください';
1180
1181 @override
1182 String get api_key_hint_openrouter => 'sk-...';
1183
1184 @override
1185 String get api_key_hint_requesty => 'rqsty-...';
1186
1187 @override
1188 String get api_key_hint_generic => '認証が必要なサーバー用';
1189
1190 @override
1191 String get update_server => 'サーバーを更新';
1192
1193 @override
1194 String get save_server => 'サーバーを保存';
1195
1196 @override
1197 String get server_updated => 'サーバーを更新しました';
1198
1199 @override
1200 String get server_added => 'サーバーを追加しました';
1201
1202 @override
1203 String get download_model_title => 'モデルのダウンロード';
1204
1205 @override
1206 String get download_model_desc =>
1207 'ダウンロードするモデルを選択してください。\nモデルはデバイス上でローカルに実行されます。';
1208
1209 @override
1210 String get on_device_android_only => 'ローカル推論は現在Androidのみで利用可能です。';
1211
1212 @override
1213 String get total_ram => '合計 RAM';
1214
1215 @override
1216 String get available => '利用可能';
1217
1218 @override
1219 String ram_min_required(String fileSize) {
1220 return '最低 $fileSize GB RAM';
1221 }
1222
1223 @override
1224 String download_progress(String percent, String speed) {
1225 return '$percent% • $speed';
1226 }
1227
1228 @override
1229 String eta_label(String eta) {
1230 return '残り時間: $eta';
1231 }
1232
1233 @override
1234 String paused_progress(String percent) {
1235 return '一時停止中 - $percent%';
1236 }
1237
1238 @override
1239 String ram_warning_body_download(String ram, String totalMemory) {
1240 return 'このモデルは少なくとも $ram GB のRAMを必要としますが、お使いのデバイスのRAMは $totalMemory です。正常に動作しないか、アプリがクラッシュする原因になる可能性があります。';
1241 }
1242
1243 @override
1244 String ram_warning_body_load(String availableRAM, String ram) {
1245 return 'デバイスの利用可能RAMは $availableRAM ですが、このモデルは少なくとも $ram GB を推奨しています。ロードに失敗するか、不安定になる可能性があります。';
1246 }
1247
1248 @override
1249 String get choose_theme => 'テーマの選択';
1250
1251 @override
1252 String get choose_theme_desc => 'アプリの外観をパーソナライズします。この設定は後からいつでも変更できます。';
1253
1254 @override
1255 String get theme_card_system => 'システム';
1256
1257 @override
1258 String get theme_card_system_sub => 'デバイスの設定に合わせる';
1259
1260 @override
1261 String get theme_card_light => 'ライト';
1262
1263 @override
1264 String get theme_card_light_sub => 'クリーンで明るい外観';
1265
1266 @override
1267 String get theme_card_dark => 'ダーク';
1268
1269 @override
1270 String get theme_card_dark_sub => '目に優しい外観';
1271
1272 @override
1273 String get theme_card_claude => 'Claude';
1274
1275 @override
1276 String get theme_card_claude_sub => '温かみのあるピーチ調のテーマ';
1277
1278 @override
1279 String get stay_updated => '最新情報を維持';
1280
1281 @override
1282 String get stay_updated_desc => 'AIモデルのダウンロード完了時や、長時間実行タスクの完了時に通知を受け取ります。';
1283
1284 @override
1285 String get notification_benefit_downloads => 'モデルのダウンロード進捗';
1286
1287 @override
1288 String get notification_benefit_completions => '生成の完了';
1289
1290 @override
1291 String get notification_benefit_background => 'バックグラウンドタスクのステータス';
1292
1293 @override
1294 String get allow_notifications => '通知を許可する';
1295
1296 @override
1297 String get servers_title => 'サーバー';
1298
1299 @override
1300 String get no_servers_yet => 'サーバーがありません';
1301
1302 @override
1303 String get no_servers_desc => 'AIモデルとチャットを開始するには、最初のサーバーを追加してください。';
1304
1305 @override
1306 String get add_server => 'サーバーを追加';
1307
1308 @override
1309 String switched_to_server(String name) {
1310 return '$name に切り替えました';
1311 }
1312
1313 @override
1314 String get edit_server => 'サーバーを編集';
1315
1316 @override
1317 String get add_server_title => 'サーバーを追加';
1318
1319 @override
1320 String get server_type_label => 'サーバータイプ';
1321
1322 @override
1323 String get server_icon_label => 'サーバーアイコン';
1324
1325 @override
1326 String get default_icon => 'デフォルトアイコン';
1327
1328 @override
1329 String get server_type_lm_studio_display => 'LM Studio';
1330
1331 @override
1332 String get server_type_openai_display => 'OpenAI 互換';
1333
1334 @override
1335 String get server_type_ollama_display => 'Ollama';
1336
1337 @override
1338 String get server_type_openrouter_display => 'OpenRouter';
1339
1340 @override
1341 String get server_type_requesty_display => 'Requesty';
1342
1343 @override
1344 String get server_type_on_device_display => 'ローカル';
1345
1346 @override
1347 String get server_address_openrouter => 'openrouter.ai';
1348
1349 @override
1350 String get server_address_requesty => 'router.requesty.ai';
1351
1352 @override
1353 String get server_address_on_device => 'ローカル推論';
1354
1355 @override
1356 String server_address_format(String host, String port) {
1357 return '$host:$port';
1358 }
1359
1360 @override
1361 String get default_badge => 'デフォルト';
1362
1363 @override
1364 String get set_as_default => 'デフォルトに設定';
1365
1366 @override
1367 String get select_icon => 'アイコンを選択';
1368
1369 @override
1370 String get select_icon_desc => 'サーバーのアイコンを選択してください';
1371
1372 @override
1373 String get search_icons_hint => 'アイコンを検索...';
1374
1375 @override
1376 String get server_icon_stack => 'サーバースタック';
1377
1378 @override
1379 String get server_icon_stack2 => 'サーバースタック 02';
1380
1381 @override
1382 String get server_icon_stack3 => 'サーバースタック 03';
1383
1384 @override
1385 String get server_icon_cloud => 'クラウド';
1386
1387 @override
1388 String get server_icon_cloud_server => 'クラウドサーバー';
1389
1390 @override
1391 String get server_icon_mcp => 'MCP サーバー';
1392
1393 @override
1394 String get server_icon_database => 'データベース';
1395
1396 @override
1397 String get server_icon_database1 => 'データベース 01';
1398
1399 @override
1400 String get server_icon_database2 => 'データベース 02';
1401
1402 @override
1403 String get server_icon_cpu => 'CPU';
1404
1405 @override
1406 String get server_icon_chip => 'チップ';
1407
1408 @override
1409 String get server_icon_chip2 => 'チップ 02';
1410
1411 @override
1412 String get server_icon_computer => 'コンピューター';
1413
1414 @override
1415 String get server_icon_laptop => 'ノートパソコン';
1416
1417 @override
1418 String get server_icon_terminal => 'コンピューターターミナル';
1419
1420 @override
1421 String get server_icon_code => 'コード';
1422
1423 @override
1424 String get server_icon_ai_brain => 'AI ブレイン';
1425
1426 @override
1427 String get server_icon_ai_brain2 => 'AI ブレイン 02';
1428
1429 @override
1430 String get server_icon_ai_cloud => 'AI クラウド';
1431
1432 @override
1433 String get server_icon_ai_network => 'AI ネットワーク';
1434
1435 @override
1436 String get server_icon_ai_chat => 'AI チャット';
1437
1438 @override
1439 String get server_icon_cellular => 'モバイルネットワーク';
1440
1441 @override
1442 String get server_icon_plug1 => 'プラグ 01';
1443
1444 @override
1445 String get server_icon_plug2 => 'プラグ 02';
1446
1447 @override
1448 String get server_icon_bot => 'ボット';
1449
1450 @override
1451 String get server_icon_bot2 => 'ボット 02';
1452
1453 @override
1454 String get server_icon_robotic => 'ロボット';
1455
1456 @override
1457 String get server_icon_rocket => 'ロケット';
1458
1459 @override
1460 String get server_icon_star => 'スター';
1461
1462 @override
1463 String get server_icon_settings1 => '設定 01';
1464
1465 @override
1466 String get server_icon_settings2 => '設定 02';
1467
1468 @override
1469 String get server_icon_home1 => 'ホーム 01';
1470
1471 @override
1472 String get server_icon_home2 => 'ホーム 02';
1473
1474 @override
1475 String get server_icon_folder1 => 'フォルダ 01';
1476
1477 @override
1478 String get server_icon_folder2 => 'フォルダ 02';
1479
1480 @override
1481 String get server_icon_file1 => 'ファイル 01';
1482
1483 @override
1484 String get server_icon_lock => 'ロック';
1485
1486 @override
1487 String get server_icon_key => 'キー 01';
1488
1489 @override
1490 String get server_icon_link => 'リンク 01';
1491
1492 @override
1493 String get server_icon_globe => '地球儀';
1494
1495 @override
1496 String get server_icon_api => 'API';
1497
1498 @override
1499 String get server_icon_arrow_right => '右矢印 01';
1500
1501 @override
1502 String get server_icon_check => 'チェックマーク';
1503
1504 @override
1505 String get server_icon_alert => '警告マーク';
1506
1507 @override
1508 String get server_icon_info => '情報マーク';
1509
1510 @override
1511 String get server_icon_zap => '稲妻マーク';
1512
1513 @override
1514 String get server_icon_cloud_upload => 'クラウドアップロード';
1515
1516 @override
1517 String get server_icon_cloud_download => 'クラウドダウンロード';
1518
1519 @override
1520 String get server_icon_refresh => '更新';
1521
1522 @override
1523 String get server_icon_hard_drive => 'ハードドライブ';
1524
1525 @override
1526 String get server_icon_drive => 'ドライブ';
1527
1528 @override
1529 String get personas_title => 'ペルソナ';
1530
1531 @override
1532 String get persona_category_general => '全般';
1533
1534 @override
1535 String get persona_category_coding => 'コーディング';
1536
1537 @override
1538 String get persona_category_education => '教育';
1539
1540 @override
1541 String get persona_category_creative => 'クリエイティブ';
1542
1543 @override
1544 String get persona_builtin_section => 'プリセット';
1545
1546 @override
1547 String get persona_my_section => 'マイペルソナ';
1548
1549 @override
1550 String get clone_edit => '複製して編集';
1551
1552 @override
1553 String get builtin_badge => 'プリセット';
1554
1555 @override
1556 String get no_personas_found => 'ペルソナが見つかりません';
1557
1558 @override
1559 String get no_personas_desc => '最初のペルソナを作成して、AIの動作をカスタマイズしましょう。';
1560
1561 @override
1562 String get edit_persona => 'ペルソナを編集';
1563
1564 @override
1565 String get create_persona => 'ペルソナを作成';
1566
1567 @override
1568 String get create_persona_button => '作成';
1569
1570 @override
1571 String get emoji_label => '絵文字';
1572
1573 @override
1574 String get name_label => '名前';
1575
1576 @override
1577 String get my_persona_hint => 'マイペルソナ';
1578
1579 @override
1580 String get category_label => 'カテゴリ';
1581
1582 @override
1583 String get description_optional => '説明(オプション)';
1584
1585 @override
1586 String get description_hint => 'このペルソナの役割について...';
1587
1588 @override
1589 String get system_prompt => 'システムプロンプト';
1590
1591 @override
1592 String character_count_max(int currentLen) {
1593 return '$currentLen/4000';
1594 }
1595
1596 @override
1597 String get no_prompt_placeholder => 'プロンプトがまだありません...';
1598
1599 @override
1600 String get prompt_hint => 'あなたは親切なアシスタントです...';
1601
1602 @override
1603 String get prompt_required => 'システムプロンプトは必須です';
1604
1605 @override
1606 String get prompt_max_chars => '最大4000文字';
1607
1608 @override
1609 String get advanced_settings => '詳細設定';
1610
1611 @override
1612 String get temperature_label => '温度(0.0-2.0)';
1613
1614 @override
1615 String get top_p_label => 'Top P(0.0-1.0)';
1616
1617 @override
1618 String get temp_hint => '0.7';
1619
1620 @override
1621 String get top_p_hint => '0.9';
1622
1623 @override
1624 String get range_0_2 => '0.0-2.0';
1625
1626 @override
1627 String get range_0_1 => '0.0-1.0';
1628
1629 @override
1630 String get persona_updated => 'ペルソナを更新しました';
1631
1632 @override
1633 String get persona_created => 'ペルソナを作成しました';
1634
1635 @override
1636 String get tts_models_title => '音声合成モデル';
1637
1638 @override
1639 String get always_available => 'いつでも利用可能';
1640
1641 @override
1642 String get tts_system_desc =>
1643 'デバイスの内蔵音声合成エンジンを使用します。\nダウンロードは不要です。音声の選択はデバイスのシステム設定を使用します。';
1644
1645 @override
1646 String get downloading_status => 'ダウンロード中...';
1647
1648 @override
1649 String tts_kitten_desc(String size) {
1650 return '8つの表現力豊かな音声を備えた超高速ニューラル音声合成。\nダウンロードサイズ: $size。';
1651 }
1652
1653 @override
1654 String tts_piper_desc(String size) {
1655 return '2つの表現力豊かな音声を備えた高速オフラインPiper音声。\n音声ごとに $size のダウンロードが必要です。';
1656 }
1657
1658 @override
1659 String engine_spec(String sizeMb, String ramMb, int voiceCount) {
1660 return '$sizeMb MB · $ramMb MB RAM · $voiceCount 音声';
1661 }
1662
1663 @override
1664 String get on_device_models_title => 'ローカルモデル';
1665
1666 @override
1667 String get settings_huggingface_token => 'Hugging Faceトークン(任意)';
1668
1669 @override
1670 String get settings_huggingface_token_desc =>
1671 '制限付きモデル(例: Gemma)でのみ必要です。トークンは huggingface.co/settings/tokens で取得できます。';
1672
1673 @override
1674 String get settings_huggingface_token_set => 'トークンを保存しました';
1675
1676 @override
1677 String get settings_huggingface_token_cleared => 'トークンを消去しました';
1678
1679 @override
1680 String get model_requires_huggingface_token => 'Hugging Faceトークンが必要です';
1681
1682 @override
1683 String get model_missing_huggingface_token =>
1684 'このモデルはHugging Faceで制限されています。ダウンロードするには、設定 → 端末内推論 にトークンを追加してください。';
1685
1686 @override
1687 String get set_huggingface_token => 'トークンを設定';
1688
1689 @override
1690 String get clear_huggingface_token => 'クリア';
1691
1692 @override
1693 String get edit_huggingface_token_dialog_title => 'Hugging Faceアクセストークン';
1694
1695 @override
1696 String get huggingface_token_dialog_hint => 'hf_…';
1697
1698 @override
1699 String get server_type_ollama_desc => 'ローカルAIエンジン。APIキーは不要です。';
1700
1701 @override
1702 String get server_type_on_device_desc =>
1703 'スマートフォン上で動作します。一部のモデルにはHugging Faceトークンが必要です。';
1704
1705 @override
1706 String get server_type_lm_studio_desc => 'ローカルAPIサーバー。APIキーは不要です。';
1707
1708 @override
1709 String get available_models => '利用可能なモデル';
1710
1711 @override
1712 String get device_memory => 'デバイスのメモリ';
1713
1714 @override
1715 String get ram_usage => 'RAM使用量';
1716
1717 @override
1718 String get memory_healthy => '正常';
1719
1720 @override
1721 String get memory_critical => '致命的';
1722
1723 @override
1724 String get memory_low => '警告';
1725
1726 @override
1727 String ram_used(String percent) {
1728 return '$percent% 使用中';
1729 }
1730
1731 @override
1732 String get available_ram => '空き RAM';
1733
1734 @override
1735 String get total_capacity => '合計容量';
1736
1737 @override
1738 String get loaded_status => 'ロード済み';
1739
1740 @override
1741 String get inference_backend => '推論バックエンド';
1742
1743 @override
1744 String get backend_ios_notice => 'iOSではCPUバックエンドのみ利用可能です。';
1745
1746 @override
1747 String get backend_cpu_desc => 'すべてのデバイスで動作します。互換性が最も高いです。';
1748
1749 @override
1750 String get backend_gpu_desc => 'OpenCL アクセラレーション。サポートされているデバイスで高速に動作します。';
1751
1752 @override
1753 String get backend_npu_desc => 'ベンダー NPU (Qualcomm/MediaTek)。最も高速な推論。';
1754
1755 @override
1756 String get select_model_title => 'モデルを選択';
1757
1758 @override
1759 String get refresh_models => 'モデルを更新';
1760
1761 @override
1762 String get search_models_hint => 'モデルを検索...';
1763
1764 @override
1765 String get no_server_connected => 'サーバーが接続されていません';
1766
1767 @override
1768 String get add_server_first => '利用可能なモデルを表示するには、まずサーバーを追加してください。';
1769
1770 @override
1771 String get failed_load_models => 'モデルの読み込みに失敗しました';
1772
1773 @override
1774 String get no_models_available => '利用可能なモデルはありません';
1775
1776 @override
1777 String no_models_match(String searchQuery) {
1778 return '「$searchQuery」に一致するモデルはありません';
1779 }
1780
1781 @override
1782 String model_load_failed(String error) {
1783 return 'モデルの読み込みに失敗しました: $error';
1784 }
1785
1786 @override
1787 String model_unloaded_ollama(String name) {
1788 return 'キープアライブ時間を経過すると $name がアンロードされます';
1789 }
1790
1791 @override
1792 String model_unloaded_success(String name) {
1793 return '$name を正常にアンロードしました';
1794 }
1795
1796 @override
1797 String model_unload_failed(String error) {
1798 return 'モデルのアンロードに失敗しました: $error';
1799 }
1800
1801 @override
1802 String get unload_from_server => 'サーバーからアンロード';
1803
1804 @override
1805 String context_chip(String ctx) {
1806 return '$ctx コンテキスト';
1807 }
1808
1809 @override
1810 String get unload_all_models => 'すべてのモデルをアンロード';
1811
1812 @override
1813 String loaded_models_count(int count) {
1814 return '$count 個のモデルがロード済み';
1815 }
1816
1817 @override
1818 String get all_models_unloaded => 'すべてのモデルがアンロードされました';
1819
1820 @override
1821 String get branch_chat => 'チャットを分岐';
1822
1823 @override
1824 String get branch_chat_desc => 'このメッセージから新しいチャットを作成';
1825
1826 @override
1827 String get edit_assistant_message_desc => 'アシスタントメッセージの内容を編集';
1828
1829 @override
1830 String switch_to_model(String modelName, Object model) {
1831 return 'モデル $model に切り替え';
1832 }
1833
1834 @override
1835 String download_notification_title(String modelName) {
1836 return '$modelName をダウンロード中...';
1837 }
1838
1839 @override
1840 String get download_complete_notification => 'ダウンロード完了!';
1841
1842 @override
1843 String download_complete_body(String modelName) {
1844 return '$modelName のダウンロードが正常に完了しました。';
1845 }
1846
1847 @override
1848 String download_failed_notification(String error) {
1849 return 'ダウンロード失敗: $error';
1850 }
1851
1852 @override
1853 String download_failed_body(String modelName) {
1854 return '$modelName のダウンロードに失敗しました。';
1855 }
1856
1857 @override
1858 String get engine_name_system => 'システム音声合成';
1859
1860 @override
1861 String get engine_tagline_system => 'デバイス内蔵エンジン';
1862
1863 @override
1864 String get engine_name_kitten => 'Kitten TTS';
1865
1866 @override
1867 String get engine_tagline_kitten => '高速ニューラル音声合成';
1868
1869 @override
1870 String get engine_name_sherpa => 'Sherpa ONNX VITS';
1871
1872 @override
1873 String get engine_tagline_sherpa => 'オフライン Piper 音声';
1874
1875 @override
1876 String get voice_jasper => 'Jasper';
1877
1878 @override
1879 String get voice_bella => 'Bella';
1880
1881 @override
1882 String get voice_bruno => 'Bruno';
1883
1884 @override
1885 String get voice_luna => 'Luna';
1886
1887 @override
1888 String get voice_hugo => 'Hugo';
1889
1890 @override
1891 String get voice_rosie => 'Rosie';
1892
1893 @override
1894 String get voice_leo => 'Leo';
1895
1896 @override
1897 String get voice_kiki => 'Kiki';
1898
1899 @override
1900 String get voice_lessac => 'Lessac (米国)';
1901
1902 @override
1903 String get voice_ryan => 'Ryan (米国)';
1904
1905 @override
1906 String get model_qwen_3 => 'Qwen 3 0.6B';
1907
1908 @override
1909 String get model_qwen_3_desc => '最小の汎用チャットモデル。高速な応答と低メモリ使用が特徴です。';
1910
1911 @override
1912 String get model_license_apache => 'Apache-2.0';
1913
1914 @override
1915 String get model_qwen_25 => 'Qwen 2.5 1.5B Instruct';
1916
1917 @override
1918 String get model_qwen_25_desc => '品質とサイズのバランスが取れたモデル。一般的な会話に適しています。';
1919
1920 @override
1921 String get model_deepseek => 'DeepSeek R1 Distill Qwen 1.5B';
1922
1923 @override
1924 String get model_deepseek_desc => '推論・思考プロセス(CoT)モデル。論理的なタスクに最適です。';
1925
1926 @override
1927 String get model_license_mit => 'MIT';
1928
1929 @override
1930 String get model_gemma => 'Gemma 4 E2B Instruct';
1931
1932 @override
1933 String get model_gemma_desc => 'Googleのフラッグシップモデル。最高品質ですが、より多くのRAMが必要です。';
1934
1935 @override
1936 String export_header(String date) {
1937 return '*LocalMindからエクスポート — $date*';
1938 }
1939
1940 @override
1941 String get export_role_user => '## 👤 ユーザー';
1942
1943 @override
1944 String get export_role_assistant => '## 🤖 アシスタント';
1945
1946 @override
1947 String get export_role_system => '## ⚙️ システム';
1948
1949 @override
1950 String get export_role_tool => '## 🔧 ツール';
1951
1952 @override
1953 String get export_text_user => '[ユーザー]';
1954
1955 @override
1956 String get export_text_assistant => '[アシスタント]';
1957
1958 @override
1959 String get export_text_system => '[システム]';
1960
1961 @override
1962 String get export_text_tool => '[ツール]';
1963
1964 @override
1965 String get export_label_user => 'ユーザー';
1966
1967 @override
1968 String get export_label_assistant => 'アシスタント';
1969
1970 @override
1971 String get export_label_system => 'システム';
1972
1973 @override
1974 String get export_label_tool => 'ツール';
1975
1976 @override
1977 String get select_model_hint => 'モデルを選択してチャットを開始';
1978
1979 @override
1980 String get test_notification_title => 'テスト通知';
1981
1982 @override
1983 String get test_notification_body => 'これはモデルのダウンロード進捗用のテスト通知です。';
1984
1985 @override
1986 String get tts_supports_background => 'ネイティブオーディオとしてバックグラウンド再生をサポート';
1987
1988 @override
1989 String get tts_other_services_background_note =>
1990 '注意: 他のTTSサービスはネイティブオーディオとしてバックグラウンド再生をサポートしています。';
1991
1992 @override
1993 String get gguf_imported_models_title => 'Imported GGUF models';
1994
1995 @override
1996 String get gguf_imported_models_empty_subtitle =>
1997 'Import a GGUF from your device or add one from Hugging Face. Imported models run locally with llama.cpp.';
1998
1999 @override
2000 String get gguf_imported_models_ready =>
2001 'imported models ready for local inference.';
2002
2003 @override
2004 String get gguf_curated_models_subtitle =>
2005 'Curated on-device models you can download and manage inside LocalMind.';
2006
2007 @override
2008 String get gguf_only_supported =>
2009 'Only GGUF models are supported for this import.';
2010
2011 @override
2012 String get gguf_imported_from_local_file => 'imported from local file.';
2013
2014 @override
2015 String get gguf_import_failed => 'Failed to import GGUF model';
2016
2017 @override
2018 String get gguf_imported_from_huggingface => 'imported from Hugging Face.';
2019
2020 @override
2021 String get gguf_import_canceled => 'GGUF import canceled.';
2022
2023 @override
2024 String get gguf_enter_huggingface_url => 'Enter a Hugging Face GGUF URL.';
2025
2026 @override
2027 String get gguf_only_official_huggingface_urls =>
2028 'Only official Hugging Face GGUF URLs are supported.';
2029
2030 @override
2031 String get gguf_use_https_url =>
2032 'Use an HTTPS Hugging Face URL for GGUF import.';
2033
2034 @override
2035 String get gguf_url_must_point_to_file =>
2036 'The Hugging Face URL must point directly to a .gguf file.';
2037
2038 @override
2039 String get gguf_unable_to_detect_file_name =>
2040 'Unable to determine the GGUF file name.';
2041
2042 @override
2043 String get gguf_download_empty =>
2044 'The downloaded GGUF file was empty or missing.';
2045
2046 @override
2047 String get gguf_selected_file_missing =>
2048 'Selected model file does not exist.';
2049
2050 @override
2051 String get gguf_import_action => 'Import GGUF';
2052
2053 @override
2054 String get gguf_overview_title => 'Bring your own GGUF models';
2055
2056 @override
2057 String get gguf_overview_subtitle =>
2058 'Import a .gguf from local storage or download one straight from Hugging Face. Imported models stay on this device and load with llama.cpp.';
2059
2060 @override
2061 String get gguf_imported_count_label => 'imported';
2062
2063 @override
2064 String get gguf_local_files_label => 'local files';
2065
2066 @override
2067 String get gguf_huggingface_label => 'Hugging Face';
2068
2069 @override
2070 String get gguf_import_local_title => 'Import local GGUF';
2071
2072 @override
2073 String get gguf_import_local_subtitle => 'Copy a .gguf file from this device';
2074
2075 @override
2076 String get gguf_import_huggingface_title => 'Import from Hugging Face';
2077
2078 @override
2079 String get gguf_import_huggingface_subtitle =>
2080 'Paste a GGUF URL or repo path';
2081
2082 @override
2083 String get gguf_no_imported_title => 'No imported GGUF models yet';
2084
2085 @override
2086 String get gguf_no_imported_subtitle =>
2087 'You can bring your own GGUF file from device storage or paste a Hugging Face URL or repo path that points to a .gguf file.';
2088
2089 @override
2090 String get gguf_import_huggingface_dialog_title =>
2091 'Import GGUF from Hugging Face';
2092
2093 @override
2094 String get gguf_import_huggingface_dialog_subtitle =>
2095 'Paste a direct GGUF URL or a Hugging Face repo path like `owner/repo/blob/main/model.gguf`. Blob links are converted automatically.';
2096
2097 @override
2098 String get gguf_url_or_repo_path => 'GGUF URL or repo path';
2099
2100 @override
2101 String get paste => 'Paste';
2102
2103 @override
2104 String get gguf_browse => 'Browse GGUFs';
2105
2106 @override
2107 String get gguf_huggingface_token_ready => 'Hugging Face token ready';
2108
2109 @override
2110 String get gguf_huggingface_token_optional =>
2111 'Token optional but recommended';
2112
2113 @override
2114 String get gguf_huggingface_token_ready_desc =>
2115 'Your saved token will be used automatically for gated or private repositories.';
2116
2117 @override
2118 String get gguf_huggingface_token_optional_desc =>
2119 'Requires a Hugging Face token. Add one in Settings if this GGUF is gated or private.';
2120
2121 @override
2122 String get gguf_downloading => 'Downloading GGUF';
2123
2124 @override
2125 String get gguf_preparing => 'Preparing';
2126
2127 @override
2128 String get gguf_preparing_download => 'Preparing download...';
2129
2130 @override
2131 String get gguf_cancel_import => 'Cancel import';
2132
2133 @override
2134 String get clipboard_empty => 'Clipboard is empty.';
2135
2136 @override
2137 String get could_not_open_huggingface => 'Could not open Hugging Face.';
2138
2139 @override
2140 String get gguf_paste_url_error =>
2141 'Paste a Hugging Face GGUF URL or repo path.';
2142
2143 @override
2144 String get gguf_blob_link => 'Blob link';
2145
2146 @override
2147 String get gguf_repository_label => 'Repository';
2148
2149 @override
2150 String get gguf_detected_path_label => 'Detected path';
2151
2152 @override
2153 String get gguf_imported_section_label => 'Imported GGUF';
2154
2155 @override
2156 String get gguf_already_available => 'Already available on this device';
2157
2158 @override
2159 String get gguf_curated_models_short => 'Curated on-device models';
2160
2161 @override
2162 String get gguf_vision_projector => 'Vision Projector';
2163
2164 @override
2165 String get gguf_attach_projector => 'Attach Vision Projector';
2166
2167 @override
2168 String get gguf_change_projector => 'Change Vision Projector';
2169
2170 @override
2171 String get gguf_remove_projector => 'Remove Projector';
2172
2173 @override
2174 String get gguf_projector_attached =>
2175 'Vision projector attached successfully';
2176
2177 @override
2178 String get gguf_projector_removed => 'Vision projector removed';
2179
2180 @override
2181 String gguf_projector_auto_detected(String name) {
2182 return 'Auto-detected and linked vision projector: $name';
2183 }
2184
2185 @override
2186 String get gguf_is_projector_file =>
2187 'The selected file is a vision projector (mmproj), not a standalone model.';
2188
2189 @override
2190 String get gguf_projector_url_label =>
2191 'Vision Projector URL (optional mmproj)';
2192
2193 @override
2194 String get gguf_projector_url_hint =>
2195 'https://huggingface.co/.../mmproj-...gguf';
2196
2197 @override
2198 String get gguf_vision_not_supported_error =>
2199 'The active model does not support image attachments. Please attach a vision projector (mmproj) or select a vision-supported model.';
2200
2201 @override
2202 String get execute_tool_title => 'Execute Tool';
2203
2204 @override
2205 String get execute_tool_request_desc =>
2206 'The model is requesting to execute the following tool:';
2207
2208 @override
2209 String get reject => 'Reject';
2210
2211 @override
2212 String get approve => 'Approve';
2213
2214 @override
2215 String get server_type_help =>
2216 'Pick the provider before filling connection details.';
2217
2218 @override
2219 String get server_identity_title => 'Identity';
2220
2221 @override
2222 String get server_identity_desc =>
2223 'Name this server and choose how it appears in the list.';
2224
2225 @override
2226 String get server_connection_title => 'Connection';
2227
2228 @override
2229 String get server_connection_desc =>
2230 'Use the address and port exposed by your server.';
2231
2232 @override
2233 String get server_authentication_title => 'Authentication';
2234
2235 @override
2236 String get server_authentication_required_desc =>
2237 'OpenRouter requires an API key before testing.';
2238
2239 @override
2240 String get server_authentication_required_desc_requesty =>
2241 'Requesty requires an API key before testing.';
2242
2243 @override
2244 String get server_authentication_optional_desc =>
2245 'Leave the API key empty if this server does not require one.';
2246
2247 @override
2248 String get mcp_tools_title => 'MCP Tools';
2249
2250 @override
2251 String get available_tools => 'Available tools';
2252
2253 @override
2254 String get unable_load_tools => 'Unable to load tools';
2255
2256 @override
2257 String get no_tools_registered => 'No tools registered';
2258
2259 @override
2260 String get no_tools_registered_desc =>
2261 'Enable the example MCP server or add MCP integrations from chat settings.';
2262
2263 @override
2264 String get example_mcp_server_title => 'Example MCP server';
2265
2266 @override
2267 String get example_mcp_server_desc =>
2268 'Registers example.echo and example.word_count through the same MCP tool provider used by external servers.';
2269
2270 @override
2271 String get disable_example_server => 'Disable example server';
2272
2273 @override
2274 String get enable_example_server => 'Enable example server';
2275
2276 @override
2277 String get built_in_label => 'Built-in';
2278
2279 @override
2280 String get highlights_label => 'Highlights';
2281
2282 @override
2283 String get built_with_label => 'Built with';
2284
2285 @override
2286 String get local_label => 'Local';
2287
2288 @override
2289 String get gguf_format_label => 'GGUF';
2290
2291 @override
2292 String get tool_status_requested => 'Requested';
2293
2294 @override
2295 String get tool_status_approved => 'Approved';
2296
2297 @override
2298 String get tool_status_rejected => 'Rejected';
2299
2300 @override
2301 String get tool_status_running => 'Running';
2302
2303 @override
2304 String get tool_status_done => 'Done';
2305
2306 @override
2307 String get tool_status_failed => 'Failed';
2308
2309 @override
2310 String get model_favorite_toggle => 'お気に入りの切り替え';
2311
2312 @override
2313 String get model_set_default => 'デフォルトモデルに設定';
2314
2315 @override
2316 String get model_clear_default => 'デフォルトモデルから解除';
2317
2318 @override
2319 String get model_default_badge => 'デフォルト';
2320
2321 @override
2322 String get model_note_label => 'メモ';
2323
2324 @override
2325 String get model_note_hint => 'このモデル用の非公開メモを追加...';
2326
2327 @override
2328 String get unload_models_before_load => 'ロード前にモデルをアンロード';
2329
2330 @override
2331 String get temp_chat_keyboard_incognito => '一時的なチャットでのシークレットキーボード';
2332
2333 @override
2334 String get temp_chat_keyboard_incognito_desc =>
2335 '一時的なチャットの実行中、システムキーボードに入力履歴を保存しないよう要求します';
2336
2337 @override
2338 String get resume_last_chat => '前回のチャットを再開';
2339
2340 @override
2341 String get resume_last_chat_desc => '起動時に自動的に前回の有効な会話を開く';
2342
2343 @override
2344 String get export_all_data => 'すべてのデータをエクスポート';
2345
2346 @override
2347 String get import_all_data => 'すべてのデータをインポート';
2348
2349 @override
2350 String get export_data_success => 'データのエクスポートに成功しました';
2351
2352 @override
2353 String get import_data_success => 'データのインポートに成功しました';
2354
2355 @override
2356 String import_data_failed(String error) {
2357 return 'データのインポートに失敗しました';
2358 }
2359
2360 @override
2361 String get import_data_confirm =>
2362 'これにより、現在のすべてのデータがインポートされたデータに置き換わります。続行しますか?';
2363
2364 @override
2365 String get import_settings_confirm =>
2366 'これにより、現在の設定がインポートされた設定に置き換わります。続行しますか?';
2367
2368 @override
2369 String get export_conversations => '会話をエクスポート';
2370
2371 @override
2372 String get import_conversations => '会話をインポート';
2373
2374 @override
2375 String get export_personas => 'ペルソナをエクスポート';
2376
2377 @override
2378 String get import_personas => 'ペルソナをインポート';
2379
2380 @override
2381 String get export_settings => '設定をエクスポート';
2382
2383 @override
2384 String get import_settings => '設定をインポート';
2385
2386 @override
2387 String get export_all_zip => 'すべてエクスポート (ZIP)';
2388
2389 @override
2390 String get import_all_zip => 'すべてインポート (ZIP)';
2391
2392 @override
2393 String get duplicate_chat => 'チャットを複製';
2394
2395 @override
2396 String get duplicate_chat_success => 'チャットの複製に成功しました';
2397
2398 @override
2399 String get move_to_folder => 'フォルダーに移動';
2400
2401 @override
2402 String get remove_from_folder => 'フォルダーから削除';
2403
2404 @override
2405 String get create_folder => 'フォルダーを作成';
2406
2407 @override
2408 String get new_folder => '新規フォルダー';
2409
2410 @override
2411 String get folder_name_hint => 'フォルダー名を入力...';
2412
2413 @override
2414 String get all_chats => 'すべてのチャット';
2415
2416 @override
2417 String get unfiled_chats => '未分類のチャット';
2418
2419 @override
2420 String get create => '作成';
2421
2422 @override
2423 String get server_path_prefix_label => 'サーバーパス接頭辞';
2424
2425 @override
2426 String get server_path_prefix_hint => 'サーバーAPIパスのオプション接頭辞 (例: /v1)';
2427
2428 @override
2429 String get search_message_contents => 'メッセージ内容を検索...';
2430
2431 @override
2432 String get message_search_results => 'メッセージ検索結果';
2433
2434 @override
2435 String get saved_messages_title => '保存されたメッセージ';
2436
2437 @override
2438 String get nav_saved_messages => '保存メッセージ';
2439
2440 @override
2441 String get saved_messages_empty => '保存されたメッセージはまだありません';
2442
2443 @override
2444 String get save_message => 'メッセージを保存';
2445
2446 @override
2447 String get message_saved => 'メッセージが保存されました';
2448
2449 @override
2450 String token_count(int count) {
2451 return 'トークン: $count';
2452 }
2453
2454 @override
2455 String estimated_token_count(int count) {
2456 return '推定トークン: $count';
2457 }
2458
2459 @override
2460 String get test_tts_section_title => '音声合成テスト';
2461
2462 @override
2463 String get test_tts_hint => '音声をテストするには何か入力してください...';
2464
2465 @override
2466 String get test_speak_button => '発話';
2467
2468 @override
2469 String get scroll_to_bottom => '一番下までスクロール';
2470
2471 @override
2472 String get generate_ai_response => 'AIの回答を生成';
2473
2474 @override
2475 String get no_response => '回答なし';
2476
2477 @override
2478 String get export => 'エクスポート';
2479
2480 @override
2481 String get import => 'インポート';
2482
2483 @override
2484 String get conversations_label => '会話';
2485
2486 @override
2487 String get personas_label => 'ペルソナ';
2488
2489 @override
2490 String get settings_label => '設定';
2491
2492 @override
2493 String get export_conversation => '会話をエクスポート';
2494
2495 @override
2496 String get tts_process_markdown => 'Markdown処理';
2497
2498 @override
2499 String get tts_process_markdown_desc => '読み上げる前に**太字**などの装飾タグを取り除く';
2500
2501 @override
2502 String get tts_skip_seconds => 'スキップ秒数';
2503
2504 @override
2505 String get tts_skip_seconds_desc => '音声プレイヤーで前後にスキップする時間';
2506
2507 @override
2508 String tts_skip_seconds_value(int seconds) {
2509 return '$seconds秒';
2510 }
2511
2512 @override
2513 String get preview_system_prompts => 'システムプロンプトのプレビュー';
2514
2515 @override
2516 String get welcome_message_1 => 'こんにちは!私はローカルAIアシスタントです。';
2517
2518 @override
2519 String get welcome_message_2 => '何でも質問してください。準備はいつでもできています。';
2520
2521 @override
2522 String get welcome_message_3 => 'データはローカルで処理され、デバイスの外に出ることはありません。';
2523
2524 @override
2525 String get welcome_message_4 =>
2526 '開始するには、上部のバーからモデルを選択するか、モデル管理セクションで新しいモデルを追加してください。';
2527
2528 @override
2529 String get temporary_chat => '一時的なチャット';
2530
2531 @override
2532 String get temporary_chat_desc => 'このチャット内のメッセージは履歴に保存されません';
2533
2534 @override
2535 String get temporary_chat_banner => '一時的なチャットが有効 — 履歴には保存されません';
2536
2537 @override
2538 String get temporary_chat_save_warning_title => '一時的なチャットを保存しますか?';
2539
2540 @override
2541 String get temporary_chat_save_warning_body =>
2542 'このチャットは履歴に保存されていません。今すぐ保存しますか?';
2543
2544 @override
2545 String get save_to_history => '履歴に保存';
2546
2547 @override
2548 String get share_conversation => '会話を共有';
2549
2550 @override
2551 String get download_tts_audio => '音声をダウンロード';
2552
2553 @override
2554 String get tts_download_unavailable => '音声ダウンロードは利用できません';
2555
2556 @override
2557 String get tts_download_no_audio => 'ダウンロードする音声が生成されていません';
2558
2559 @override
2560 String get tts_download_success => '音声が保存されました';
2561
2562 @override
2563 String get return_to_chat => 'チャットに戻る';
2564
2565 @override
2566 String get return_to_temp_chat => '一時チャットに戻る';
2567
2568 @override
2569 String get insert_saved_message => '保存されたメッセージを挿入';
2570
2571 @override
2572 String get insert_saved_message_desc => '保存されたメッセージの断片をチャットに追加します';
2573
2574 @override
2575 String get model_info => 'モデル情報';
2576
2577 @override
2578 String get model_name => 'モデル名';
2579
2580 @override
2581 String get model_identifier => 'モデル識別子';
2582
2583 @override
2584 String get model_capabilities => '機能';
2585
2586 @override
2587 String get model_api_pricing => 'API 価格設定 (100万トークンあたり)';
2588
2589 @override
2590 String get not_available => '利用不可';
2591
2592 @override
2593 String get save_message_folders => 'フォルダーに保存';
2594
2595 @override
2596 String get remove_from_saved => '保存から削除';
2597
2598 @override
2599 String get message_already_saved => 'メッセージはすでに保存されています';
2600
2601 @override
2602 String get stream_ttft => '初回トークン生成時間';
2603
2604 @override
2605 String get stream_tokens_per_sec => 'トークン秒速';
2606
2607 @override
2608 String get stream_stop_reason => '終了理由';
2609
2610 @override
2611 String get stream_input_tokens => '入力トークン数';
2612
2613 @override
2614 String get stream_output_tokens => '出力トークン数';
2615
2616 @override
2617 String get stream_generation_time => '生成時間';
2618
2619 @override
2620 String get attach_image => '画像を添付';
2621
2622 @override
2623 String get attach_text_document => 'テキストファイルを添付';
2624
2625 @override
2626 String get attach_shortcut_images => '写真';
2627
2628 @override
2629 String get attach_shortcut_documents => 'ファイル';
2630
2631 @override
2632 String get attach_shortcut_saved => '保存済み';
2633
2634 @override
2635 String get add_attachment => '添付ファイルを追加';
2636
2637 @override
2638 String get add_to_chat => 'チャットに追加';
2639
2640 @override
2641 String get choose_what_to_attach => '何を追加しますか?';
2642
2643 @override
2644 String get choose_attachment_subtitle => 'メッセージに添付するソースを選択してください';
2645
2646 @override
2647 String get photo_permission_denied => '写真のアクセス許可が拒否されました';
2648
2649 @override
2650 String get select_model_prompt => 'モデルを選択';
2651
2652 @override
2653 String get characters_label => '文字数';
2654
2655 @override
2656 String get exit_temporary_chat_title => '一時チャットを終了しますか?';
2657
2658 @override
2659 String get exit_temporary_chat_body => 'これにより、現在の会話が完全に削除されます。続行しますか?';
2660
2661 @override
2662 String get saved_message_temp_snap_unavailable =>
2663 '一時チャットではメッセージのスナップショットは利用できません';
2664
2665 @override
2666 String get filter_title => 'チャットを絞り込み';
2667
2668 @override
2669 String get filter_pinned => 'ピン留め済み';
2670
2671 @override
2672 String get filter_archived => 'アーカイブ済み';
2673
2674 @override
2675 String get filter_temp_chats => '一時チャット';
2676
2677 @override
2678 String get filter_user_messages => 'ユーザーのメッセージ';
2679
2680 @override
2681 String get filter_assistant_messages => 'アシスタントのメッセージ';
2682
2683 @override
2684 String get archive_chat => 'チャットをアーカイブ';
2685
2686 @override
2687 String get unarchive_chat => 'アーカイブを解除';
2688
2689 @override
2690 String conversation_message_count(int count) {
2691 return '$count 件のメッセージ';
2692 }
2693
2694 @override
2695 String conversation_character_count(int count) {
2696 return '$count 文字';
2697 }
2698
2699 @override
2700 String get generate_title_with_ai => 'AIでタイトルを自動生成';
2701
2702 @override
2703 String get generating_title => 'タイトルを生成中...';
2704
2705 @override
2706 String get generate_title_failed => 'タイトルを生成できませんでした';
2707
2708 @override
2709 String get lm_studio_model_browser_title => 'モデルブラウザー';
2710
2711 @override
2712 String get lm_studio_model_search_hint => 'モデルを検索...';
2713
2714 @override
2715 String get lm_studio_staff_picks => 'スタッフのおすすめ';
2716
2717 @override
2718 String get lm_studio_community_models => 'コミュニティモデル';
2719
2720 @override
2721 String get lm_studio_no_models => 'モデルが見つかりませんでした';
2722
2723 @override
2724 String lm_studio_models_count(int count) {
2725 return '$count 個のモデル';
2726 }
2727
2728 @override
2729 String get lm_studio_browse_models => 'LM Studioでモデルを探す';
2730
2731 @override
2732 String get lm_studio_model_search => 'モデル検索';
2733
2734 @override
2735 String get lm_studio_downloads_title => 'ダウンロード';
2736
2737 @override
2738 String get lm_studio_choose_quant => '量子化を選択';
2739
2740 @override
2741 String get lm_studio_use_default_quant => 'デフォルトの量子化を使用';
2742
2743 @override
2744 String get lm_studio_recommended => '推奨';
2745
2746 @override
2747 String get lm_studio_clear_downloads => '完了したダウンロードをクリア';
2748
2749 @override
2750 String get lm_studio_no_downloads => 'アクティブなダウンロードはありません';
2751
2752 @override
2753 String get lm_studio_downloads_disclaimer =>
2754 'モデルのダウンロードはHugging Faceから直接行われます。';
2755
2756 @override
2757 String get lm_studio_staff_pick => '注目のモデル';
2758
2759 @override
2760 String get lm_studio_params => 'パラメータ';
2761
2762 @override
2763 String get lm_studio_arch => 'アーキテクチャ';
2764
2765 @override
2766 String get lm_studio_domain => 'ドメイン';
2767
2768 @override
2769 String get lm_studio_format => 'フォーマット';
2770
2771 @override
2772 String get lm_studio_vision => 'ビジョン';
2773
2774 @override
2775 String get lm_studio_tool_use => 'ツール利用';
2776
2777 @override
2778 String get lm_studio_reasoning => '推論';
2779
2780 @override
2781 String get openrouter_pricing_free => '無料';
2782
2783 @override
2784 String openrouter_pricing_tooltip(String input, String output) {
2785 return '入力 $input / 出力 $output (100万トークンあたり)';
2786 }
2787
2788 @override
2789 String get lm_studio_download_options => 'ダウンロードオプション';
2790
2791 @override
2792 String get lm_studio_download => 'ダウンロード';
2793
2794 @override
2795 String lm_studio_download_size(String size) {
2796 return 'ダウンロードサイズ';
2797 }
2798
2799 @override
2800 String lm_studio_downloading_percent(int percent) {
2801 return 'ダウンロード中: $percent%';
2802 }
2803
2804 @override
2805 String get lm_studio_readme_unavailable => 'このモデルのREADMEは利用できません。';
2806
2807 @override
2808 String get lm_studio_full_gpu_offload => 'フルGPUオフロード可能';
2809
2810 @override
2811 String get lm_studio_partial_gpu_offload => '部分GPUオフロード可能';
2812
2813 @override
2814 String get lm_studio_likely_too_large => 'サイズが大きすぎる可能性があります';
2815
2816 @override
2817 String get lm_studio_available_ram_gb => '空きRAM容量 (GB, 任意)';
2818
2819 @override
2820 String get lm_studio_available_vram_gb => '空きVRAM容量 (GB, 任意)';
2821
2822 @override
2823 String get lm_studio_memory_settings_title => '推奨用メモリ設定';
2824
2825 @override
2826 String get lm_studio_memory_settings_desc =>
2827 'モデルブラウザーでモデルがお使いのデバイスに収まるかどうかを判断するために使用されます。';
2828
2829 @override
2830 String get think_button_label => '思考';
2831
2832 @override
2833 String get thinking_mode_title => '思考モード';
2834
2835 @override
2836 String get reasoning_effort_low => '低';
2837
2838 @override
2839 String get reasoning_effort_medium => '中';
2840
2841 @override
2842 String get reasoning_effort_high => '高';
2843
2844 @override
2845 String get reasoning_effort_minimal => '最小';
2846
2847 @override
2848 String get reasoning_effort_xhigh => '極高';
2849
2850 @override
2851 String get reasoning_effort_max => '最大';
2852
2853 @override
2854 String get reasoning_effort_off => 'オフ';
2855
2856 @override
2857 String get could_not_read_file => 'ファイルを読み込めませんでした';
2858
2859 @override
2860 String get server_offline => 'サーバーがオフラインです';
2861
2862 @override
2863 String get could_not_establish_connection =>
2864 'サーバーへの接続を確立できませんでした。サーバーが稼働していること、およびホスト/ポートの設定が正しいことを確認してください。';
2865
2866 @override
2867 String get retry_connection => '接続を再試行';
2868
2869 @override
2870 String get tokens_label => 'トークン';
2871
2872 @override
2873 String get enter_context_length => 'コンテキスト長を入力...';
2874
2875 @override
2876 String get openrouter_disclosure =>
2877 'このプロバイダーに接続すると、チャットメッセージと入力がそのサーバーに送信されます。LocalMindはお客様の会話を追跡または保存することはありません。';
2878
2879 @override
2880 String get requesty_disclosure =>
2881 'このプロバイダーに接続すると、チャットメッセージと入力がそのサーバーに送信されます。LocalMindはお客様の会話を追跡または保存することはありません。';
2882
2883 @override
2884 String get welcome_message_cloud => 'メッセージは接続されたプロバイダーに送信されます。';
2885
2886 @override
2887 String get privacy_policy => 'プライバシーポリシー';
2888
2889 @override
2890 String get cloud_sync => 'S3クラウド同期';
2891
2892 @override
2893 String get cloud_sync_description => 'お使いのS3互換サーバーへのエンドツーエンド暗号化同期';
2894
2895 @override
2896 String get cloud_sync_endpoint => 'エンドポイントURL';
2897
2898 @override
2899 String get cloud_sync_bucket => 'バケット';
2900
2901 @override
2902 String get cloud_sync_region => 'リージョン';
2903
2904 @override
2905 String get cloud_sync_prefix => 'プレフィックス';
2906
2907 @override
2908 String get cloud_sync_access_key => 'アクセスキーID';
2909
2910 @override
2911 String get cloud_sync_secret_key => 'シークレットアクセスキー';
2912
2913 @override
2914 String get cloud_sync_session_token => 'セッショントークン(任意)';
2915
2916 @override
2917 String get cloud_sync_passphrase => '暗号化パスフレーズ';
2918
2919 @override
2920 String get cloud_sync_confirm_passphrase => 'パスフレーズを確認';
2921
2922 @override
2923 String get cloud_sync_path_style => 'パス形式のアドレス指定を使用';
2924
2925 @override
2926 String get cloud_sync_allow_http => '安全でないHTTPを許可';
2927
2928 @override
2929 String get cloud_sync_http_warning =>
2930 'HTTPではリクエスト情報と認証情報がネットワークに公開されます。信頼できるローカルS3サーバーでのみ使用してください。';
2931
2932 @override
2933 String get cloud_sync_test => '接続をテスト';
2934
2935 @override
2936 String get cloud_sync_enable => '暗号化同期を有効化';
2937
2938 @override
2939 String get cloud_sync_now => '今すぐ同期';
2940
2941 @override
2942 String get cloud_sync_disconnect => 'このデバイスを切断';
2943
2944 @override
2945 String get cloud_sync_last_synced => '最終同期';
2946
2947 @override
2948 String get cloud_sync_never => '未実行';
2949
2950 @override
2951 String get cloud_sync_conflicts => '保持された競合';
2952
2953 @override
2954 String get cloud_sync_passphrase_mismatch => 'パスフレーズが一致しません';
2955
2956 @override
2957 String get crash_report_title => '問題が発生しました';
2958
2959 @override
2960 String get crash_report_stack_trace => 'スタックトレース';
2961
2962 @override
2963 String get crash_report_tap_to_expand => 'タップして展開';
2964
2965 @override
2966 String get crash_report_button => 'このクラッシュを報告';
2967
2968 @override
2969 String get crash_try_again => '再試行';
2970
2971 @override
2972 String get crash_report_empty_stack => '<空>';
2973
2974 @override
2975 String get crash_report_disclaimer =>
2976 '報告すると、診断情報があらかじめ入力された状態で GitHub が開きます。自動送信はされません。送信前に機密性の高い内容を削除してください。';
2977
2978 @override
2979 String get crash_report_copied => 'クリップボードにコピーしました';
2980
2981 @override
2982 String get report_a_problem => '問題を報告';
2983
2984 @override
2985 String get rename_folder => 'フォルダ名を変更';
2986
2987 @override
2988 String get delete_folder => 'フォルダを削除';
2989
2990 @override
2991 String get delete_folder_title => 'フォルダを削除しますか?';
2992
2993 @override
2994 String delete_folder_body(String name) {
2995 return '「$name」を削除してもよろしいですか?フォルダ内の会話や保存済みメッセージは「未分類」に戻されます。この操作は元に戻せません。';
2996 }
2997
2998 @override
2999 String get folder_name_required => 'フォルダ名を入力してください';
3000
3001 @override
3002 String get model_required_toast => '最初にモデルを選択する必要があります';
3003
3004 @override
3005 String get settings_concise_voice_responses => '簡潔な音声モード応答';
3006
3007 @override
3008 String get settings_concise_voice_responses_desc =>
3009 '音声モードでのLLMの応答を短く(短い1段落)保ち、フォローアップの質問を行います。';
3010
3011 @override
3012 String get s3_connection_succeeded => 'S3 接続に成功しました。';
3013
3014 @override
3015 String failed_to_open_url(String error) {
3016 return 'URL を開くことができませんでした: $error';
3017 }
3018
3019 @override
3020 String failed_to_copy(String error) {
3021 return 'コピーに失敗しました: $error';
3022 }
3023
3024 @override
3025 String get file_explorer_not_found =>
3026 'No file explorer found. Please make sure a file manager app is installed and enabled on your device.';
3027
3028 @override
3029 String export_data_failed(String error) {
3030 return 'Failed to export backup: $error';
3031 }
3032
3033 @override
3034 String file_pick_failed(String error) {
3035 return 'Failed to select file: $error';
3036 }
3037
3038 @override
3039 String image_pick_failed(String error) {
3040 return 'Failed to select image: $error';
3041 }
3042
3043 @override
3044 String get calendar_access => 'Calendar Access';
3045
3046 @override
3047 String get calendar_access_desc =>
3048 'Allow AI to read and create calendar events';
3049
3050 @override
3051 String get calendar_permission_denied =>
3052 'Calendar permission denied. Please grant calendar access in your device settings.';
3053
3054 @override
3055 String get location_access => 'Location Access';
3056
3057 @override
3058 String get location_access_desc =>
3059 'Allow AI to get your current location with place name';
3060
3061 @override
3062 String get location_permission_denied =>
3063 'Location permission denied. Please grant location access in your device settings.';
3064
3065 @override
3066 String get builtin_ai_not_supported =>
3067 'Built-in AI is not supported on this device.';
3068
3069 @override
3070 String get builtin_ai_unsupported_desc =>
3071 'Your device hardware or OS does not support on-device system AI (e.g. Gemini Nano / Apple Intelligence). Please choose a downloadable model instead.';
3072
3073 @override
3074 String get builtin_ai_unsupported_chip => 'Not Supported';
3075
3076 @override
3077 String get builtin_ai_enable => 'Enable';
3078
3079 @override
3080 String get model_reasoning_default => 'モデルのデフォルト';
3081
3082 @override
3083 String get model_reasoning_on => 'オン';
3084
3085 @override
3086 String get model_reasoning_help =>
3087 '次の応答に適用されます。モデルのチャットテンプレートが対応している場合、オフにすると思考を無効にします。';
3088
3089 @override
3090 String get model_reasoning_save_error => '思考モードを保存できませんでした。もう一度お試しください。';
3091
3092 @override
3093 String get on_device_engine_failed_error =>
3094 'オンデバイスモデルが応答しなくなりました。通常、会話がコンテキストウィンドウを超えたことが原因です。モデルを再読み込みしています。もう一度試すか、新しいチャットを開始するか、設定でコンテキスト長を増やしてください。';
3095
3096 @override
3097 String get stt_error_no_match => '音声を認識できませんでした。タップしてもう一度お試しください。';
3098
3099 @override
3100 String get stt_error_speech_timeout => '音声が検出されませんでした。タップしてもう一度お試しください。';
3101
3102 @override
3103 String get stt_error_permission => 'マイクへのアクセスが拒否されました。';
3104
3105 @override
3106 String get stt_error_busy => '音声認識が使用中です。もう一度お試しください。';
3107
3108 @override
3109 String get stt_error_network => 'ネットワークエラーです。接続を確認してもう一度お試しください。';
3110
3111 @override
3112 String get stt_error_audio => '録音エラーです。マイクを確認してください。';
3113
3114 @override
3115 String get stt_error_client =>
3116 '音声認識サービスを開始できませんでした。音声入力アプリがインストールされ、既定の音声認識に設定されていることを確認して、もう一度お試しください。';
3117
3118 @override
3119 String get stt_error_language => 'このデバイスの音声認識はお使いの言語に対応していません。';
3120
3121 @override
3122 String get stt_error_unavailable =>
3123 'このデバイスに音声認識サービスが見つかりません。音声入力アプリ(例: FUTO Voice Input)をインストールし、既定の音声認識に設定してください。';
3124
3125 @override
3126 String stt_error_generic(String code) {
3127 return '音声認識エラー: $code';
3128 }
3129
3130 @override
3131 String get send_temperature_to_api => 'Temperature を送信';
3132
3133 @override
3134 String get send_top_p_to_api => 'Top P を送信';
3135
3136 @override
3137 String get send_sampling_params_desc =>
3138 'このパラメーターを受け付けないプロバイダーやモデル(一部の推論モデルなど)ではオフにしてください。リモートサーバーとのすべてのチャットに適用されます。';
3139
3140 @override
3141 String get default_system_prompt => 'デフォルトのシステムプロンプト';
3142
3143 @override
3144 String get default_system_prompt_desc =>
3145 'ペルソナもチャット固有のシステムプロンプトもないチャットで使用されます。';
3146
3147 @override
3148 String get default_system_prompt_hint => 'あなたは親切なアシスタントです…';
3149
3150 @override
3151 String background_generation_notice(String title) {
3152 return '「$title」でまだ返信を生成中です。完了するとここで送信できます。タップして開く。';
3153 }
3154
3155 @override
3156 String get background_generation_notice_untitled =>
3157 '別のチャットでまだ返信を生成中です。完了するとここで送信できます。タップして開く。';
3158
3159 @override
3160 String background_generation_notice_info(String title) {
3161 return 'バックグラウンドで「$title」に返信中です。タップして開く。';
3162 }
3163
3164 @override
3165 String get background_generation_notice_info_untitled =>
3166 'バックグラウンドで別のチャットが返信中です。タップして開く。';
3167
3168 @override
3169 String background_generation_notice_multiple(int count) {
3170 return '$count件のチャットがバックグラウンドで返信中です。';
3171 }
3172
3173 @override
3174 String get background_generation_chat_untitled => '無題のチャット';
3175 }