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);