fix: properly use singular/plural in MkNoteDetailed tabs

This commit is contained in:
naskya 2023-10-16 17:04:51 +00:00 committed by Kainoa Kanter
parent 79a95d0d0f
commit e5911088cd
5 changed files with 52 additions and 14 deletions

View file

@ -58,6 +58,7 @@ sendMessage: "Send a message"
copyUsername: "Copy username" copyUsername: "Copy username"
searchUser: "Search for a user" searchUser: "Search for a user"
reply: "Reply" reply: "Reply"
replies: "Replies"
jumpToPrevious: "Jump to previous" jumpToPrevious: "Jump to previous"
loadMore: "Load more" loadMore: "Load more"
showMore: "Show more" showMore: "Show more"
@ -112,18 +113,21 @@ unfollow: "Unfollow"
followRequestPending: "Follow request pending" followRequestPending: "Follow request pending"
enterEmoji: "Enter an emoji" enterEmoji: "Enter an emoji"
renote: "Boost" renote: "Boost"
renotes: "Boosts"
unrenote: "Take back boost" unrenote: "Take back boost"
renoted: "Boosted." renoted: "Boosted."
cantRenote: "This post can't be boosted." cantRenote: "This post can't be boosted."
cantReRenote: "A boost can't be boosted." cantReRenote: "A boost can't be boosted."
quote: "Quote" quote: "Quote"
quotes: "Quotes"
pinnedNote: "Pinned post" pinnedNote: "Pinned post"
pinned: "Pin to profile" pinned: "Pin to profile"
you: "You" you: "You"
clickToShow: "Click to show" clickToShow: "Click to show"
sensitive: "NSFW" sensitive: "NSFW"
add: "Add" add: "Add"
reaction: "Reactions" reaction: "Reaction"
reactions: "Reactions"
removeReaction: "Remove your reaction" removeReaction: "Remove your reaction"
enableEmojiReactions: "Enable emoji reactions" enableEmojiReactions: "Enable emoji reactions"
showEmojisInReactionNotifications: "Show emojis in reaction notifications" showEmojisInReactionNotifications: "Show emojis in reaction notifications"
@ -739,6 +743,7 @@ system: "System"
switchUi: "Layout" switchUi: "Layout"
desktop: "Desktop" desktop: "Desktop"
clip: "Clip" clip: "Clip"
clips: "Clips"
createNew: "Create new" createNew: "Create new"
optional: "Optional" optional: "Optional"
createNewClip: "Create new clip" createNewClip: "Create new clip"
@ -781,7 +786,6 @@ pageLikesCount: "Number of liked Pages"
pageLikedCount: "Number of received Page likes" pageLikedCount: "Number of received Page likes"
contact: "Contact" contact: "Contact"
useSystemFont: "Use the system's default font" useSystemFont: "Use the system's default font"
clips: "Clips"
clipsDesc: "Clips are like share-able categorized bookmarks. You can create clips clipsDesc: "Clips are like share-able categorized bookmarks. You can create clips
from the menu of individual posts." from the menu of individual posts."
experimentalFeatures: "Experimental features" experimentalFeatures: "Experimental features"

View file

@ -52,6 +52,7 @@ sendMessage: "メッセージを送信"
copyUsername: "ユーザー名をコピー" copyUsername: "ユーザー名をコピー"
searchUser: "ユーザーを検索" searchUser: "ユーザーを検索"
reply: "返信" reply: "返信"
replies: "返信"
loadMore: "もっと読み込む" loadMore: "もっと読み込む"
showMore: "もっと見る" showMore: "もっと見る"
showLess: "閉じる" showLess: "閉じる"
@ -97,11 +98,13 @@ unfollow: "フォロー解除"
followRequestPending: "フォロー許可待ち" followRequestPending: "フォロー許可待ち"
enterEmoji: "絵文字を入力" enterEmoji: "絵文字を入力"
renote: "ブースト" renote: "ブースト"
renotes: "ブースト"
unrenote: "ブースト解除" unrenote: "ブースト解除"
renoted: "ブーストしました。" renoted: "ブーストしました。"
cantRenote: "この投稿はブーストできません。" cantRenote: "この投稿はブーストできません。"
cantReRenote: "ブーストをブーストすることはできません。" cantReRenote: "ブーストをブーストすることはできません。"
quote: "引用" quote: "引用"
quotes: "引用"
pinnedNote: "ピン留めされた投稿" pinnedNote: "ピン留めされた投稿"
pinned: "ピン留め" pinned: "ピン留め"
you: "あなた" you: "あなた"
@ -109,6 +112,7 @@ clickToShow: "クリックして表示"
sensitive: "閲覧注意" sensitive: "閲覧注意"
add: "追加" add: "追加"
reaction: "リアクション" reaction: "リアクション"
reactions: "リアクション"
enableEmojiReactions: "絵文字リアクションを有効にする" enableEmojiReactions: "絵文字リアクションを有効にする"
showEmojisInReactionNotifications: "自分の投稿に対するリアクションの通知で絵文字を表示する" showEmojisInReactionNotifications: "自分の投稿に対するリアクションの通知で絵文字を表示する"
reactionSetting: "ピッカーに表示するリアクション" reactionSetting: "ピッカーに表示するリアクション"

View file

@ -49,6 +49,7 @@ sendMessage: "发送"
copyUsername: "复制用户名" copyUsername: "复制用户名"
searchUser: "搜索用户" searchUser: "搜索用户"
reply: "回复" reply: "回复"
replies: "回复"
loadMore: "加载更多" loadMore: "加载更多"
showMore: "查看更多" showMore: "查看更多"
showLess: "关闭" showLess: "关闭"
@ -94,11 +95,13 @@ unfollow: "取消关注"
followRequestPending: "关注请求待批准" followRequestPending: "关注请求待批准"
enterEmoji: "输入表情符号" enterEmoji: "输入表情符号"
renote: "转发" renote: "转发"
renotes: "转发"
unrenote: "取消转发" unrenote: "取消转发"
renoted: "已转发。" renoted: "已转发。"
cantRenote: "此帖子无法被转发。" cantRenote: "此帖子无法被转发。"
cantReRenote: "转发无法被再次转发。" cantReRenote: "转发无法被再次转发。"
quote: "引用" quote: "引用"
quotes: "引用"
pinnedNote: "已置顶的帖子" pinnedNote: "已置顶的帖子"
pinned: "置顶" pinned: "置顶"
you: "您" you: "您"
@ -106,6 +109,7 @@ clickToShow: "点击以显示"
sensitive: "敏感内容" sensitive: "敏感内容"
add: "添加" add: "添加"
reaction: "回应" reaction: "回应"
reactions: "回应"
enableEmojiReaction: "启用表情符号回应" enableEmojiReaction: "启用表情符号回应"
showEmojisInReactionNotifications: "在回应通知中显示表情符号" showEmojisInReactionNotifications: "在回应通知中显示表情符号"
reactionSetting: "在回应选择器中显示的回应" reactionSetting: "在回应选择器中显示的回应"

View file

@ -49,6 +49,7 @@ sendMessage: "發送訊息"
copyUsername: "複製使用者名稱" copyUsername: "複製使用者名稱"
searchUser: "搜尋使用者" searchUser: "搜尋使用者"
reply: "回覆" reply: "回覆"
replies: "回覆"
loadMore: "載入更多" loadMore: "載入更多"
showMore: "載入更多" showMore: "載入更多"
showLess: "關閉" showLess: "關閉"
@ -94,11 +95,13 @@ unfollow: "取消追隨"
followRequestPending: "追隨許可批准中" followRequestPending: "追隨許可批准中"
enterEmoji: "輸入表情符號" enterEmoji: "輸入表情符號"
renote: "轉發" renote: "轉發"
renotes: "轉發"
unrenote: "取消轉發" unrenote: "取消轉發"
renoted: "已轉發。" renoted: "已轉發。"
cantRenote: "無法轉發此貼文。" cantRenote: "無法轉發此貼文。"
cantReRenote: "無法轉發之前已經轉發過的內容。" cantReRenote: "無法轉發之前已經轉發過的內容。"
quote: "引用" quote: "引用"
quotes: "引用"
pinnedNote: "已置頂的貼文" pinnedNote: "已置頂的貼文"
pinned: "置頂" pinned: "置頂"
you: "您" you: "您"
@ -106,6 +109,7 @@ clickToShow: "按一下以顯示"
sensitive: "敏感內容" sensitive: "敏感內容"
add: "新增" add: "新增"
reaction: "反應" reaction: "反應"
reactions: "反應"
enableEmojiReaction: "啟用表情符號反應" enableEmojiReaction: "啟用表情符號反應"
showEmojisInReactionNotifications: "在反應通知中顯示表情符號" showEmojisInReactionNotifications: "在反應通知中顯示表情符號"
reactionSetting: "在選擇器中顯示反應" reactionSetting: "在選擇器中顯示反應"

View file

@ -36,30 +36,47 @@
<MkTab v-model="tab" :style="'underline'" @update:modelValue="loadTab"> <MkTab v-model="tab" :style="'underline'" @update:modelValue="loadTab">
<option value="replies"> <option value="replies">
<!-- <i class="ph-arrow-u-up-left ph-bold ph-lg"></i> --> <!-- <i class="ph-arrow-u-up-left ph-bold ph-lg"></i> -->
<span v-if="note.repliesCount > 0" class="count">{{ {{
note.repliesCount wordWithCount(
}}</span> note.repliesCount,
{{ i18n.ts._notification._types.reply }} i18n.ts.reply,
i18n.ts.replies,
)
}}
</option> </option>
<option v-if="note.renoteCount > 0" value="renotes"> <option v-if="note.renoteCount > 0" value="renotes">
<!-- <i class="ph-rocket-launch ph-bold ph-lg"></i> --> <!-- <i class="ph-rocket-launch ph-bold ph-lg"></i> -->
<span class="count">{{ note.renoteCount }}</span> {{
{{ i18n.ts._notification._types.renote }} wordWithCount(
note.renoteCount,
i18n.ts.renote,
i18n.ts.renotes,
)
}}
</option> </option>
<option v-if="reactionsCount > 0" value="reactions"> <option v-if="reactionsCount > 0" value="reactions">
<!-- <i class="ph-smiley ph-bold ph-lg"></i> --> <!-- <i class="ph-smiley ph-bold ph-lg"></i> -->
<span class="count">{{ reactionsCount }}</span> {{
{{ i18n.ts.reaction }} wordWithCount(
reactionsCount,
i18n.ts.reaction,
i18n.ts.reactions,
)
}}
</option> </option>
<option v-if="directQuotes?.length > 0" value="quotes"> <option v-if="directQuotes?.length > 0" value="quotes">
<!-- <i class="ph-quotes ph-bold ph-lg"></i> --> <!-- <i class="ph-quotes ph-bold ph-lg"></i> -->
<span class="count">{{ directQuotes.length }}</span> {{
{{ i18n.ts._notification._types.quote }} wordWithCount(
directQuotes.length,
i18n.ts.quote,
i18n.ts.quotes,
)
}}
</option> </option>
<option v-if="clips?.length > 0" value="clips"> <option v-if="clips?.length > 0" value="clips">
<!-- <i class="ph-paperclip ph-bold ph-lg"></i> --> <!-- <i class="ph-paperclip ph-bold ph-lg"></i> -->
<span class="count">{{ clips.length }}</span> {{ wordWithCount(clips.length, i18n.ts.clip, i18n.ts.clips) }}
{{ i18n.ts.clips }}
</option> </option>
</MkTab> </MkTab>
@ -191,6 +208,11 @@ const softMuteReasonI18nSrc = (what?: string) => {
return i18n.ts.userSaysSomething; return i18n.ts.userSaysSomething;
}; };
const wordWithCount = (count: number, singular: string, plural: string) => {
if (count === 0) return plural;
return `${count} ${count === 1 ? singular : plural}`;
};
// plugin // plugin
if (noteViewInterruptors.length > 0) { if (noteViewInterruptors.length > 0) {
onMounted(async () => { onMounted(async () => {