Skip to content

Commit d81cfe4

Browse files
committed
v5.65.4 日本語ローカライズ版
・差分がおおきすぎたので、本家ソースを新たに翻訳しなおしました。 ・移植ベースではありますが、フィルタ条件など一部挙動が異なるケースはあるかもしれません
1 parent b646e4d commit d81cfe4

524 files changed

Lines changed: 8457 additions & 4056 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

eslint.config.mjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,7 @@ export default defineConfig([{
194194
ignores: [
195195
".git/",
196196
"node_modules/",
197+
"old_jp_source/",
197198
"src/gui/js/",
198199
"src/gui/fonts/",
199200
"src/resources/",

src/backend/app-management/electron/events/when-ready.ts

Lines changed: 46 additions & 46 deletions
Large diffs are not rendered by default.

src/backend/app-management/electron/window-management.js

Lines changed: 68 additions & 57 deletions
Large diffs are not rendered by default.

src/backend/common/profile-manager.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ class ProfileManager {
111111
} catch (error) {
112112
const errorMessage = (error as Error).name === "DatabaseError" ? error?.inner?.message ?? error.stack : error;
113113
logger.error(`Error saving ${profileId} profile to global settings. Is the file locked or corrupted?`, errorMessage);
114-
dialog.showErrorBox("Error Loading Profile", `An error occurred while trying to load your ${profileId} profile. Please try starting Firebot again. If this issue continues, please reach out on our Discord for support.`);
114+
dialog.showErrorBox("プロフィールの読み込みエラー", `${profileId} プロフィールの読み込み中にエラーが発生しました。Firebot を再起動してもう一度お試しください。問題が続く場合は、Discord でサポートにお問い合わせください。`);
115115
app.quit();
116116
return;
117117
}

src/backend/crowbar-relay/crowbar-relay-websocket.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class CrowbarRelayWebSocket extends TypedEmitter<{
6565
const unauthorized = closedEvent.target?._ws?._req?.res?.statusCode === 401;
6666
if (unauthorized) {
6767
logger.error("Crowbar Relay WebSocket unauthorized!");
68+
AccountAccess.setAccountTokenIssue("streamer");
6869
this.ws.close();
6970
} else {
7071
logger.info("Crowbar Relay WebSocket disconnected!");

src/backend/effects/builtin-effect-loader.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ exports.loadEffects = () => {
88
'activity-feed-alert',
99
'add-quote',
1010
'api',
11+
'call-layna',
1112
'celebration',
1213
'chat-feed-alert',
1314
'chat-feed-custom-highlight',
@@ -41,9 +42,23 @@ exports.loadEffects = () => {
4142
'moderator-purge',
4243
'moderator-timeout',
4344
'pause-resume-effect-queue',
45+
'onecomme-transfer',
46+
'oneccome-wordparty',
47+
'gpt-yncneo',
48+
'play-coeiroink-v1',
49+
'play-coeiroink-v2',
50+
'play-itvoice',
51+
'play-lmroid',
4452
'play-sound',
4553
'play-video', // No migration needed.
4654
'overlay-alert',
55+
'play-bouyomichan',
56+
'play-sharevox',
57+
'play-voicevox',
58+
'play-voicevox-nemo',
59+
'play-yncneo',
60+
'translate-yncneo',
61+
'call-vtubestudio',
4762
'random-effect',
4863
'random-reddit-image',
4964
'remove-user-metadata',
@@ -52,6 +67,7 @@ exports.loadEffects = () => {
5267
'run-command',
5368
'run-program',
5469
'send-custom-websocket-event',
70+
'send-vrchat',
5571
'sequential-effect',
5672
'set-output',
5773
'set-user-metadata',

src/backend/effects/builtin/active-user-lists.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ const effect: EffectType<{
99
}> = {
1010
definition: {
1111
id: "firebot:activeUserLists",
12-
name: "Manage Active Chat Users",
13-
description: "Add or remove users from the active chat user lists.",
12+
name: "アクティブチャットユーザー管理",
13+
description: "アクティブチャットユーザーリストにユーザーを追加・削除します。",
1414
icon: "fad fa-users",
1515
categories: ["common", "moderation"],
1616
dependencies: []

src/backend/effects/builtin/activity-feed-alert.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,27 @@ const effect: EffectType<{
77
}> = {
88
definition: {
99
id: "firebot:activity-feed-alert",
10-
name: "Activity Feed Alert",
11-
description: "Display an alert in Firebot's Activity Feed",
10+
name: "アクティビティフィードにアラートを出す",
11+
description: "Firebotのアクティビティフィードにアラートを表示する",
1212
icon: "fad fa-comment-exclamation",
1313
categories: ["dashboard"],
1414
dependencies: []
1515
},
1616
optionsTemplate: `
1717
<eos-container>
18-
<p>Use this effect to send yourself alerts in Firebot's Activity Feed.</p>
18+
<p>Firebotのアクティビティフィードでアラートを送信します。</p>
1919
</eos-container>
2020
<eos-container header="Message" pad-top="true">
2121
<firebot-input
2222
model="effect.message"
23-
placeholder-text="Enter message"
23+
placeholder-text="メッセージ"
2424
use-text-area="true"
2525
rows="4"
2626
cols="40"
2727
menu-position="under"
2828
/>
2929
</eos-container>
30-
<eos-container header="Icon" pad-top="true">
30+
<eos-container header="アイコン" pad-top="true">
3131
<input
3232
maxlength="2"
3333
type="text"
@@ -41,7 +41,7 @@ const effect: EffectType<{
4141
optionsValidator: (effect) => {
4242
const errors: string[] = [];
4343
if (effect.message == null || effect.message === "") {
44-
errors.push("Alert message can't be blank.");
44+
errors.push("アラートメッセージを空白にすることはできません。");
4545
}
4646
return errors;
4747
},
@@ -53,7 +53,7 @@ const effect: EffectType<{
5353
},
5454
{
5555
id: "activity-feed-alert",
56-
name: "Activity Feed Alert",
56+
name: "アクティビティフィードへアラートを送る",
5757
activityFeed: {
5858
icon: effect.icon || "fad fa-comment-exclamation",
5959
getMessage: () => {

src/backend/effects/builtin/add-quote.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ const effect: EffectType<{
1010
}> = {
1111
definition: {
1212
id: "firebot:add-quote",
13-
name: "Add Quote",
14-
description: "Adds a quote to the quote database.",
13+
name: "引用文の追加",
14+
description: "引用文をデータベースに追加します",
1515
icon: "fad fa-quote-right",
1616
categories: ["fun", "firebot control"],
1717
dependencies: [],
@@ -24,34 +24,34 @@ const effect: EffectType<{
2424
]
2525
},
2626
optionsTemplate: `
27-
<eos-container header="Quote Creator">
28-
<p class="muted">This is the name of the person who is creating the quote entry.</p>
27+
<eos-container header="引用の作成">
28+
<p class="muted">引用エントリーを作成する人の名前です。</p>
2929
<input ng-model="effect.creator" type="text" class="form-control" id="chat-text-setting" placeholder="Enter quote creator" menu-position="under" replace-variables/>
3030
</eos-container>
3131
32-
<eos-container header="Quote Originator" pad-top="true">
33-
<p class="muted">This is the name of the person who actually said the quote.</p>
32+
<eos-container header="引用元" pad-top="true">
33+
<p class="muted">実際の引用元</p>
3434
<input ng-model="effect.originator" type="text" class="form-control" id="chat-text-setting" placeholder="Enter quote originator" replace-variables/>
3535
</eos-container>
3636
37-
<eos-container header="Quote Text" pad-top="true">
38-
<p class="muted">This is the actual quote text.</p>
37+
<eos-container header="引用文" pad-top="true">
38+
<p class="muted">実際の引用文</p>
3939
<input ng-model="effect.text" type="text" class="form-control" id="chat-text-setting" placeholder="Enter quote text" replace-variables/>
4040
</eos-container>
4141
`,
4242
optionsController: () => {},
4343
optionsValidator: (effect) => {
4444
const errors: string[] = [];
4545
if (effect.creator == null || effect.creator === "") {
46-
errors.push("Please provide a quote creator.");
46+
errors.push("引用の作成者を教えてください");
4747
}
4848

4949
if (effect.originator == null || effect.originator === "") {
50-
errors.push("Please provide a quote originator.");
50+
errors.push("引用元を教えてください");
5151
}
5252

5353
if (effect.text == null || effect.text === "") {
54-
errors.push("Please provide a value for quote text.");
54+
errors.push("引用文を教えてください");
5555
}
5656
return errors;
5757
},
@@ -60,7 +60,7 @@ const effect: EffectType<{
6060

6161
const channelData = await TwitchApi.channels.getChannelInformation();
6262

63-
const currentGameName = channelData && channelData.gameName ? channelData.gameName : "Unknown game";
63+
const currentGameName = channelData && channelData.gameName ? channelData.gameName : "不明なゲーム";
6464

6565
const newQuote = {
6666
text: effect.text,

src/backend/effects/builtin/api.js

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@ const api = {
1313
*/
1414
definition: {
1515
id: "firebot:api",
16-
name: "API Effect",
17-
description: "Pulls info from a pre-selected api.",
16+
name: "API 演出",
17+
description: "事前に選択したAPIから情報を引き出す",
1818
icon: "fad fa-chart-network",
1919
categories: [EffectCategory.FUN, EffectCategory.CHAT_BASED, EffectCategory.OVERLAY],
2020
dependencies: [EffectDependency.CHAT],
2121
outputs: [
2222
{
23-
label: "API Response",
24-
description: "The raw response from the API",
23+
label: "APIレスポンス",
24+
description: "APIからの生のレスポンス",
2525
defaultName: "apiResponse"
2626
}
2727
]
@@ -52,15 +52,15 @@ const api = {
5252
<div ng-if="effect.api != null && effect.api !== 'Pick one'">
5353
<eos-container header="Display Location" pad-top="true">
5454
<div class="controls-fb-inline" style="padding-bottom: 5px;">
55-
<label class="control-fb control--radio">Chat
55+
<label class="control-fb control--radio">チャット
5656
<input type="radio" ng-model="effect.show" value="chat"/>
5757
<div class="control__indicator"></div>
5858
</label>
59-
<label class="control-fb control--radio" ng-if="effect.imageAvailable">Overlay
59+
<label class="control-fb control--radio" ng-if="effect.imageAvailable">オーバーレイ
6060
<input type="radio" ng-model="effect.show" value="overlay"/>
6161
<div class="control__indicator"></div>
6262
</label>
63-
<label class="control-fb control--radio" ng-if="effect.imageAvailable">Both
63+
<label class="control-fb control--radio" ng-if="effect.imageAvailable">両方
6464
<input type="radio" ng-model="effect.show" value="both"/>
6565
<div class="control__indicator"></div>
6666
</label>
@@ -79,15 +79,15 @@ const api = {
7979
8080
<eos-container header="Dimensions" pad-top="true">
8181
<div class="input-group">
82-
<span class="input-group-addon">Width</span>
82+
<span class="input-group-addon"></span>
8383
<input
8484
type="number"
8585
class="form-control"
8686
aria-describeby="image-width-setting-type"
8787
type="number"
8888
ng-model="effect.width"
8989
placeholder="px">
90-
<span class="input-group-addon">Height</span>
90+
<span class="input-group-addon">高さ</span>
9191
<input
9292
type="number"
9393
class="form-control"
@@ -100,7 +100,7 @@ const api = {
100100
101101
<eos-container header="Duration" pad-top="true">
102102
<div class="input-group">
103-
<span class="input-group-addon">Seconds</span>
103+
<span class="input-group-addon"></span>
104104
<input
105105
type="text"
106106
class="form-control"
@@ -115,7 +115,7 @@ const api = {
115115
116116
<eos-container>
117117
<div class="effect-info alert alert-danger">
118-
Warning: These API's pull from a third party and we have no control over the quality or content.
118+
警告:これらのAPIは第三者から取得したものであり、その品質や内容については一切管理しておりません。
119119
</div>
120120
</eos-container>
121121
`,
@@ -145,11 +145,11 @@ const api = {
145145
optionsValidator: (effect) => {
146146
const errors = [];
147147
if (effect.api == null) {
148-
errors.push("Please select an API from the list.");
148+
errors.push("リストからAPIを選択してください。");
149149
}
150150

151151
if (effect.show == null) {
152-
errors.push("Please select a places to show the API results.");
152+
errors.push("APIの結果を表示する場所を選択してください。");
153153
}
154154
return errors;
155155
},

0 commit comments

Comments
 (0)