Compare commits

..

38 Commits

Author SHA1 Message Date
syuilo
8ccbabf5ca 5.22.1 2018-08-12 03:09:45 +09:00
syuilo
7c763600b7 Fix #2162 2018-08-12 03:09:22 +09:00
Aya Morisawa
3a77d871d5 Stop supporting docker 2018-08-12 00:30:58 +09:00
Aya Morisawa
4ee6d0b549 Refactoring (#2160) 2018-08-12 00:01:07 +09:00
syuilo
c8c4ec6ad4 5.22.0 2018-08-11 21:35:22 +09:00
syuilo
c9ee737078 Fix bug 2018-08-11 21:34:12 +09:00
syuilo
ebc2cca0b4 New Crowdin translations (#2158) 2018-08-11 21:29:07 +09:00
syuilo
fc94df06eb New Crowdin translations (#2157) 2018-08-11 21:13:38 +09:00
syuilo
4a5e145048 Add new reaction: rip 😇 2018-08-11 21:08:34 +09:00
syuilo
be68f42220 Implement messaging/messages/read 2018-08-11 21:01:39 +09:00
syuilo
7942aa677f Update doc 2018-08-11 21:01:26 +09:00
syuilo
2fcf9288a5 Refactoring 2018-08-11 20:53:03 +09:00
MeiMei
9bc17974f2 未利用時はTwitterでログインを表示しない (#2156) 2018-08-11 20:20:35 +09:00
MeiMei
a8f142096c Cache failed url-preview (apply to proxy/client) (#2154) 2018-08-11 18:04:59 +09:00
syuilo
3c90abfb96 5.21.0 2018-08-11 12:24:16 +09:00
greenkeeper[bot]
12037fab9b fix(package): update @types/node to version 10.5.8 (#2152) 2018-08-11 12:21:42 +09:00
greenkeeper[bot]
73cc425093 fix(package): update request to version 2.88.0 (#2151) 2018-08-11 12:21:30 +09:00
syuilo
5c97da935d New Crowdin translations (#2150) 2018-08-11 12:21:18 +09:00
syuilo
a52c588f49 Merge branch 'master' of https://github.com/syuilo/misskey 2018-08-11 00:49:31 +09:00
syuilo
fa469725c7 Add doc 2018-08-11 00:49:29 +09:00
greenkeeper[bot]
a1f0cb1bc7 fix(package): update summaly to version 2.1.2 (#2149) 2018-08-11 00:44:26 +09:00
greenkeeper[bot]
fbbd33ded2 fix(package): update file-type to version 9.0.0 2018-08-10 20:44:03 +09:00
greenkeeper[bot]
9658e2b3fb fix(package): update element-ui to version 2.4.6 2018-08-10 20:43:56 +09:00
MeiMei
3d10b19727 Fix Powered by <b>Misskey</b>. (#2140) 2018-08-10 20:11:54 +09:00
syuilo
ab7725ff69 良い感じにした 2018-08-10 14:33:34 +09:00
syuilo
6372451d17 Fix bug 2018-08-10 14:15:12 +09:00
syuilo
2c11cc3f0a 5.20.1 2018-08-10 01:04:40 +09:00
greenkeeper[bot]
7f65f896f9 fix(package): update summaly to version 2.1.1 (#2135) 2018-08-10 01:02:20 +09:00
syuilo
def823ceea Merge branch 'master' of https://github.com/syuilo/misskey 2018-08-10 00:51:43 +09:00
syuilo
454d294cf3 Fix #2133 など 2018-08-10 00:51:40 +09:00
greenkeeper[bot]
1affdbdbab fix(package): update node-sass to version 4.9.3 (#2131) 2018-08-10 00:25:25 +09:00
greenkeeper[bot]
52286f4be8 fix(package): update summaly to version 2.1.0 (#2132) 2018-08-10 00:25:16 +09:00
syuilo
01d3f5f09d 5.20.0 2018-08-09 04:35:17 +09:00
syuilo
4333ff00a0 New Crowdin translations (#2116) 2018-08-09 04:34:21 +09:00
syuilo
25b88afbb7 Merge pull request #2127 from acid-chicken/acid-chicken-patch-3
Fix bug
2018-08-09 04:22:36 +09:00
Acid Chicken (硫酸鶏)
6a92c19227 Update url-preview.vue 2018-08-09 04:21:25 +09:00
syuilo
56b69b5fb7 Merge pull request #2126 from acid-chicken/acid-chicken-patch-2
ニコニコ動画
2018-08-09 04:07:33 +09:00
Acid Chicken (硫酸鶏)
ebf0479ecc Update url-preview.vue 2018-08-09 04:05:28 +09:00
39 changed files with 476 additions and 242 deletions

View File

@@ -1,26 +0,0 @@
FROM base/archlinux
MAINTAINER Aya Morisawa
RUN rm /etc/pacman.d/mirrorlist
RUN echo 'Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
RUN echo 'Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist
RUN rm /etc/localtime
RUN ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
RUN pacman -Sy --noconfirm
RUN pacman -S --noconfirm pacman
RUN pacman-db-upgrade
RUN pacman -S --noconfirm archlinux-keyring
RUN pacman -Syyu --noconfirm
RUN pacman -S --noconfirm git nodejs npm mongodb redis
COPY misskey.sh /root/misskey.sh
RUN chmod u+x /root/misskey.sh
EXPOSE 80
EXPOSE 443
EXPOSE 27017
CMD ["/root/misskey.sh"]

View File

@@ -1,6 +0,0 @@
#!/bin/sh
redis-server --daemonize yes
mongod > /dev/null &
cd /root/misskey
npm start
tail -f /dev/null

View File

@@ -1,29 +0,0 @@
Setup with Docker :whale:
================================================================
Ensure that the working directory is the repository root directory.
To create misskey image:
``` console
$ sudo docker build -t misskey ./docker
```
To run misskey:
``` console
$ sudo docker run --rm -i -t -p $PORT:80 -v $(pwd):/root/misskey -v $DBPATH:/data/db misskey
```
where `$PORT` is the port used to access Misskey Web from host browser
and `$DBPATH` is the path of MongoDB database on the host for data persistence.
ex:
``` console
$ sudo docker run --rm -i -t -p 80:80 -v $(pwd):/root/misskey -v /data/db:/data/db misskey
```
If you want to run misskey in production mode, add `--env NODE_ENV=production` like this:
``` console
$ sudo docker run --rm -i -t -p 80:80 -v $(pwd):/root/misskey -v /data/db:/data/db --env NODE_ENV=production misskey
```
Note that `$(pwd)` is the working directory.

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。" warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。"
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@@ -27,7 +28,6 @@ common:
notified-by: "{}さんから" notified-by: "{}さんから"
reply-from: "{}さんから返信:" reply-from: "{}さんから返信:"
quoted-by: "{}さんが引用:" quoted-by: "{}さんが引用:"
name: "Misskey"
time: time:
unknown: "なぞのじかん" unknown: "なぞのじかん"
future: "未来" future: "未来"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{}週間前" weeks_ago: "{}週間前"
months_ago: "{}ヶ月前" months_ago: "{}ヶ月前"
years_ago: "{}年前" years_ago: "{}年前"
month-and-day: "{month}月 {day}日"
trash: "ゴミ箱" trash: "ゴミ箱"
weekday-short: weekday-short:
sunday: "日" sunday: "日"
@@ -65,6 +66,7 @@ common:
congrats: "おめでとう" congrats: "おめでとう"
angry: "おこ" angry: "おこ"
confused: "こまこまのこまり" confused: "こまこまのこまり"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "これより過去の履歴はありません" no-history: "これより過去の履歴はありません"
resize-form: "ドラッグしてフォームの広さを調整" resize-form: "ドラッグしてフォームの広さを調整"
new-message: "新しいメッセージがあります" new-message: "新しいメッセージがあります"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "ここにメッセージを入力" input-message-here: "ここにメッセージを入力"
send: "送信" send: "送信"
attach-from-local: "PCからファイルを添付する" attach-from-local: "PCからファイルを添付する"
attach-from-drive: "ドライブからファイルを添付する" attach-from-drive: "ドライブからファイルを添付する"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "既読" is-read: "既読"
deleted: "このメッセージは削除されました" deleted: "このメッセージは削除されました"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "読み込みに失敗しました。" error: "読み込みに失敗しました。"
retry: "リトライ" retry: "リトライ"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
error: "エラー" error: "エラー"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "新規投稿" note: "新規投稿"
reply: "返信" reply: "返信"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "リスト" list: "リスト"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "プロフィール" profile: "プロフィール"
drive: "ドライブ" drive: "ドライブ"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。" warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。"
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@@ -27,7 +28,6 @@ common:
notified-by: "{}さんから" notified-by: "{}さんから"
reply-from: "{}さんから返信:" reply-from: "{}さんから返信:"
quoted-by: "{}さんが引用:" quoted-by: "{}さんが引用:"
name: "Misskey"
time: time:
unknown: "Unbekannt" unknown: "Unbekannt"
future: "Zukunft" future: "Zukunft"
@@ -39,6 +39,7 @@ common:
weeks_ago: "vor {0} Woche{0:n}" weeks_ago: "vor {0} Woche{0:n}"
months_ago: "vor {0} Monat{0:en}" months_ago: "vor {0} Monat{0:en}"
years_ago: "vor {} Jahr{0:en}" years_ago: "vor {} Jahr{0:en}"
month-and-day: "{month}月 {day}日"
trash: "ゴミ箱" trash: "ゴミ箱"
weekday-short: weekday-short:
sunday: "So" sunday: "So"
@@ -65,6 +66,7 @@ common:
congrats: "Glückwunsch!" congrats: "Glückwunsch!"
angry: "Wütend" angry: "Wütend"
confused: "Verwirrt" confused: "Verwirrt"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "Was machst du gerade?" a: "Was machst du gerade?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "Keine weitere Chronik vorhanden" no-history: "Keine weitere Chronik vorhanden"
resize-form: "Ziehen um die Größe zu verändern" resize-form: "Ziehen um die Größe zu verändern"
new-message: "Neue Nachricht" new-message: "Neue Nachricht"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "Nachricht hier eingeben" input-message-here: "Nachricht hier eingeben"
send: "Senden" send: "Senden"
attach-from-local: "Wähle Dateien von deinem PC aus" attach-from-local: "Wähle Dateien von deinem PC aus"
attach-from-drive: "Wähle Dateien von deinem Speicher aus" attach-from-drive: "Wähle Dateien von deinem Speicher aus"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "Gelesen" is-read: "Gelesen"
deleted: "Diese Nachricht wurde gelöscht" deleted: "Diese Nachricht wurde gelöscht"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "Zeige Details" detail: "Zeige Details"
private: "Dieser Beitrag ist eine privat" private: "Dieser Beitrag ist eine privat"
deleted: "Dieser Beitrag wurde entfernt" deleted: "Dieser Beitrag wurde entfernt"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "Laden fehlgeschlagen." error: "Laden fehlgeschlagen."
retry: "Erneut versuchen" retry: "Erneut versuchen"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
error: "エラー" error: "エラー"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "Neue Notiz" note: "Neue Notiz"
reply: "Antworten" reply: "Antworten"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "Listen" list: "Listen"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "Dein Profil" profile: "Dein Profil"
drive: "Speicher" drive: "Speicher"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskey is not running ads</strong>, but some features may be unavailable or malfunctioning if ad blocking features are enabled." warning: "<strong>Misskey is not running ads</strong>, but some features may be unavailable or malfunctioning if ad blocking features are enabled."
application-authorization: "Application authorizations." application-authorization: "Application authorizations."
close: "Close" close: "Close"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "Got it!" got-it: "Got it!"
customization-tips: customization-tips:
title: "Customization tips" title: "Customization tips"
@@ -27,7 +28,6 @@ common:
notified-by: "Notified by {}:" notified-by: "Notified by {}:"
reply-from: "Reply from {}:" reply-from: "Reply from {}:"
quoted-by: "Quoted by {}:" quoted-by: "Quoted by {}:"
name: "Misskey"
time: time:
unknown: "unknown" unknown: "unknown"
future: "future" future: "future"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{}week(s) ago" weeks_ago: "{}week(s) ago"
months_ago: "{}month(s) ago" months_ago: "{}month(s) ago"
years_ago: "{}year(s) ago" years_ago: "{}year(s) ago"
month-and-day: "{month}/{day}"
trash: "Trash" trash: "Trash"
weekday-short: weekday-short:
sunday: "S" sunday: "S"
@@ -65,6 +66,7 @@ common:
congrats: "Congrats!" congrats: "Congrats!"
angry: "Angry" angry: "Angry"
confused: "Confused" confused: "Confused"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "What are you doing?" a: "What are you doing?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "There is no further history" no-history: "There is no further history"
resize-form: "Drag to resize" resize-form: "Drag to resize"
new-message: "New message" new-message: "New message"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "Enter message here" input-message-here: "Enter message here"
send: "Send" send: "Send"
attach-from-local: "Attach files from your device" attach-from-local: "Attach files from your device"
attach-from-drive: "Attach files from your Drive" attach-from-drive: "Attach files from your Drive"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "Read" is-read: "Read"
deleted: "This message has been deleted" deleted: "This message has been deleted"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "Show details" detail: "Show details"
private: "This post is private" private: "This post is private"
deleted: "The post has been deleted" deleted: "The post has been deleted"
hide: "Hide"
see-more: "See more"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "Loading failed." error: "Loading failed."
retry: "Retry" retry: "Retry"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "Your device does not support geolocalization." geolocation-alert: "Your device does not support geolocalization."
error: "Error" error: "Error"
enter-username: "Please enter a username..." enter-username: "Please enter a username..."
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "New note" note: "New note"
reply: "Reply" reply: "Reply"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "Lists" list: "Lists"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "Welcome back," welcome-back: "Welcome back,"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "Your profile" profile: "Your profile"
drive: "Media storage" drive: "Media storage"
@@ -805,7 +813,7 @@ desktop/views/pages/selectdrive.vue:
cancel: "Cancel" cancel: "Cancel"
upload: "Upload files from your device" upload: "Upload files from your device"
desktop/views/pages/search.vue: desktop/views/pages/search.vue:
not-available: "The search function can not be used." not-available: "The search feature is not available."
not-found: "No posts were found for '{}'" not-found: "No posts were found for '{}'"
desktop/views/pages/share.vue: desktop/views/pages/share.vue:
share-with: "Share with {}." share-with: "Share with {}."
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "More" load-more: "More"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "Welcome back, " welcome-back: "Welcome back, "
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "Timeline" timeline: "Timeline"
notifications: "Notifications" notifications: "Notifications"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "Dashboard" dashboard: "Dashboard"
widgets-hints: "You can add/delete/rearrange widgets. To move the widget, drag \"三\". Tap \"x\" to delete the widget. Some widgets can change display by tapping." widgets-hints: "You can add/delete/rearrange widgets. To move the widget, drag \"三\". Tap \"x\" to delete the widget. Some widgets can change display by tapping."
add-widget: "Add"
customization-tips: "Customization tips"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "Activity" activity: "Activity"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "Search" search: "Search"
empty: "No posts were found for '{}'" empty: "No posts were found for '{}'"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "Choose files" select-file: "Choose files"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "Name" name: "Name"
type: "Type" type: "Type"
description: "Description" description: "Description"
dev/views/index.vue:
manage-apps: "Manage apps"

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskey no tiene anuncios publicitarios.</strong> Sin embargo, algunas características podrían no estar disponibles si el bloqueador de publicidad está habilitado." warning: "<strong>Misskey no tiene anuncios publicitarios.</strong> Sin embargo, algunas características podrían no estar disponibles si el bloqueador de publicidad está habilitado."
application-authorization: "Autorizaciones de la aplicación." application-authorization: "Autorizaciones de la aplicación."
close: "Cerrar" close: "Cerrar"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "¡Listo!" got-it: "¡Listo!"
customization-tips: customization-tips:
title: "Consejos de personalización" title: "Consejos de personalización"
@@ -27,7 +28,6 @@ common:
notified-by: "Notificado por {}:" notified-by: "Notificado por {}:"
reply-from: "Respuesta de {}:" reply-from: "Respuesta de {}:"
quoted-by: "Citado por {}:" quoted-by: "Citado por {}:"
name: "Misskey"
time: time:
unknown: "Desconocido" unknown: "Desconocido"
future: "Futuro" future: "Futuro"
@@ -39,6 +39,7 @@ common:
weeks_ago: "Hace {} semana(s)" weeks_ago: "Hace {} semana(s)"
months_ago: "Hace {} mes(es)" months_ago: "Hace {} mes(es)"
years_ago: "Hace {} año(s)" years_ago: "Hace {} año(s)"
month-and-day: "{day} de {month}"
trash: "Papelera" trash: "Papelera"
weekday-short: weekday-short:
sunday: "domingo" sunday: "domingo"
@@ -65,6 +66,7 @@ common:
congrats: "felicidades" congrats: "felicidades"
angry: "enfadado" angry: "enfadado"
confused: "confundido" confused: "confundido"
rip: "RIP"
pudding: "Chafado" pudding: "Chafado"
note-placeholders: note-placeholders:
a: "¿Qué haces?" a: "¿Qué haces?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "El historial se ha acabado" no-history: "El historial se ha acabado"
resize-form: "Arrastra para redimensionar" resize-form: "Arrastra para redimensionar"
new-message: "Nuevo mensaje" new-message: "Nuevo mensaje"
only-one-file-attached: "Un único archivo se puede conectar al mensaje"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "Escribe el mensaje aquí" input-message-here: "Escribe el mensaje aquí"
send: "Enviar" send: "Enviar"
attach-from-local: "Adjunta ficheros desde tu PC" attach-from-local: "Adjunta ficheros desde tu PC"
attach-from-drive: "Adjunta ficheros desde tu disco" attach-from-drive: "Adjunta ficheros desde tu disco"
only-one-file-attached: "Un único archivo se puede conectar al mensaje"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "Leer" is-read: "Leer"
deleted: "El mensaje se ha borrado" deleted: "El mensaje se ha borrado"
@@ -375,56 +379,56 @@ common/views/widgets/tips.vue:
tips-line10: "Usando el accesorio de Máquina del Tiempo puedes encontrar publicaciones antiguas" tips-line10: "Usando el accesorio de Máquina del Tiempo puedes encontrar publicaciones antiguas"
tips-line11: "Puedes resaltar publicaciones en la página de usuario haciendo click en \"...\"" tips-line11: "Puedes resaltar publicaciones en la página de usuario haciendo click en \"...\""
tips-line13: "Todos los archivos añadidos a la publicación se han guardado en tu unidad." tips-line13: "Todos los archivos añadidos a la publicación se han guardado en tu unidad."
tips-line14: "ホームのカスタマイズ中、ウィジェットを右クリックしてデザインを変更できます" tips-line14: "Cuando personalizas el inicio puedas dar click derecho a un accesorio y cambiar el diseño."
tips-line17: "「**」でテキストを囲むと**強調表示**されます" tips-line17: "Al colocar ** delante y luego del texto, lo estarás destacando en negrillas"
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "Algunas ventanas pueden ser separadas fuera del navegador"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "El porcentaje mostrando en el accesorio de calendario indica el porcentaje de tiempo transcurrido."
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "También puedes usar la API para desarrollar tus propios bots."
tips-line23: "まゆかわいいよまゆ" tips-line23: "Mayu is tan bonito con sus cejas."
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskey inició en 2014."
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "Puedes recibir notificaciones incluso si Misskey no está abierto en un navegador compatible."
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "Autenticado como {}"
following: "フォロー中" following: "Siguiendo"
follow: "フォロー" follow: "Seguir"
request-pending: "フォロー許可待ち" request-pending: "Solicitud pendiente"
follow-request: "フォロー申請" follow-request: "Solicitar suscripción"
desktop: desktop:
banner-crop-title: "バナーとして表示する部分を選択" banner-crop-title: "Corta la parte que aparece como un banner"
banner: "バナー" banner: "Banner"
uploading-banner: "新しいバナーをアップロードしています" uploading-banner: "Cargando un nuevo banner"
banner-updated: "バナーを更新しました" banner-updated: "Banner actualizado"
choose-banner: "バナーにする画像を選択" choose-banner: "Escoge un banner"
avatar-crop-title: "アバターとして表示する部分を選択" avatar-crop-title: "Corta la parte que aparece como un avatar"
avatar: "アバター" avatar: "Avatar"
uploading-avatar: "新しいアバターをアップロードしています" uploading-avatar: "Cargando un nuevo avatar"
avatar-updated: "アバターを更新しました" avatar-updated: "Avatar actualizado"
choose-avatar: "アバターにする画像を選択" choose-avatar: "Escoge una imagen de avatar"
desktop/views/components/activity.chart.vue: desktop/views/components/activity.chart.vue:
total: "Black ... Total" total: "Negro ... Total"
notes: "Blue ... Notes" notes: "Azul ... Notas"
replies: "Red ... Replies" replies: "Rojo ... Respuestas"
renotes: "Green ... Renotes" renotes: "Verde ... Republicaciones"
desktop/views/components/activity.vue: desktop/views/components/activity.vue:
title: "アクティビティ" title: "Actividad"
toggle: "表示を切り替え" toggle: "Alternar vistas"
desktop/views/components/calendar.vue: desktop/views/components/calendar.vue:
title: "{1} {2}" title: "{1} / {2}"
prev: "前の月" prev: "Mes anterior"
next: "次の月" next: "Próximo mes"
go: "クリックして時間遡行" go: "Click para navegar"
desktop/views/components/choose-file-from-drive-window.vue: desktop/views/components/choose-file-from-drive-window.vue:
choose-file: "ファイル選択中" choose-file: "Escoger archivos"
upload: "PCからドライブにファイルをアップロード" upload: "Cargar archivos de tu dispositivo"
cancel: "キャンセル" cancel: "Cancelar"
ok: "決定" ok: "OK"
choose-prompt: "ファイルを選択" choose-prompt: "Escoger archivos"
desktop/views/components/choose-folder-from-drive-window.vue: desktop/views/components/choose-folder-from-drive-window.vue:
cancel: "キャンセル" cancel: "Cancelar"
ok: "決定" ok: "OK"
choose-prompt: "Escoge una Carpeta" choose-prompt: "Escoge una Carpeta"
desktop/views/components/crop-window.vue: desktop/views/components/crop-window.vue:
skip: "クロップをスキップ" skip: "Ignorar el cortado"
cancel: "Cancelar" cancel: "Cancelar"
ok: "OK" ok: "OK"
desktop/views/components/drive-window.vue: desktop/views/components/drive-window.vue:
@@ -435,8 +439,8 @@ desktop/views/components/drive.file.vue:
banner: "Banner" banner: "Banner"
contextmenu: contextmenu:
rename: "Renombrar" rename: "Renombrar"
mark-as-sensitive: "閲覧注意に設定" mark-as-sensitive: "Marcar como 'sensible'"
unmark-as-sensitive: "閲覧注意を解除" unmark-as-sensitive: "Desmarcar como 'sensible'"
copy-url: "Copia la URL" copy-url: "Copia la URL"
download: "Descargar" download: "Descargar"
else-files: "Otros" else-files: "Otros"
@@ -481,8 +485,8 @@ desktop/views/components/drive.vue:
upload: "Subir fichero" upload: "Subir fichero"
url-upload: "Subir desde una URL" url-upload: "Subir desde una URL"
desktop/views/components/media-image.vue: desktop/views/components/media-image.vue:
sensitive: "閲覧注意" sensitive: "El contenido es NSFW (no seguro para ver en el trabajo, 'not safe for work')"
click-to-show: "クリックして表示" click-to-show: "Click para mostrar"
desktop/views/components/media-video.vue: desktop/views/components/media-video.vue:
sensitive: "閲覧注意" sensitive: "閲覧注意"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "Mostrar detalles" detail: "Mostrar detalles"
private: "Esta publicación es privada" private: "Esta publicación es privada"
deleted: "Esta publicación ha sido borrada" deleted: "Esta publicación ha sido borrada"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "Error al cargar." error: "Error al cargar."
retry: "Reintentar" retry: "Reintentar"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "Tu dispositivo no tiene soporte de geolocalización." geolocation-alert: "Tu dispositivo no tiene soporte de geolocalización."
error: "Error" error: "Error"
enter-username: "Por favor escribe un nombre de usuario..." enter-username: "Por favor escribe un nombre de usuario..."
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "Nota nueva" note: "Nota nueva"
reply: "Responder" reply: "Responder"
@@ -646,26 +653,26 @@ desktop/views/components/settings.vue:
version: "バージョン:" version: "バージョン:"
latest-version: "最新のバージョン:" latest-version: "最新のバージョン:"
update-checking: "アップデートを確認中" update-checking: "アップデートを確認中"
do-update: "アップデートを確認" do-update: "Chequear por actualizaciones"
update-settings: "詳細設定" update-settings: "Configuración avanzada"
prevent-update: "アップデートを延期する(非推奨)" prevent-update: "Posponer actualizaciones (no recomendado)"
prevent-update-desc: "この設定をオンにしてもアップデートが反映される場合があります。この設定はこのデバイスのみ有効です。" prevent-update-desc: "Incluso si activas esta configuración, algunas actualizaciones podrían aplicarse. Esta configuración está habilitada sólo para este dispositivo."
no-updates: "利用可能な更新はありません" no-updates: "No hay actualizaciones disponibles"
no-updates-desc: "お使いのMisskeyは最新です。" no-updates-desc: "Tu Misskey está actualizado"
update-available: "新しいバージョンが利用可能です" update-available: "Una nueva versión está disponible"
update-available-desc: "ページを再度読み込みすると更新が適用されます。" update-available-desc: "Las actualizaciones se aplicarán cuando actualices la página nuevamente."
advanced-settings: "高度な設定" advanced-settings: "Avanzado"
debug-mode: "デバッグモードを有効にする" debug-mode: "Habilitar modo de depuración"
debug-mode-desc: "この設定はブラウザに記憶されます。" debug-mode-desc: "Esta configuración se ha guardado en el navegador."
experimental: "実験的機能を有効にする" experimental: "Habilitar herramientas experimentales"
experimental-desc: "実験的機能を有効にするとMisskeyの動作が不安定になる可能性があります。この設定はブラウザに記憶されます。" experimental-desc: "Activar esto puede hacer que tu cliente de Misskey se vuelva inestable. La configuración se ha guardado en el navegador."
tools: "ツール" tools: "Herramientas"
task-manager: "タスクマネージャ" task-manager: "Navegador de tareas"
third-parties: "サードパーティ" third-parties: "Servicios externos"
desktop/views/components/settings.2fa.vue: desktop/views/components/settings.2fa.vue:
intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。" intro: "二段階認証を設定すると、サインイン時にパスワードだけでなく、予め登録しておいた物理的なデバイス(例えばあなたのスマートフォンなど)も必要になり、よりセキュリティが向上します。"
detail: "詳細..." detail: "Ver detalles..."
url: "https://www.google.co.jp/intl/ja/landing/2step/" url: "https://www.google.com/landing/2step/"
caution: "Si pierdes acceso al dispositivo, no podrás conectarte a Misskey." caution: "Si pierdes acceso al dispositivo, no podrás conectarte a Misskey."
register: "Registrar un dispositivo" register: "Registrar un dispositivo"
already-registered: "Un dispositivo ya fue registrado" already-registered: "Un dispositivo ya fue registrado"
@@ -698,19 +705,19 @@ desktop/views/components/settings.password.vue:
reset: "Cambiar contraseña" reset: "Cambiar contraseña"
enter-current-password: "Ingresar contraseña actual" enter-current-password: "Ingresar contraseña actual"
enter-new-password: "Ingresar nueva contraseña" enter-new-password: "Ingresar nueva contraseña"
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "Ingresar nueva contraseña de nuevo"
not-match: "新しいパスワードが一致しません" not-match: "Las nuevas contraseñas no se corresponden consigo mismas"
changed: "パスワードを変更しました" changed: "Contraseña actualizada"
desktop/views/components/settings.profile.vue: desktop/views/components/settings.profile.vue:
avatar: "アイコン" avatar: "Avatar"
choice-avatar: "画像を選択" choice-avatar: "Escoger una imagen"
name: "名前" name: "Nombre"
location: "場所" location: "Localización"
description: "自己紹介" description: "Descripción"
birthday: "誕生日" birthday: "Fecha de nacimiento"
save: "保存" save: "Perfil actualizado"
locked-account: "アカウントの保護" locked-account: "Protege tu cuenta"
is-locked: "投稿を非公開にする" is-locked: "Crear una nota privada"
other: "その他" other: "その他"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-cat: "このアカウントはCatです" is-cat: "このアカウントはCatです"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "リスト" list: "リスト"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "プロフィール" profile: "プロフィール"
drive: "ドライブ" drive: "ドライブ"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -11,7 +11,8 @@ common:
warning: "<strong>Misskey n'utilise pas de publicités</strong>, mais quelques options peuvent être non disponibles ou fonctionneraient mal si un bloqueur de publicités est activé." warning: "<strong>Misskey n'utilise pas de publicités</strong>, mais quelques options peuvent être non disponibles ou fonctionneraient mal si un bloqueur de publicités est activé."
application-authorization: "Permissions de l'application" application-authorization: "Permissions de l'application"
close: "Fermer" close: "Fermer"
got-it: "わかった" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "J'ai compris !"
customization-tips: customization-tips:
title: "Conseils de personnalisation" title: "Conseils de personnalisation"
paragraph1: "La personnalisation à la maison vous permet d'ajouter / supprimer, glisser et déposer et réorganiser les widgets." paragraph1: "La personnalisation à la maison vous permet d'ajouter / supprimer, glisser et déposer et réorganiser les widgets."
@@ -27,7 +28,6 @@ common:
notified-by: "Notifié par {} :" notified-by: "Notifié par {} :"
reply-from: "Réponse de {} :" reply-from: "Réponse de {} :"
quoted-by: "Cité·e par {} :" quoted-by: "Cité·e par {} :"
name: "Misskey"
time: time:
unknown: "inconnu" unknown: "inconnu"
future: "future" future: "future"
@@ -39,6 +39,7 @@ common:
weeks_ago: "Il y a {} semaines·s" weeks_ago: "Il y a {} semaines·s"
months_ago: "Il y a {} mois" months_ago: "Il y a {} mois"
years_ago: "Il y a {} an·s" years_ago: "Il y a {} an·s"
month-and-day: "{month}/{day}"
trash: "Corbeille" trash: "Corbeille"
weekday-short: weekday-short:
sunday: "D" sunday: "D"
@@ -65,6 +66,7 @@ common:
congrats: "Félicitations !" congrats: "Félicitations !"
angry: "En colère" angry: "En colère"
confused: "Confus" confused: "Confus"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "Que faîtes vous maintenant ?" a: "Que faîtes vous maintenant ?"
@@ -201,7 +203,7 @@ common/views/components/games/reversi/reversi.room.vue:
ready: "Prêt" ready: "Prêt"
cancel-ready: "Annuler \"Je suis prêt\"" cancel-ready: "Annuler \"Je suis prêt\""
common/views/components/connect-failed.vue: common/views/components/connect-failed.vue:
title: "Impossible de se connecter au server." title: "Échec de connexion au serveur"
description: "Il y a soit un problème avec votre connexion internet, soit le serveur est hors-ligne ou en maintenance. Veuillez {ressayer} plus tard." description: "Il y a soit un problème avec votre connexion internet, soit le serveur est hors-ligne ou en maintenance. Veuillez {ressayer} plus tard."
thanks: "On vous remercie d'utiliser Misskey." thanks: "On vous remercie d'utiliser Misskey."
troubleshoot: "dépanner" troubleshoot: "dépanner"
@@ -211,7 +213,7 @@ common/views/components/connect-failed.troubleshooter.vue:
checking-network: "Vérification de la connexion au réseau" checking-network: "Vérification de la connexion au réseau"
internet: "Connexion Internet" internet: "Connexion Internet"
checking-internet: "Vérification de la connexion internet" checking-internet: "Vérification de la connexion internet"
server: "Connexion au server" server: "Connexion au serveur"
checking-server: "Vérification de la connexion au serveur" checking-server: "Vérification de la connexion au serveur"
finding: "Recherche d'un problème" finding: "Recherche d'un problème"
no-network: "Aucune connexion au réseau" no-network: "Aucune connexion au réseau"
@@ -219,9 +221,9 @@ common/views/components/connect-failed.troubleshooter.vue:
no-internet: "Aucune connexion internet." no-internet: "Aucune connexion internet."
no-internet-desc: "Veuillez vérifier que vous êtes bien connecté à internet." no-internet-desc: "Veuillez vérifier que vous êtes bien connecté à internet."
no-server: "Impossible de se connecter au serveur" no-server: "Impossible de se connecter au serveur"
no-server-desc: "Votre connexion est OK, mais il a été impossible de vous connecter au serveur de Misskey. Il y a des chances que le serveur soit hors-ligne ou en maintenance, veuillez ressayer plus tard." no-server-desc: "Votre connexion semble correcte, mais il a été impossible de vous connecter au serveur de Misskey. Il se peut que le serveur soit hors-ligne ou en maintenance, veuillez ressayer plus tard."
success: "Connexion au serveur de Misskey reussie!" success: "Connexion au serveur de Misskey réussie !"
success-desc: "La connexion au serveur a été reussie. Veuillez recharger la page." success-desc: "Succès de la connexion au serveur de Misskey. Veuillez recharger la page."
flush: "Vider le cache" flush: "Vider le cache"
set-version: "Choisissez une version" set-version: "Choisissez une version"
common/views/components/messaging.vue: common/views/components/messaging.vue:
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "Il n'y a pas plus d'historique" no-history: "Il n'y a pas plus d'historique"
resize-form: "Faites glisser pour redimensionner" resize-form: "Faites glisser pour redimensionner"
new-message: "Nouveau message" new-message: "Nouveau message"
only-one-file-attached: "Un seul fichier uniquement peut être joint au message"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "Tapez ici votre message" input-message-here: "Tapez ici votre message"
send: "Envoyer" send: "Envoyer"
attach-from-local: "Joindre un fichier depuis votre PC" attach-from-local: "Joindre un fichier depuis votre PC"
attach-from-drive: "Joindre un fichier depuis votre Drive" attach-from-drive: "Joindre un fichier depuis votre Drive"
only-one-file-attached: "Un seul fichier uniquement peut être joint au message"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "Lu" is-read: "Lu"
deleted: "Ce message a été supprimé" deleted: "Ce message a été supprimé"
@@ -278,8 +282,8 @@ common/views/components/signin.vue:
token: "Token" token: "Token"
signing-in: "Connexion...." signing-in: "Connexion...."
signin: "Se connecter" signin: "Se connecter"
or: "または" or: "Ou"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Se connecter via Twitter"
common/views/components/signup.vue: common/views/components/signup.vue:
username: "Nom d'utilisateur" username: "Nom d'utilisateur"
checking: "Vérification" checking: "Vérification"
@@ -287,10 +291,10 @@ common/views/components/signup.vue:
unavailable: "Non disponible" unavailable: "Non disponible"
error: "Erreur de réseau" error: "Erreur de réseau"
invalid-format: "Utilisez seulement des lettres, nombres et/ou -." invalid-format: "Utilisez seulement des lettres, nombres et/ou -."
too-short: "Veuillez taper au moins un charactère!" too-short: "Veuillez saisir au moins un caractère !"
too-long: "Veuillez entrer au maximum 20 charactères." too-long: "Veuillez entrer au maximum 20 caractères."
password: "Mot de Passe" password: "Mot de Passe"
password-placeholder: "Nous recommendons au moins 8 charactères." password-placeholder: "Nous recommendons au moins 8 caractères."
weak-password: "Faible" weak-password: "Faible"
normal-password: "Moyen" normal-password: "Moyen"
strong-password: "Fort" strong-password: "Fort"
@@ -300,21 +304,21 @@ common/views/components/signup.vue:
password-not-matched: "Les mots de passes ne correspondent pas." password-not-matched: "Les mots de passes ne correspondent pas."
recaptcha: "Vérifier" recaptcha: "Vérifier"
create: "Créer un compte" create: "Créer un compte"
some-error: "La création de compte a échoué. Veuillez ressayer." some-error: "La création du compte a échoué. Veuillez réessayer."
common/views/components/special-message.vue: common/views/components/special-message.vue:
new-year: "Bonne année !" new-year: "Bonne année !"
christmas: "Joyeux Noël !" christmas: "Joyeux Noël !"
common/views/components/stream-indicator.vue: common/views/components/stream-indicator.vue:
connecting: "Connexion en cours" connecting: "Connexion en cours"
reconnecting: "Re-connexion en cours" reconnecting: "Reconnexion en cours"
connected: "Connecté" connected: "Connecté"
common/views/components/twitter-setting.vue: common/views/components/twitter-setting.vue:
description: "Si vous liez votre compte Twitter à votre compte Misskey, vous verrez ensuite votre compte Twitter s'afficher sur votre profile, vous aurez aussi la possibilité de vous connecter à Misskey en utilisant votre compte Twitter." description: "Si vous liez votre compte Twitter à votre compte Misskey, vous verrez ensuite votre compte Twitter s'afficher sur votre profile, vous aurez aussi la possibilité de vous connecter à Misskey en utilisant votre compte Twitter."
connected-to: "Vous êtes connecté à ce compte" connected-to: "Vous êtes connecté à ce compte Twitter"
detail: "Detail..." detail: "Détails …"
reconnect: "Reconnecter" reconnect: "Reconnecter"
connect: "Lier votre compte Twitter" connect: "Lier votre compte Twitter"
disconnect: "Deconnecter" disconnect: "Déconnecter"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "En attente" waiting: "En attente"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@@ -324,11 +328,11 @@ common/views/components/visibility-chooser.vue:
followers: "Abonné·e·s" followers: "Abonné·e·s"
followers-desc: "Publier à vos abonné·e·s uniquement" followers-desc: "Publier à vos abonné·e·s uniquement"
specified: "Direct" specified: "Direct"
specified-desc: "Publier aux utilisateurs mentionnés" specified-desc: "Publier aux utilisateurs·trices mentionné·es"
private: "Privé" private: "Privé"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "Récuperation" fetching: "Récuperation"
no-broadcasts: "No broadcasts" no-broadcasts: "Aucune annonce"
have-a-nice-day: "Passez une bonne journée !" have-a-nice-day: "Passez une bonne journée !"
next: "Suivant" next: "Suivant"
common/views/widgets/calendar.vue: common/views/widgets/calendar.vue:
@@ -340,13 +344,13 @@ common/views/widgets/calendar.vue:
this-year: "Cette année :" this-year: "Cette année :"
common/views/widgets/donation.vue: common/views/widgets/donation.vue:
title: "Dons" title: "Dons"
text: "Toutes les depences pour couvrir les frais de Misskey sortent directement de notre poche. Nous ne recevons pas d'argent, si vous pouvez nous faire dons d'argent, on vous serait eternellement reconnaissant. Si vous êtes intéressés veuilles contacter {}. Merci pour votre contribution!" text: "Les frais pour faire fonctionner Misskey sortent directement de notre poche. Nous ne recevons pas d'argent issu de la publicité, si vous pouvez nous faire des dons, on vous serait éternellement reconnaissants. Si vous êtes intéressé·es veuillez contacter {}. Merci pour votre contribution !"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "Flux de photo" title: "Flux de photo"
no-photos: "Pas de photos" no-photos: "Pas de photos"
common/views/widgets/posts-monitor.vue: common/views/widgets/posts-monitor.vue:
title: "Graph des publications" title: "Graph des publications"
toggle: "Basculer les vues" toggle: "Basculer entre les vues"
common/views/widgets/hashtags.vue: common/views/widgets/hashtags.vue:
title: "Étiquettes" title: "Étiquettes"
count: "{} utilisateurs mentionnés" count: "{} utilisateurs mentionnés"
@@ -367,7 +371,7 @@ common/views/widgets/tips.vue:
tips-line2: "<kbd>p</kbd>または<kbd>n</kbd>で投稿フォームを開きます" tips-line2: "<kbd>p</kbd>または<kbd>n</kbd>で投稿フォームを開きます"
tips-line3: "Vous pouvez glisser et déposer des fichiers sur la fenêtre de la note" tips-line3: "Vous pouvez glisser et déposer des fichiers sur la fenêtre de la note"
tips-line4: "Vous pouvez coller des images à partir du presse-papier sur la fenêtre de la note" tips-line4: "Vous pouvez coller des images à partir du presse-papier sur la fenêtre de la note"
tips-line5: "ドライブにファイルをドラッグ&ドロップしてアップロードできます" tips-line5: "Vous pouvez téléverser des fichiers sur le Drive en faisant un glisser/déplacer"
tips-line6: "ドライブでファイルをドラッグしてフォルダ移動できます" tips-line6: "ドライブでファイルをドラッグしてフォルダ移動できます"
tips-line7: "ドライブでフォルダをドラッグしてフォルダ移動できます" tips-line7: "ドライブでフォルダをドラッグしてフォルダ移動できます"
tips-line8: "Vous pouvez personnaliser l'Accueil via les paramètres" tips-line8: "Vous pouvez personnaliser l'Accueil via les paramètres"
@@ -376,7 +380,7 @@ common/views/widgets/tips.vue:
tips-line11: "Vous pouvez épingler des notes sur votre page en appuyant sur \"…\"" tips-line11: "Vous pouvez épingler des notes sur votre page en appuyant sur \"…\""
tips-line13: "Tous les fichiers attachés à cette publication sont sauvegardés dans le Drive" tips-line13: "Tous les fichiers attachés à cette publication sont sauvegardés dans le Drive"
tips-line14: "ホームのカスタマイズ中、ウィジェットを右クリックしてデザインを変更できます" tips-line14: "ホームのカスタマイズ中、ウィジェットを右クリックしてデザインを変更できます"
tips-line17: "「**」でテキストを囲むと**強調表示**されます" tips-line17: "Vous pouvez mettre un texte en surbrillance en le mettant entre ** **"
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "Vous pouvez aussi utiliser l'API pour développer des Bots." tips-line21: "Vous pouvez aussi utiliser l'API pour développer des Bots."
@@ -390,16 +394,16 @@ common/views/pages/follow.vue:
request-pending: "Demande d'abonnement en attente" request-pending: "Demande d'abonnement en attente"
follow-request: "Demande d'abonnement" follow-request: "Demande d'abonnement"
desktop: desktop:
banner-crop-title: "バナーとして表示する部分を選択" banner-crop-title: "Découpez la partie qui apparaîtra comme une bannière"
banner: "バナー" banner: "Bannière"
uploading-banner: "新しいバナーをアップロードしています" uploading-banner: "Téléversement d'une nouvelle bannière"
banner-updated: "バナーを更新しました" banner-updated: "La bannière est mise à jour"
choose-banner: "バナーにする画像を選択" choose-banner: "Choisir une bannière"
avatar-crop-title: "アバターとして表示する部分を選択" avatar-crop-title: "Découpez la partie qui apparaîtra dans l'avatar"
avatar: "アバター" avatar: "Avatar"
uploading-avatar: "新しいアバターをアップロードしています" uploading-avatar: "Téléversement du nouvel avatar"
avatar-updated: "アバターを更新しました" avatar-updated: "L'avatar est mis à jour"
choose-avatar: "アバターにする画像を選択" choose-avatar: "Choisir un avatar"
desktop/views/components/activity.chart.vue: desktop/views/components/activity.chart.vue:
total: "Noirs ... Total" total: "Noirs ... Total"
notes: "Bleu ... Notes" notes: "Bleu ... Notes"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "Afficher les détails" detail: "Afficher les détails"
private: "cette publication est privée" private: "cette publication est privée"
deleted: "cette publication a été supprimée" deleted: "cette publication a été supprimée"
hide: "Masquer"
see-more: "Voir plus"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "Échec du chargement." error: "Échec du chargement."
retry: "Réessayer" retry: "Réessayer"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "Votre appareil ne prend pas en charge les services de localisation" geolocation-alert: "Votre appareil ne prend pas en charge les services de localisation"
error: "Erreur" error: "Erreur"
enter-username: "Saisir un nom d'utilisateur …" enter-username: "Saisir un nom d'utilisateur …"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "Nouvelle note" note: "Nouvelle note"
reply: "Répondre" reply: "Répondre"
@@ -615,7 +622,7 @@ desktop/views/components/settings.vue:
circle-icons: "Utiliser des icônes circulaires" circle-icons: "Utiliser des icônes circulaires"
gradient-window-header: "Utiliser les dégradés sur la barre de titre de la fenêtre" gradient-window-header: "Utiliser les dégradés sur la barre de titre de la fenêtre"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "Afficher les réponses"
show-my-renotes: "Afficher mes republications dans le fil" show-my-renotes: "Afficher mes republications dans le fil"
show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する" show-renoted-my-notes: "Renoteされた自分の投稿をタイムラインに表示する"
show-maps: "Afficher la carte" show-maps: "Afficher la carte"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "Listes" list: "Listes"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "Content de vous revoir !" welcome-back: "Content de vous revoir !"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "Votre profil" profile: "Votre profil"
drive: "Drive" drive: "Drive"
@@ -758,7 +766,7 @@ desktop/views/components/received-follow-requests-window.vue:
desktop/views/components/user-lists-window.vue: desktop/views/components/user-lists-window.vue:
title: "Listes de l'utilisateur" title: "Listes de l'utilisateur"
create-list: "Créer une liste" create-list: "Créer une liste"
list-name: "リスト名" list-name: "Nom de la liste"
desktop/views/components/user-preview.vue: desktop/views/components/user-preview.vue:
notes: "Publications" notes: "Publications"
following: "Abonné à" following: "Abonné à"
@@ -841,8 +849,8 @@ desktop/views/pages/user/user.profile.vue:
mute: "Mettre en sourdine" mute: "Mettre en sourdine"
muted: "Muting" muted: "Muting"
unmute: "Enlever la sourdine" unmute: "Enlever la sourdine"
push-to-a-list: "リストに追加" push-to-a-list: "Ajouter à la liste"
list-pushed: "{user}を{list}に追加しました。" list-pushed: "Vous avez ajouté {user} à la liste {list}."
desktop/views/pages/user/user.header.vue: desktop/views/pages/user/user.header.vue:
posts: "Notes" posts: "Notes"
following: "Suit" following: "Suit"
@@ -969,7 +977,8 @@ mobile/views/components/timeline.vue:
empty: "Pas de notes" empty: "Pas de notes"
load-more: "Afficher plus" load-more: "Afficher plus"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "Bon retour parmi nous !"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "Fil d'actualité" timeline: "Fil d'actualité"
notifications: "Notifications" notifications: "Notifications"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "Tableau de bord" dashboard: "Tableau de bord"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "Ajouter"
customization-tips: "Conseils de personnalisation"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "Activité" activity: "Activité"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "Chercher" search: "Chercher"
empty: "Aucun message trouvé pour '{}' " empty: "Aucun message trouvé pour '{}' "
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "Choisissez un fichier" select-file: "Choisissez un fichier"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "Nom" name: "Nom"
type: "Type" type: "Type"
description: "Description" description: "Description"
dev/views/index.vue:
manage-apps: "Gestion des applications"

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。" warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。"
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@@ -27,7 +28,6 @@ common:
notified-by: "{}さんから" notified-by: "{}さんから"
reply-from: "{}さんから返信:" reply-from: "{}さんから返信:"
quoted-by: "{}さんが引用:" quoted-by: "{}さんが引用:"
name: "Misskey"
time: time:
unknown: "なぞのじかん" unknown: "なぞのじかん"
future: "未来" future: "未来"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{}週間前" weeks_ago: "{}週間前"
months_ago: "{}ヶ月前" months_ago: "{}ヶ月前"
years_ago: "{}年前" years_ago: "{}年前"
month-and-day: "{month}月 {day}日"
trash: "ゴミ箱" trash: "ゴミ箱"
weekday-short: weekday-short:
sunday: "日" sunday: "日"
@@ -65,6 +66,7 @@ common:
congrats: "おめでとう" congrats: "おめでとう"
angry: "おこ" angry: "おこ"
confused: "こまこまのこまり" confused: "こまこまのこまり"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "これより過去の履歴はありません" no-history: "これより過去の履歴はありません"
resize-form: "ドラッグしてフォームの広さを調整" resize-form: "ドラッグしてフォームの広さを調整"
new-message: "新しいメッセージがあります" new-message: "新しいメッセージがあります"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "ここにメッセージを入力" input-message-here: "ここにメッセージを入力"
send: "送信" send: "送信"
attach-from-local: "PCからファイルを添付する" attach-from-local: "PCからファイルを添付する"
attach-from-drive: "ドライブからファイルを添付する" attach-from-drive: "ドライブからファイルを添付する"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "既読" is-read: "既読"
deleted: "このメッセージは削除されました" deleted: "このメッセージは削除されました"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "読み込みに失敗しました。" error: "読み込みに失敗しました。"
retry: "リトライ" retry: "リトライ"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
error: "エラー" error: "エラー"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "新規投稿" note: "新規投稿"
reply: "返信" reply: "返信"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "リスト" list: "リスト"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "プロフィール" profile: "プロフィール"
drive: "ドライブ" drive: "ドライブ"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -70,6 +70,7 @@ common:
congrats: "おめでとう" congrats: "おめでとう"
angry: "おこ" angry: "おこ"
confused: "こまこまのこまり" confused: "こまこまのこまり"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskey는 광고를 게재하지 않습니다</strong> 그러나 광고를 차단하는 기능 기능을 사용할 경우 일부 기능을 사용할 수 없게 될 가능성이나 결함이 발생하는 경우가 있습니다." warning: "<strong>Misskey는 광고를 게재하지 않습니다</strong> 그러나 광고를 차단하는 기능 기능을 사용할 경우 일부 기능을 사용할 수 없게 될 가능성이나 결함이 발생하는 경우가 있습니다."
application-authorization: "앱의 연계" application-authorization: "앱의 연계"
close: "닫기" close: "닫기"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "사용자 정의 팁" title: "사용자 정의 팁"
@@ -27,7 +28,6 @@ common:
notified-by: "{}님" notified-by: "{}님"
reply-from: "{}님으로부터 답글:" reply-from: "{}님으로부터 답글:"
quoted-by: "{}씨가 인용:" quoted-by: "{}씨가 인용:"
name: "Misskey"
time: time:
unknown: "수수께끼의 시간" unknown: "수수께끼의 시간"
future: "미래" future: "미래"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{}주전" weeks_ago: "{}주전"
months_ago: "{}개월전" months_ago: "{}개월전"
years_ago: "{}년전" years_ago: "{}년전"
month-and-day: "{month}月 {day}日"
trash: "휴지통" trash: "휴지통"
weekday-short: weekday-short:
sunday: "일" sunday: "일"
@@ -65,6 +66,7 @@ common:
congrats: "받으세요" congrats: "받으세요"
angry: "화냈어" angry: "화냈어"
confused: "곤란하고 있어" confused: "곤란하고 있어"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "지금 어떻게하고있어?" a: "지금 어떻게하고있어?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "これより過去の履歴はありません" no-history: "これより過去の履歴はありません"
resize-form: "ドラッグしてフォームの広さを調整" resize-form: "ドラッグしてフォームの広さを調整"
new-message: "新しいメッセージがあります" new-message: "新しいメッセージがあります"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "ここにメッセージを入力" input-message-here: "ここにメッセージを入力"
send: "送信" send: "送信"
attach-from-local: "PCからファイルを添付する" attach-from-local: "PCからファイルを添付する"
attach-from-drive: "ドライブからファイルを添付する" attach-from-drive: "ドライブからファイルを添付する"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "既読" is-read: "既読"
deleted: "このメッセージは削除されました" deleted: "このメッセージは削除されました"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "読み込みに失敗しました。" error: "読み込みに失敗しました。"
retry: "リトライ" retry: "リトライ"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
error: "エラー" error: "エラー"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "新規投稿" note: "新規投稿"
reply: "返信" reply: "返信"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "リスト" list: "リスト"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "プロフィール" profile: "プロフィール"
drive: "ドライブ" drive: "ドライブ"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -11,7 +11,8 @@ common:
warning: "<strong>Misskey nie zawiera reklam</strong>, ale część funkcji może nie działać prawidłowo z włączonym blokowaniem reklam." warning: "<strong>Misskey nie zawiera reklam</strong>, ale część funkcji może nie działać prawidłowo z włączonym blokowaniem reklam."
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "Zamknij" close: "Zamknij"
got-it: "わかった" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "Rozumiem!"
customization-tips: customization-tips:
title: "Wskazówki o dostosowywaniu" title: "Wskazówki o dostosowywaniu"
paragraph1: "Dostosowywanie strony głównej pozwala na dodawanie, usuwanie, przeciąganie i zmienianie kolejności widżetów." paragraph1: "Dostosowywanie strony głównej pozwala na dodawanie, usuwanie, przeciąganie i zmienianie kolejności widżetów."
@@ -27,7 +28,6 @@ common:
notified-by: "Powiadomiono przez {}:" notified-by: "Powiadomiono przez {}:"
reply-from: "Odpowiedź od {}:" reply-from: "Odpowiedź od {}:"
quoted-by: "Zacytowano przez {}:" quoted-by: "Zacytowano przez {}:"
name: "Misskey"
time: time:
unknown: "nieznany" unknown: "nieznany"
future: "w przyszłości" future: "w przyszłości"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{} tyg. temu" weeks_ago: "{} tyg. temu"
months_ago: "{} mies. temu" months_ago: "{} mies. temu"
years_ago: "{} lat temu" years_ago: "{} lat temu"
month-and-day: "{month}月 {day}日"
trash: "Kosz" trash: "Kosz"
weekday-short: weekday-short:
sunday: "N" sunday: "N"
@@ -65,6 +66,7 @@ common:
congrats: "Gratuluję!" congrats: "Gratuluję!"
angry: "Wściekły" angry: "Wściekły"
confused: "Zmieszany" confused: "Zmieszany"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "Co robisz?" a: "Co robisz?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "Brak dalszej historii" no-history: "Brak dalszej historii"
resize-form: "Przeciągnij aby zmienić rozmiar" resize-form: "Przeciągnij aby zmienić rozmiar"
new-message: "Nowa wiadomość" new-message: "Nowa wiadomość"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "Wprowadź wiadomość tutaj" input-message-here: "Wprowadź wiadomość tutaj"
send: "Wyślij" send: "Wyślij"
attach-from-local: "Załącz pliki z komputera" attach-from-local: "Załącz pliki z komputera"
attach-from-drive: "Załącz pliki z dysku" attach-from-drive: "Załącz pliki z dysku"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "Przeczytano" is-read: "Przeczytano"
deleted: "Wiadomość została usunięta" deleted: "Wiadomość została usunięta"
@@ -279,7 +283,7 @@ common/views/components/signin.vue:
signing-in: "Logowanie…" signing-in: "Logowanie…"
signin: "Zaloguj" signin: "Zaloguj"
or: "または" or: "または"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Zaloguj się za pomocą Twittera"
common/views/components/signup.vue: common/views/components/signup.vue:
username: "Nazwa użytkownika" username: "Nazwa użytkownika"
checking: "Sprawdzanie…" checking: "Sprawdzanie…"
@@ -369,7 +373,7 @@ common/views/widgets/tips.vue:
tips-line4: "投稿フォームにクリップボードにある画像データをペーストできます" tips-line4: "投稿フォームにクリップボードにある画像データをペーストできます"
tips-line5: "Możesz wysłać pliki przeciągając i upuszczając je w Dysku." tips-line5: "Możesz wysłać pliki przeciągając i upuszczając je w Dysku."
tips-line6: "Możesz przenieść katalog przeciągając go w Dysku." tips-line6: "Możesz przenieść katalog przeciągając go w Dysku."
tips-line7: "ドライブでフォルダをドラッグしてフォルダ移動できます" tips-line7: "Możesz przenieść katalog przeciągając go w Dysku."
tips-line8: "Strona główna może zostać dostosowana w ustawieniach." tips-line8: "Strona główna może zostać dostosowana w ustawieniach."
tips-line9: "Misskey jest dostępny na licencji AGPLv3." tips-line9: "Misskey jest dostępny na licencji AGPLv3."
tips-line10: "タイムマシンウィジェットを利用すると、簡単に過去のタイムラインに遡れます" tips-line10: "タイムマシンウィジェットを利用すると、簡単に過去のタイムラインに遡れます"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "Pokaż szczegóły" detail: "Pokaż szczegóły"
private: "ten wpis jest prywatny" private: "ten wpis jest prywatny"
deleted: "ten wpis został usunięty" deleted: "ten wpis został usunięty"
hide: "Zwiń"
see-more: "Więcej"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "Ładowanie nie powiodło się." error: "Ładowanie nie powiodło się."
retry: "Spróbuj ponownie" retry: "Spróbuj ponownie"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "Twoje urządzenie nie obsługuje geolokalizacji." geolocation-alert: "Twoje urządzenie nie obsługuje geolokalizacji."
error: "Bład" error: "Bład"
enter-username: "Wprowadź nazwę użytkownika…" enter-username: "Wprowadź nazwę użytkownika…"
annotations: "Treść ostrzeżenia (opcjonalnie)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "Nowy wpis" note: "Nowy wpis"
reply: "Odpowiedz" reply: "Odpowiedz"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "Listy" list: "Listy"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "Witaj ponownie," welcome-back: "Witaj ponownie,"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "Twój profil" profile: "Twój profil"
drive: "Dysk" drive: "Dysk"
@@ -758,7 +766,7 @@ desktop/views/components/received-follow-requests-window.vue:
desktop/views/components/user-lists-window.vue: desktop/views/components/user-lists-window.vue:
title: "Listy" title: "Listy"
create-list: "Utwórz listę" create-list: "Utwórz listę"
list-name: "リスト名" list-name: "Nazwa listy"
desktop/views/components/user-preview.vue: desktop/views/components/user-preview.vue:
notes: "Wpisy" notes: "Wpisy"
following: "Śledzeni" following: "Śledzeni"
@@ -841,8 +849,8 @@ desktop/views/pages/user/user.profile.vue:
mute: "Wycisz" mute: "Wycisz"
muted: "Wyciszyłeś" muted: "Wyciszyłeś"
unmute: "Cofnij wyciszenie" unmute: "Cofnij wyciszenie"
push-to-a-list: "リストに追加" push-to-a-list: "Dodaj do listy"
list-pushed: "{user}{list}に追加しました。" list-pushed: "Dodałeś(-aś) {user} do {list}."
desktop/views/pages/user/user.header.vue: desktop/views/pages/user/user.header.vue:
posts: "Wpisy" posts: "Wpisy"
following: "Śledzeni" following: "Śledzeni"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "Więcej" load-more: "Więcej"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "Witaj ponownie, " welcome-back: "Witaj ponownie, "
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "Oś czasu" timeline: "Oś czasu"
notifications: "Powiadomienia" notifications: "Powiadomienia"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "Kokpit" dashboard: "Kokpit"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "Dodaj"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "Aktywność" activity: "Aktywność"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "Szukaj" search: "Szukaj"
empty: "Nie znaleziono wpisów zawierających '{}'" empty: "Nie znaleziono wpisów zawierających '{}'"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "Wybierz plik" select-file: "Wybierz plik"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "Nazwa" name: "Nazwa"
type: "Rodzaj" type: "Rodzaj"
description: "Opis" description: "Opis"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。" warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。"
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@@ -27,7 +28,6 @@ common:
notified-by: "{}さんから" notified-by: "{}さんから"
reply-from: "{}さんから返信:" reply-from: "{}さんから返信:"
quoted-by: "{}さんが引用:" quoted-by: "{}さんが引用:"
name: "Misskey"
time: time:
unknown: "なぞのじかん" unknown: "なぞのじかん"
future: "未来" future: "未来"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{}週間前" weeks_ago: "{}週間前"
months_ago: "{}ヶ月前" months_ago: "{}ヶ月前"
years_ago: "{}年前" years_ago: "{}年前"
month-and-day: "{month}月 {day}日"
trash: "ゴミ箱" trash: "ゴミ箱"
weekday-short: weekday-short:
sunday: "日" sunday: "日"
@@ -65,6 +66,7 @@ common:
congrats: "おめでとう" congrats: "おめでとう"
angry: "おこ" angry: "おこ"
confused: "こまこまのこまり" confused: "こまこまのこまり"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "これより過去の履歴はありません" no-history: "これより過去の履歴はありません"
resize-form: "ドラッグしてフォームの広さを調整" resize-form: "ドラッグしてフォームの広さを調整"
new-message: "新しいメッセージがあります" new-message: "新しいメッセージがあります"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "ここにメッセージを入力" input-message-here: "ここにメッセージを入力"
send: "送信" send: "送信"
attach-from-local: "PCからファイルを添付する" attach-from-local: "PCからファイルを添付する"
attach-from-drive: "ドライブからファイルを添付する" attach-from-drive: "ドライブからファイルを添付する"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "既読" is-read: "既読"
deleted: "このメッセージは削除されました" deleted: "このメッセージは削除されました"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "読み込みに失敗しました。" error: "読み込みに失敗しました。"
retry: "リトライ" retry: "リトライ"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
error: "エラー" error: "エラー"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "新規投稿" note: "新規投稿"
reply: "返信" reply: "返信"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "リスト" list: "リスト"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "プロフィール" profile: "プロフィール"
drive: "ドライブ" drive: "ドライブ"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。" warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。"
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@@ -27,7 +28,6 @@ common:
notified-by: "{}さんから" notified-by: "{}さんから"
reply-from: "{}さんから返信:" reply-from: "{}さんから返信:"
quoted-by: "{}さんが引用:" quoted-by: "{}さんが引用:"
name: "Misskey"
time: time:
unknown: "なぞのじかん" unknown: "なぞのじかん"
future: "未来" future: "未来"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{}週間前" weeks_ago: "{}週間前"
months_ago: "{}ヶ月前" months_ago: "{}ヶ月前"
years_ago: "{}年前" years_ago: "{}年前"
month-and-day: "{month}月 {day}日"
trash: "ゴミ箱" trash: "ゴミ箱"
weekday-short: weekday-short:
sunday: "日" sunday: "日"
@@ -65,6 +66,7 @@ common:
congrats: "おめでとう" congrats: "おめでとう"
angry: "おこ" angry: "おこ"
confused: "こまこまのこまり" confused: "こまこまのこまり"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "これより過去の履歴はありません" no-history: "これより過去の履歴はありません"
resize-form: "ドラッグしてフォームの広さを調整" resize-form: "ドラッグしてフォームの広さを調整"
new-message: "新しいメッセージがあります" new-message: "新しいメッセージがあります"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "ここにメッセージを入力" input-message-here: "ここにメッセージを入力"
send: "送信" send: "送信"
attach-from-local: "PCからファイルを添付する" attach-from-local: "PCからファイルを添付する"
attach-from-drive: "ドライブからファイルを添付する" attach-from-drive: "ドライブからファイルを添付する"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "既読" is-read: "既読"
deleted: "このメッセージは削除されました" deleted: "このメッセージは削除されました"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "読み込みに失敗しました。" error: "読み込みに失敗しました。"
retry: "リトライ" retry: "リトライ"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
error: "エラー" error: "エラー"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "新規投稿" note: "新規投稿"
reply: "返信" reply: "返信"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "リスト" list: "リスト"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "プロフィール" profile: "プロフィール"
drive: "ドライブ" drive: "ドライブ"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -11,6 +11,7 @@ common:
warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。" warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。"
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@@ -27,7 +28,6 @@ common:
notified-by: "{}さんから" notified-by: "{}さんから"
reply-from: "{}さんから返信:" reply-from: "{}さんから返信:"
quoted-by: "{}さんが引用:" quoted-by: "{}さんが引用:"
name: "Misskey"
time: time:
unknown: "なぞのじかん" unknown: "なぞのじかん"
future: "未来" future: "未来"
@@ -39,6 +39,7 @@ common:
weeks_ago: "{}週間前" weeks_ago: "{}週間前"
months_ago: "{}ヶ月前" months_ago: "{}ヶ月前"
years_ago: "{}年前" years_ago: "{}年前"
month-and-day: "{month}月 {day}日"
trash: "ゴミ箱" trash: "ゴミ箱"
weekday-short: weekday-short:
sunday: "日" sunday: "日"
@@ -65,6 +66,7 @@ common:
congrats: "おめでとう" congrats: "おめでとう"
angry: "おこ" angry: "おこ"
confused: "こまこまのこまり" confused: "こまこまのこまり"
rip: "RIP"
pudding: "Pudding" pudding: "Pudding"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
@@ -234,11 +236,13 @@ common/views/components/messaging-room.vue:
no-history: "これより過去の履歴はありません" no-history: "これより過去の履歴はありません"
resize-form: "ドラッグしてフォームの広さを調整" resize-form: "ドラッグしてフォームの広さを調整"
new-message: "新しいメッセージがあります" new-message: "新しいメッセージがあります"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.form.vue: common/views/components/messaging-room.form.vue:
input-message-here: "ここにメッセージを入力" input-message-here: "ここにメッセージを入力"
send: "送信" send: "送信"
attach-from-local: "PCからファイルを添付する" attach-from-local: "PCからファイルを添付する"
attach-from-drive: "ドライブからファイルを添付する" attach-from-drive: "ドライブからファイルを添付する"
only-one-file-attached: "メッセージに添付できるのはひとつのファイルのみです"
common/views/components/messaging-room.message.vue: common/views/components/messaging-room.message.vue:
is-read: "既読" is-read: "既読"
deleted: "このメッセージは削除されました" deleted: "このメッセージは削除されました"
@@ -534,6 +538,8 @@ desktop/views/components/notes.note.vue:
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
hide: "隠す"
see-more: "もっと見る"
desktop/views/components/notes.vue: desktop/views/components/notes.vue:
error: "読み込みに失敗しました。" error: "読み込みに失敗しました。"
retry: "リトライ" retry: "リトライ"
@@ -569,6 +575,7 @@ desktop/views/components/post-form.vue:
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
error: "エラー" error: "エラー"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
annotations: "内容への注釈 (オプション)"
desktop/views/components/post-form-window.vue: desktop/views/components/post-form-window.vue:
note: "新規投稿" note: "新規投稿"
reply: "返信" reply: "返信"
@@ -730,6 +737,7 @@ desktop/views/components/timeline.vue:
list: "リスト" list: "リスト"
desktop/views/components/ui.header.vue: desktop/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
desktop/views/components/ui.header.account.vue: desktop/views/components/ui.header.account.vue:
profile: "プロフィール" profile: "プロフィール"
drive: "ドライブ" drive: "ドライブ"
@@ -970,6 +978,7 @@ mobile/views/components/timeline.vue:
load-more: "もっと" load-more: "もっと"
mobile/views/components/ui.header.vue: mobile/views/components/ui.header.vue:
welcome-back: "おかえりなさい、" welcome-back: "おかえりなさい、"
adjective: "さん"
mobile/views/components/ui.nav.vue: mobile/views/components/ui.nav.vue:
timeline: "タイムライン" timeline: "タイムライン"
notifications: "通知" notifications: "通知"
@@ -1018,6 +1027,8 @@ mobile/views/pages/welcome.vue:
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。" widgets-hints: "ウィジェットを追加/削除したり並べ替えたりできます。ウィジェットを移動するには「三」をドラッグします。ウィジェットを削除するには「x」をタップします。いくつかのウィジェットはタップすることで表示を変更できます。"
add-widget: "追加"
customization-tips: "カスタマイズのヒント"
mobile/views/pages/widgets/activity.vue: mobile/views/pages/widgets/activity.vue:
activity: "アクティビティ" activity: "アクティビティ"
mobile/views/pages/share.vue: mobile/views/pages/share.vue:
@@ -1056,6 +1067,7 @@ mobile/views/pages/settings/settings.profile.vue:
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "検索" search: "検索"
empty: "「{}」に関する投稿は見つかりませんでした。" empty: "「{}」に関する投稿は見つかりませんでした。"
not-found: "「{}」に関する投稿は見つかりませんでした。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
@@ -1150,3 +1162,5 @@ docs:
name: "名前" name: "名前"
type: "型" type: "型"
description: "説明" description: "説明"
dev/views/index.vue:
manage-apps: "アプリの管理"

View File

@@ -1,8 +1,8 @@
{ {
"name": "misskey", "name": "misskey",
"author": "syuilo <i@syuilo.com>", "author": "syuilo <i@syuilo.com>",
"version": "5.19.0", "version": "5.22.1",
"clientVersion": "1.0.8052", "clientVersion": "1.0.8127",
"codename": "nighthike", "codename": "nighthike",
"main": "./built/index.js", "main": "./built/index.js",
"private": true, "private": true,
@@ -59,7 +59,7 @@
"@types/mocha": "5.2.3", "@types/mocha": "5.2.3",
"@types/mongodb": "3.1.3", "@types/mongodb": "3.1.3",
"@types/ms": "0.7.30", "@types/ms": "0.7.30",
"@types/node": "10.5.7", "@types/node": "10.5.8",
"@types/portscanner": "2.1.0", "@types/portscanner": "2.1.0",
"@types/pug": "2.0.4", "@types/pug": "2.0.4",
"@types/qrcode": "1.2.0", "@types/qrcode": "1.2.0",
@@ -98,7 +98,7 @@
"diskusage": "0.2.4", "diskusage": "0.2.4",
"dompurify": "1.0.5", "dompurify": "1.0.5",
"elasticsearch": "15.1.1", "elasticsearch": "15.1.1",
"element-ui": "2.4.5", "element-ui": "2.4.6",
"emojilib": "2.3.0", "emojilib": "2.3.0",
"escape-regexp": "0.0.1", "escape-regexp": "0.0.1",
"eslint": "5.0.1", "eslint": "5.0.1",
@@ -106,7 +106,7 @@
"eventemitter3": "3.1.0", "eventemitter3": "3.1.0",
"exif-js": "2.3.0", "exif-js": "2.3.0",
"file-loader": "1.1.11", "file-loader": "1.1.11",
"file-type": "8.1.0", "file-type": "9.0.0",
"fuckadblock": "3.2.1", "fuckadblock": "3.2.1",
"gulp": "3.9.1", "gulp": "3.9.1",
"gulp-cssnano": "2.1.3", "gulp-cssnano": "2.1.3",
@@ -154,7 +154,7 @@
"monk": "6.0.6", "monk": "6.0.6",
"ms": "2.1.1", "ms": "2.1.1",
"nan": "2.10.0", "nan": "2.10.0",
"node-sass": "4.9.2", "node-sass": "4.9.3",
"node-sass-json-importer": "3.3.1", "node-sass-json-importer": "3.3.1",
"nprogress": "0.2.0", "nprogress": "0.2.0",
"object-assign-deep": "0.4.0", "object-assign-deep": "0.4.0",
@@ -171,7 +171,7 @@
"recaptcha-promise": "0.1.3", "recaptcha-promise": "0.1.3",
"reconnecting-websocket": "3.2.2", "reconnecting-websocket": "3.2.2",
"redis": "2.8.0", "redis": "2.8.0",
"request": "2.87.0", "request": "2.88.0",
"request-promise-native": "1.0.5", "request-promise-native": "1.0.5",
"rimraf": "2.6.2", "rimraf": "2.6.2",
"rndstr": "1.0.0", "rndstr": "1.0.0",
@@ -187,7 +187,7 @@
"style-loader": "0.22.1", "style-loader": "0.22.1",
"stylus": "0.54.5", "stylus": "0.54.5",
"stylus-loader": "3.0.2", "stylus-loader": "3.0.2",
"summaly": "2.0.6", "summaly": "2.1.2",
"systeminformation": "3.42.9", "systeminformation": "3.42.9",
"syuilo-password-strength": "0.0.1", "syuilo-password-strength": "0.0.1",
"textarea-caret": "3.1.0", "textarea-caret": "3.1.0",

View File

@@ -1,6 +1,8 @@
<template> <template>
<router-link class="mk-avatar" :to="user | userPage" :title="user | acct" :target="target" :style="style" v-if="disablePreview"></router-link> <span class="mk-avatar" :title="user | acct" :style="style" v-if="disableLink && !disablePreview" v-user-preview="user.id" @click="onClick"></span>
<router-link class="mk-avatar" :to="user | userPage" :title="user | acct" :target="target" :style="style" v-else v-user-preview="user.id"></router-link> <span class="mk-avatar" :title="user | acct" :style="style" v-else-if="disableLink && disablePreview" @click="onClick"></span>
<router-link class="mk-avatar" :to="user | userPage" :title="user | acct" :target="target" :style="style" v-else-if="!disableLink && !disablePreview" v-user-preview="user.id"></router-link>
<router-link class="mk-avatar" :to="user | userPage" :title="user | acct" :target="target" :style="style" v-else-if="!disableLink && disablePreview"></router-link>
</template> </template>
<script lang="ts"> <script lang="ts">
@@ -15,6 +17,10 @@ export default Vue.extend({
required: false, required: false,
default: null default: null
}, },
disableLink: {
required: false,
default: false
},
disablePreview: { disablePreview: {
required: false, required: false,
default: false default: false
@@ -35,6 +41,11 @@ export default Vue.extend({
borderRadius: this.$store.state.settings.circleIcons ? '100%' : null borderRadius: this.$store.state.settings.circleIcons ? '100%' : null
}; };
} }
},
methods: {
onClick(e) {
this.$emit('click', e);
}
} }
}); });
</script> </script>

View File

@@ -8,6 +8,7 @@
<img v-if="reaction == 'congrats'" src="/assets/reactions/congrats.png" alt="%i18n:common.reactions.congrats%"> <img v-if="reaction == 'congrats'" src="/assets/reactions/congrats.png" alt="%i18n:common.reactions.congrats%">
<img v-if="reaction == 'angry'" src="/assets/reactions/angry.png" alt="%i18n:common.reactions.angry%"> <img v-if="reaction == 'angry'" src="/assets/reactions/angry.png" alt="%i18n:common.reactions.angry%">
<img v-if="reaction == 'confused'" src="/assets/reactions/confused.png" alt="%i18n:common.reactions.confused%"> <img v-if="reaction == 'confused'" src="/assets/reactions/confused.png" alt="%i18n:common.reactions.confused%">
<img v-if="reaction == 'rip'" src="/assets/reactions/rip.png" alt="%i18n:common.reactions.rip%">
<template v-if="reaction == 'pudding'"> <template v-if="reaction == 'pudding'">
<img v-if="$store.getters.isSignedIn && $store.state.settings.iLikeSushi" src="/assets/reactions/sushi.png" alt="%i18n:common.reactions.pudding%"> <img v-if="$store.getters.isSignedIn && $store.state.settings.iLikeSushi" src="/assets/reactions/sushi.png" alt="%i18n:common.reactions.pudding%">
<img v-else src="/assets/reactions/pudding.png" alt="%i18n:common.reactions.pudding%"> <img v-else src="/assets/reactions/pudding.png" alt="%i18n:common.reactions.pudding%">

View File

@@ -10,9 +10,10 @@
<button @click="react('hmm')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="4" title="%i18n:common.reactions.hmm%"><mk-reaction-icon reaction='hmm'/></button> <button @click="react('hmm')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="4" title="%i18n:common.reactions.hmm%"><mk-reaction-icon reaction='hmm'/></button>
<button @click="react('surprise')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="5" title="%i18n:common.reactions.surprise%"><mk-reaction-icon reaction='surprise'/></button> <button @click="react('surprise')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="5" title="%i18n:common.reactions.surprise%"><mk-reaction-icon reaction='surprise'/></button>
<button @click="react('congrats')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="6" title="%i18n:common.reactions.congrats%"><mk-reaction-icon reaction='congrats'/></button> <button @click="react('congrats')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="6" title="%i18n:common.reactions.congrats%"><mk-reaction-icon reaction='congrats'/></button>
<button @click="react('angry')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="4" title="%i18n:common.reactions.angry%"><mk-reaction-icon reaction='angry'/></button> <button @click="react('angry')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="7" title="%i18n:common.reactions.angry%"><mk-reaction-icon reaction='angry'/></button>
<button @click="react('confused')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="5" title="%i18n:common.reactions.confused%"><mk-reaction-icon reaction='confused'/></button> <button @click="react('confused')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="8" title="%i18n:common.reactions.confused%"><mk-reaction-icon reaction='confused'/></button>
<button @click="react('pudding')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="6" title="%i18n:common.reactions.pudding%"><mk-reaction-icon reaction='pudding'/></button> <button @click="react('rip')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="9" title="%i18n:common.reactions.rip%"><mk-reaction-icon reaction='rip'/></button>
<button @click="react('pudding')" @mouseover="onMouseover" @mouseout="onMouseout" tabindex="10" title="%i18n:common.reactions.pudding%"><mk-reaction-icon reaction='pudding'/></button>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -9,6 +9,7 @@
<span v-if="reactions.congrats"><mk-reaction-icon reaction="congrats"/><span>{{ reactions.congrats }}</span></span> <span v-if="reactions.congrats"><mk-reaction-icon reaction="congrats"/><span>{{ reactions.congrats }}</span></span>
<span v-if="reactions.angry"><mk-reaction-icon reaction="angry"/><span>{{ reactions.angry }}</span></span> <span v-if="reactions.angry"><mk-reaction-icon reaction="angry"/><span>{{ reactions.angry }}</span></span>
<span v-if="reactions.confused"><mk-reaction-icon reaction="confused"/><span>{{ reactions.confused }}</span></span> <span v-if="reactions.confused"><mk-reaction-icon reaction="confused"/><span>{{ reactions.confused }}</span></span>
<span v-if="reactions.rip"><mk-reaction-icon reaction="rip"/><span>{{ reactions.rip }}</span></span>
<span v-if="reactions.pudding"><mk-reaction-icon reaction="pudding"/><span>{{ reactions.pudding }}</span></span> <span v-if="reactions.pudding"><mk-reaction-icon reaction="pudding"/><span>{{ reactions.pudding }}</span></span>
</template> </template>
</div> </div>

View File

@@ -12,13 +12,13 @@
</ui-input> </ui-input>
<ui-input v-if="user && user.twoFactorEnabled" v-model="token" type="number" required/> <ui-input v-if="user && user.twoFactorEnabled" v-model="token" type="number" required/>
<ui-button type="submit" :disabled="signing">{{ signing ? '%i18n:@signing-in%' : '%i18n:@signin%' }}</ui-button> <ui-button type="submit" :disabled="signing">{{ signing ? '%i18n:@signing-in%' : '%i18n:@signin%' }}</ui-button>
<p style="margin: 8px 0;">%i18n:@or%<a :href="`${apiUrl}/signin/twitter`">%i18n:@signin-with-twitter%</a></p> <p style="margin: 8px 0;" v-if="twitterIntegration">%i18n:@or%<a :href="`${apiUrl}/signin/twitter`">%i18n:@signin-with-twitter%</a></p>
</form> </form>
</template> </template>
<script lang="ts"> <script lang="ts">
import Vue from 'vue'; import Vue from 'vue';
import { apiUrl, host } from '../../../config'; import { apiUrl, host, twitterIntegration } from '../../../config';
export default Vue.extend({ export default Vue.extend({
props: { props: {
@@ -36,7 +36,8 @@ export default Vue.extend({
password: '', password: '',
token: '', token: '',
apiUrl, apiUrl,
host host,
twitterIntegration
}; };
}, },
methods: { methods: {

View File

@@ -5,6 +5,9 @@
<iframe v-else-if="spotifyId" <iframe v-else-if="spotifyId"
:src="`https://open.spotify.com/embed/track/${spotifyId}`" :src="`https://open.spotify.com/embed/track/${spotifyId}`"
frameborder="0" allowtransparency="true" allow="encrypted-media" /> frameborder="0" allowtransparency="true" allow="encrypted-media" />
<iframe v-else-if="nicovideoId"
:src="`https://embed.nicovideo.jp/watch/${nicovideoId}?oldScript=1&referer=${misskeyUrl}&from=${position || '0'}&allowProgrammaticFullScreen=1`"
frameborder="0" allow="autoplay; encrypted-media" allowfullscreen />
<div v-else-if="tweetUrl && detail" class="twitter"> <div v-else-if="tweetUrl && detail" class="twitter">
<blockquote ref="tweet" class="twitter-tweet" :data-theme="$store.state.device.darkmode ? 'dark' : null"> <blockquote ref="tweet" class="twitter-tweet" :data-theme="$store.state.device.darkmode ? 'dark' : null">
<a :href="url"></a> <a :href="url"></a>
@@ -52,6 +55,9 @@ export default Vue.extend({
icon: null, icon: null,
sitename: null, sitename: null,
youtubeId: null, youtubeId: null,
spotifyId: null,
nicovideoId: null,
position: null,
tweetUrl: null, tweetUrl: null,
misskeyUrl misskeyUrl
}; };
@@ -61,10 +67,20 @@ export default Vue.extend({
if (url.hostname == 'www.youtube.com') { if (url.hostname == 'www.youtube.com') {
this.youtubeId = url.searchParams.get('v'); this.youtubeId = url.searchParams.get('v');
return;
} else if (url.hostname == 'youtu.be') { } else if (url.hostname == 'youtu.be') {
this.youtubeId = url.pathname; this.youtubeId = url.pathname;
return;
} else if (url.hostname == 'open.spotify.com') { } else if (url.hostname == 'open.spotify.com') {
this.spotifyId = url.pathname.split('/').reverse().filter(x => x !== '')[0]; this.spotifyId = url.pathname.split('/').reverse().filter(x => x !== '')[0];
return;
} else if (['nicovideo.jp', 'www.nicovideo.jp', 'nico.ms'].includes(url.hostname)) {
const id = url.pathname.split('/').reverse().filter(x => x !== '')[0];
if (['sm', 'nm', 'ax', 'ca', 'cd', 'cw', 'fx', 'ig', 'na', 'om', 'sd', 'sk', 'yk', 'yo', 'za', 'zb', 'zc', 'zd', 'ze', 'nl', 'so', ...Array(10).keys()].some(x => id.startsWith(x)) {
this.nicovideoId = id;
this.position = url.searchParams.get('from');
return;
}
} else if (this.detail && url.hostname == 'twitter.com' && /^\/.+\/status(es)?\/\d+/.test(url.pathname)) { } else if (this.detail && url.hostname == 'twitter.com' && /^\/.+\/status(es)?\/\d+/.test(url.pathname)) {
this.tweetUrl = url; this.tweetUrl = url;
const twttr = (window as any).twttr || {}; const twttr = (window as any).twttr || {};
@@ -84,9 +100,11 @@ export default Vue.extend({
twttr.ready = loadTweet; twttr.ready = loadTweet;
(window as any).twttr = twttr; (window as any).twttr = twttr;
} }
} else { return;
}
fetch('/url?url=' + encodeURIComponent(this.url)).then(res => { fetch('/url?url=' + encodeURIComponent(this.url)).then(res => {
res.json().then(info => { res.json().then(info => {
if (info.url != null) {
this.title = info.title; this.title = info.title;
this.description = info.description; this.description = info.description;
this.thumbnail = info.thumbnail; this.thumbnail = info.thumbnail;
@@ -94,9 +112,9 @@ export default Vue.extend({
this.sitename = info.sitename; this.sitename = info.sitename;
this.fetching = false; this.fetching = false;
});
});
} }
});
});
} }
}); });
</script> </script>

View File

@@ -22,6 +22,7 @@ declare const _CODENAME_: string;
declare const _LICENSE_: string; declare const _LICENSE_: string;
declare const _GOOGLE_MAPS_API_KEY_: string; declare const _GOOGLE_MAPS_API_KEY_: string;
declare const _WELCOME_BG_URL_: string; declare const _WELCOME_BG_URL_: string;
declare const _TWITTER_INTEGRATION_: boolean;
export const host = _HOST_; export const host = _HOST_;
export const hostname = _HOSTNAME_; export const hostname = _HOSTNAME_;
@@ -47,3 +48,4 @@ export const codename = _CODENAME_;
export const license = _LICENSE_; export const license = _LICENSE_;
export const googleMapsApiKey = _GOOGLE_MAPS_API_KEY_; export const googleMapsApiKey = _GOOGLE_MAPS_API_KEY_;
export const welcomeBgUrl = _WELCOME_BG_URL_; export const welcomeBgUrl = _WELCOME_BG_URL_;
export const twitterIntegration = _TWITTER_INTEGRATION_;

View File

@@ -18,7 +18,7 @@
<div class="about"> <div class="about">
<h1 v-if="name != 'Misskey'">{{ name }}</h1> <h1 v-if="name != 'Misskey'">{{ name }}</h1>
<h1 v-else><img :src="$store.state.device.darkmode ? 'assets/title.dark.svg' : 'assets/title.light.svg'" :alt="name"></h1> <h1 v-else><img :src="$store.state.device.darkmode ? 'assets/title.dark.svg' : 'assets/title.light.svg'" :alt="name"></h1>
<p class="powerd-by" v-if="name != 'Misskey'">%i18n:@powered-by-misskey%</p> <p class="powerd-by" v-if="name != 'Misskey'" v-html="'%i18n:@powered-by-misskey%'"></p>
<p class="desc" v-html="description || '%i18n:common.about%'"></p> <p class="desc" v-html="description || '%i18n:common.about%'"></p>
<a ref="signup" @click="signup">📦 %i18n:@signup%</a> <a ref="signup" @click="signup">📦 %i18n:@signup%</a>
</div> </div>

View File

@@ -6,10 +6,11 @@
<div class="banner" <div class="banner"
:style="$store.state.i.bannerUrl ? `background-image: url(${$store.state.i.bannerUrl})` : ''" :style="$store.state.i.bannerUrl ? `background-image: url(${$store.state.i.bannerUrl})` : ''"
title="%i18n:@update-banner%" title="%i18n:@update-banner%"
@click="os.apis.updateBanner" @click="() => os.apis.updateBanner()"
></div> ></div>
<mk-avatar class="avatar" :user="$store.state.i" <mk-avatar class="avatar" :user="$store.state.i"
@click="os.apis.updateAvatar" :disable-link="true"
@click="() => os.apis.updateAvatar()"
title="%i18n:@update-avatar%" title="%i18n:@update-avatar%"
/> />
<router-link class="name" :to="$store.state.i | userPage">{{ $store.state.i | userName }}</router-link> <router-link class="name" :to="$store.state.i | userPage">{{ $store.state.i | userName }}</router-link>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

View File

@@ -3,9 +3,7 @@ import config from '../config';
const u = config.mongodb.user ? encodeURIComponent(config.mongodb.user) : null; const u = config.mongodb.user ? encodeURIComponent(config.mongodb.user) : null;
const p = config.mongodb.pass ? encodeURIComponent(config.mongodb.pass) : null; const p = config.mongodb.pass ? encodeURIComponent(config.mongodb.pass) : null;
const uri = u && p const uri = `mongodb://${u && p ? `${u}:${p}@` : ''}${config.mongodb.host}:${config.mongodb.port}/${config.mongodb.db}`;
? `mongodb://${u}:${p}@${config.mongodb.host}:${config.mongodb.port}/${config.mongodb.db}`
: `mongodb://${config.mongodb.host}:${config.mongodb.port}/${config.mongodb.db}`;
/** /**
* monk * monk

View File

@@ -0,0 +1,41 @@
name: "DriveFolder"
desc:
ja: "ドライブのフォルダを表します。"
en: "A folder of Drive."
props:
id:
type: "id"
optional: false
desc:
ja: "フォルダID"
en: "The ID of this folder"
createdAt:
type: "date"
optional: false
desc:
ja: "作成日時"
en: "The created date of this folder"
userId:
type: "id(User)"
optional: false
desc:
ja: "所有者ID"
en: "The ID of the owner of this folder"
parentId:
type: "entity(DriveFolder)"
optional: false
desc:
ja: "親フォルダのID (ルートなら null)"
en: "The ID of parent folder"
name:
type: "string"
optional: false
desc:
ja: "フォルダ名"
en: "The name of this folder"

View File

@@ -8,6 +8,7 @@ export default function(reaction: string): string {
case 'congrats': return '🎉'; case 'congrats': return '🎉';
case 'angry': return '💢'; case 'angry': return '💢';
case 'confused': return '😥'; case 'confused': return '😥';
case 'rip': return '😇';
case 'pudding': return '🍮'; case 'pudding': return '🍮';
default: return ''; default: return '';
} }

View File

@@ -10,7 +10,7 @@ import DriveFileThumbnail, { deleteDriveFileThumbnail } from './drive-file-thumb
const DriveFile = monkDb.get<IDriveFile>('driveFiles.files'); const DriveFile = monkDb.get<IDriveFile>('driveFiles.files');
DriveFile.createIndex('md5'); DriveFile.createIndex('md5');
DriveFile.createIndex('metadata.uri', { sparse: true, unique: true }); DriveFile.createIndex('metadata.uri');
export default DriveFile; export default DriveFile;
export const DriveFileChunk = monkDb.get('driveFiles.chunks'); export const DriveFileChunk = monkDb.get('driveFiles.chunks');

View File

@@ -26,6 +26,7 @@ export const validateReaction = $.str.or([
'congrats', 'congrats',
'angry', 'angry',
'confused', 'confused',
'rip',
'pudding' 'pudding'
]); ]);

View File

@@ -7,7 +7,7 @@ export default async (job: bq.Job, done: any): Promise<void> => {
await request(job.data.user, job.data.to, job.data.content); await request(job.data.user, job.data.to, job.data.content);
done(); done();
} catch (res) { } catch (res) {
if (!res.hasOwnProperty('statusCode')) { if (res == null || !res.hasOwnProperty('statusCode')) {
console.warn(`deliver failed (unknown): ${res}`); console.warn(`deliver failed (unknown): ${res}`);
return done(); return done();
} }

View File

@@ -40,6 +40,5 @@ export default (params: any, user: ILocalUser) => new Promise(async (res, rej) =
}); });
// Serialize // Serialize
res(await Promise.all(history.map(async h => res(await Promise.all(history.map(h => pack(h.messageId, user))));
await pack(h.messageId, user))));
}); });

View File

@@ -0,0 +1,43 @@
import $ from 'cafy'; import ID from '../../../../../misc/cafy-id';
import Message from '../../../../../models/messaging-message';
import { ILocalUser } from '../../../../../models/user';
import read from '../../../common/read-messaging-message';
import getParams from '../../../get-params';
export const meta = {
desc: {
ja: '指定した自分宛てのメッセージを既読にします。',
en: 'Mark as read a message of messaging.'
},
requireCredential: true,
kind: 'messaging-write',
params: {
messageId: $.type(ID).note({
desc: {
ja: '既読にするメッセージのID',
en: 'The ID of a message that you want to mark as read'
}
})
}
};
export default (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
const [ps, psErr] = getParams(meta, params);
if (psErr) throw psErr;
const message = await Message.findOne({
_id: ps.messageId,
recipientId: user._id
});
if (message == null) {
return rej('message not found');
}
read(user._id, message.userId, message);
res();
});

View File

@@ -8,7 +8,8 @@ import getParams from '../../get-params';
export const meta = { export const meta = {
desc: { desc: {
ja: 'タイムラインを取得します。' ja: 'タイムラインを取得します。',
en: 'Get timeline of myself.'
}, },
requireCredential: true, requireCredential: true,
@@ -67,9 +68,6 @@ export const meta = {
} }
}; };
/**
* Get timeline of myself
*/
export default async (params: any, user: ILocalUser) => { export default async (params: any, user: ILocalUser) => {
const [ps, psErr] = getParams(meta, params); const [ps, psErr] = getParams(meta, params);
if (psErr) throw psErr; if (psErr) throw psErr;

View File

@@ -14,7 +14,9 @@ module.exports = async (ctx: Koa.Context) => {
ctx.body = summary; ctx.body = summary;
} catch (e) { } catch (e) {
ctx.status = 500; ctx.status = 200;
ctx.set('Cache-Control', 'max-age=86400, immutable');
ctx.body = '{}';
} }
}; };

View File

@@ -294,16 +294,35 @@ export default async function(
metadata.uri = uri; metadata.uri = uri;
} }
const driveFile = isLink let driveFile: IDriveFile;
? await DriveFile.insert({
if (isLink) {
try {
driveFile = await DriveFile.insert({
length: 0, length: 0,
uploadDate: new Date(), uploadDate: new Date(),
md5: hash, md5: hash,
filename: detectedName, filename: detectedName,
metadata: metadata, metadata: metadata,
contentType: mime contentType: mime
}) });
: await (save(fs.createReadStream(path), detectedName, mime, hash, size, metadata)); } catch (e) {
// duplicate key error (when already registered)
if (e.code === 11000) {
log(`already registered ${metadata.uri}`);
driveFile = await DriveFile.findOne({
'metadata.uri': metadata.uri,
'metadata.userId': user._id
});
} else {
console.error(e);
throw e;
}
}
} else {
driveFile = await (save(fs.createReadStream(path), detectedName, mime, hash, size, metadata));
}
log(`drive file has been created ${driveFile._id}`); log(`drive file has been created ${driveFile._id}`);

View File

@@ -188,6 +188,7 @@ export default async (user: IUser, data: Option, silent = false) => new Promise<
// 通知 // 通知
if (isLocalUser(data.reply._user)) { if (isLocalUser(data.reply._user)) {
nm.push(data.reply.userId, 'reply'); nm.push(data.reply.userId, 'reply');
publishUserStream(data.reply.userId, 'reply', noteObj);
} }
} }
@@ -209,7 +210,7 @@ export default async (user: IUser, data: Option, silent = false) => new Promise<
} }
// Publish event // Publish event
if (!user._id.equals(data.renote.userId)) { if (!user._id.equals(data.renote.userId) && isLocalUser(data.renote._user)) {
publishUserStream(data.renote.userId, 'renote', noteObj); publishUserStream(data.renote.userId, 'renote', noteObj);
} }
} }

View File

@@ -95,7 +95,8 @@ const consts = {
_URL_: config.url, _URL_: config.url,
_LICENSE_: licenseHtml, _LICENSE_: licenseHtml,
_GOOGLE_MAPS_API_KEY_: config.google_maps_api_key, _GOOGLE_MAPS_API_KEY_: config.google_maps_api_key,
_WELCOME_BG_URL_: config.welcome_bg_url _WELCOME_BG_URL_: config.welcome_bg_url,
_TWITTER_INTEGRATION_: config.twitter != null
}; };
const _consts: { [ key: string ]: any } = {}; const _consts: { [ key: string ]: any } = {};