diff --git a/public/howtouse.md b/public/howtouse.md index 3d3f515324..b955360cd6 100644 --- a/public/howtouse.md +++ b/public/howtouse.md @@ -61,6 +61,8 @@ 左にあるアイコンをクリックしてほかのキャラクターアイコンが表示されている様子。 +キャラクターの表示順序は「キャラクター並び替え」で変更できます。 + ## テキスト欄の並び替え テキスト欄周辺をドラッグすることで、テキスト欄の順番を並び替えられます。 @@ -201,11 +203,30 @@ ツールバーカスタマイズ画面。 -## デフォルトスタイル・試聴 +## キャラクターの並び替え・試聴 -「設定」の「デフォルトスタイル」で、キャラクターごとのデフォルトのスタイルを変更することができます。 +「設定」の「キャラクターの並び替え」で、キャラクターの表示順序を変更することができます。 また、キャラクターごとのサンプルボイスを試聴することもできます。 +## デフォルトスタイル + +「設定」の「デフォルトスタイル」で、キャラクターごとのデフォルトのスタイルを変更することができます。 + +## 読み方&アクセント辞書 + +難しい単語や新しい単語は正しい読みにならないことがありますが、辞書機能を使って読み方を登録しておくことができます。 +辞書機能は「設定」の「読み方&アクセント辞書」で利用できます。 + +読み方&アクセント辞書画面を開くと、左に登録した単語のリストが表示されます。 +「追加」ボタンで新規に単語を登録できます。 + +読み方&アクセント辞書の単語リスト画面。 + +「単語」に登録したいテキストを、「読み」にそのテキストの読み方をひらがなかカタカナで入力してください。 +「アクセント調整」で自然になるアクセントを登録できます。 + +単語と読みとアクセントの登録画面。 + ## オプション 「設定」の「オプション」でいろいろな設定を変更することができます。 diff --git a/public/res/dict01.png b/public/res/dict01.png new file mode 100644 index 0000000000..6c7b7dd182 Binary files /dev/null and b/public/res/dict01.png differ diff --git a/public/res/dict02.png b/public/res/dict02.png new file mode 100644 index 0000000000..c0dea82fb7 Binary files /dev/null and b/public/res/dict02.png differ diff --git a/public/updateInfos.json b/public/updateInfos.json index 7c0c5b7dd5..27aad54f4a 100644 --- a/public/updateInfos.json +++ b/public/updateInfos.json @@ -1,4 +1,31 @@ [ + { + "version": "0.11.0", + "descriptions": [ + "キャラクター「玄野武宏」「白上虎太郎」「青山龍星」「冥鳴ひまり」を追加", + "読み方&アクセント辞書機能の追加", + "キャラクター並び替え機能の追加", + "ヘルプからアップデートの有無を確認可能に", + "利用規約の同意を促すダイアログを追加", + "UXの向上", + "開発環境の向上", + "バグ修正" + ], + "contributors": [ + "aoirint", + "gobosan", + "Hiroshiba", + "HyodaKazuaki", + "Lapis256", + "Oyaki122", + "PickledChair", + "Segu-g", + "takana-v", + "xuzijian629", + "y-chan", + "Yosshi999" + ] + }, { "version": "0.10.4", "descriptions": ["途中に疑問形があるとおかしくなる問題を修正"], diff --git a/src/components/AudioDetail.vue b/src/components/AudioDetail.vue index 68500f715e..ab798193a6 100644 --- a/src/components/AudioDetail.vue +++ b/src/components/AudioDetail.vue @@ -786,10 +786,10 @@ $pitch-label-height: 24px; .accent-phrase-table { flex-grow: 1; align-self: stretch; - margin-left: 5px; - margin-right: 5px; - margin-bottom: 5px; - padding-left: 5px; + margin-left: 4px; + margin-right: 4px; + margin-bottom: 4px; + padding-left: 4px; display: flex; overflow-x: scroll; diff --git a/src/components/DictionaryManageDialog.vue b/src/components/DictionaryManageDialog.vue index b3a1f09590..0261c0ecb9 100644 --- a/src/components/DictionaryManageDialog.vue +++ b/src/components/DictionaryManageDialog.vue @@ -354,6 +354,12 @@ export default defineComponent({ resetSelect(); }; + const styleId = computed(() => { + if (!store.getters.USER_ORDERED_CHARACTER_INFOS) return 0; + return store.getters.USER_ORDERED_CHARACTER_INFOS[0].metas.styles[0] + .styleId; + }); + const kanaRegex = createKanaRegex(); const isOnlyHiraOrKana = ref(true); const accentPhrase = ref(); @@ -402,7 +408,7 @@ export default defineComponent({ accentPhrase.value = ( await store.dispatch("FETCH_ACCENT_PHRASES", { text: text + "ガ'", - styleId: 0, + styleId: styleId.value, isKana: true, }) )[0]; @@ -427,7 +433,7 @@ export default defineComponent({ accentPhrase.value = ( await store.dispatch("FETCH_MORA_DATA", { accentPhrases: [accentPhrase.value], - styleId: 0, + styleId: styleId.value, }) )[0]; } @@ -453,7 +459,7 @@ export default defineComponent({ const audioItem: AudioItem = { text: yomi.value, - styleId: 0, + styleId: styleId.value, query, }; diff --git a/src/components/HowToUse.vue b/src/components/HowToUse.vue index 33930f83f5..4effdb2397 100644 --- a/src/components/HowToUse.vue +++ b/src/components/HowToUse.vue @@ -34,5 +34,6 @@ export default defineComponent({ .markdown :deep(img) { border: 1px solid #333; vertical-align: middle; + margin-bottom: 1rem; } diff --git a/src/components/UpdateInfo.vue b/src/components/UpdateInfo.vue index ee63fd2971..a682392328 100644 --- a/src/components/UpdateInfo.vue +++ b/src/components/UpdateInfo.vue @@ -23,13 +23,12 @@ export default defineComponent({ setup() { const store = useStore(); - const infos = ref(); - store.dispatch("GET_UPDATE_INFOS").then((obj) => (infos.value = obj)); - - let isCheckingFailed = ref(false); + const updateInfos = ref(); + store.dispatch("GET_UPDATE_INFOS").then((obj) => (updateInfos.value = obj)); let isCheckingFinished = ref(false); + // 最新版があるか調べる const currentVersion = ref(""); const latestVersion = ref(""); window.electron @@ -46,11 +45,8 @@ export default defineComponent({ }, }) .then((response) => { - if (!response.ok) { - isCheckingFailed.value = true; - } else { - return response.json(); - } + if (!response.ok) throw new Error("Network response was not ok."); + return response.json(); }) .then((json) => { const obj = json.find( @@ -70,47 +66,26 @@ export default defineComponent({ .catch((err) => { throw new Error(err); }); - }) - .catch(() => { - isCheckingFailed.value = true; }); - const isCheckingFailedComputed = computed(() => { - return isCheckingFailed.value; - }); - - const isCheckingFinishedComputed = computed(() => { - return isCheckingFinished.value; - }); - const isUpdateAvailable = computed(() => { return isCheckingFinished.value && latestVersion.value !== ""; }); const html = computed(() => { - if (!infos.value) return ""; + if (!updateInfos.value) return ""; let html = ""; if (isUpdateAvailable.value) { - html += `

アップデートがあります!

`; - html += `

最新版のダウンロードページ

`; - html += `https://voicevox.hiroshiba.jp/`; - } else if (isCheckingFinishedComputed.value && !isUpdateAvailable.value) { - html += `

お使いの VOICEBOX は最新です!

`; - } else if ( - !isCheckingFinishedComputed.value && - !isCheckingFailedComputed.value - ) { - html += `

アップデートを確認中です…

`; - } else { - html += `

アップデートの確認に失敗しました…

`; + html += `

最新バージョン ${latestVersion.value} が見つかりました

`; + html += `ダウンロードページ`; } html += `
`; html += `

アップデート履歴

`; - for (const info of infos.value) { + for (const info of updateInfos.value) { const version: string = info.version; const descriptions: string[] = info.descriptions; const contributors: string[] = info.contributors; diff --git a/src/styles/_index.scss b/src/styles/_index.scss index 36a40c7497..415fc9df1a 100644 --- a/src/styles/_index.scss +++ b/src/styles/_index.scss @@ -16,16 +16,16 @@ img { // スクロールバーのデザイン ::-webkit-scrollbar { - width: 15px; - height: 15px; + width: 12px; + height: 12px; background-color: rgba(colors.$primary-light-rgb, 0.2); border-radius: 5px; } ::-webkit-scrollbar-thumb { - background-color: rgba(colors.$primary-light-rgb, 0.5); + background-color: rgba(colors.$primary-light-rgb, 0.6); border-radius: 5px; &:hover { - background-color: rgba(colors.$primary-light-rgb, 0.6); + background-color: rgba(colors.$primary-light-rgb, 0.7); } &:active { background-color: rgba(colors.$primary-light-rgb, 0.8);