Compare commits

...

1543 Commits

Author SHA1 Message Date
af61a7a17f 10.74.0 2019-01-09 15:32:36 +09:00
667ad8fe96 Update CHANGELOG.md 2019-01-09 15:19:00 +09:00
e1cc2394fa Use cached and asynchronous DNS resolver for AP delivery (#3859) 2019-01-09 15:17:54 +09:00
04e1e48f17 Hide invisible notes from timeline (#3852) 2019-01-08 21:02:00 +09:00
c417e2f4a1 🎨 2019-01-08 18:00:05 +09:00
02a27a8b12 ドライブの管理画面でファイルのオリジナルURLを表示するように 2019-01-08 17:45:16 +09:00
d775e19059 Update CHANGELOG.md 2019-01-08 13:33:50 +09:00
35e7dca2bb Resolve #3847 (#3849)
* Update notifications.ts

* Update notifications.ts

* Update notifications.ts

* Update notifications.ts

* Add missing semicolon

* Improve readability

* Fix typo
2019-01-08 13:32:28 +09:00
6c4ea5e087 Merge pull request #3842 from syuilo/l10n_develop
New Crowdin translations
2019-01-07 18:23:24 +09:00
54a1e500e2 New translations ja-JP.yml (French) 2019-01-07 14:12:02 +09:00
450ed2c471 New translations ja-JP.yml (English) 2019-01-07 07:02:09 +09:00
bf97fcb2fd Update README.md [AUTOGEN] (#3845) 2019-01-07 06:53:25 +09:00
4edeae07a0 Update README.md [AUTOGEN] (#3843) 2019-01-07 06:52:56 +09:00
8e19e4d33b New translations ja-JP.yml (Korean) 2019-01-06 22:22:34 +09:00
2a774c9414 Update update_readme_patreon.sh
Patreon API updates
2019-01-06 18:20:47 +09:00
6f50ed327d New translations ja-JP.yml (Norwegian) 2019-01-06 17:52:52 +09:00
a51d384f19 New translations ja-JP.yml (Dutch) 2019-01-06 17:52:48 +09:00
e2b2e4633a New translations ja-JP.yml (Japanese, Kansai) 2019-01-06 17:52:43 +09:00
46ec773128 New translations ja-JP.yml (Spanish) 2019-01-06 17:52:37 +09:00
1827a65874 New translations ja-JP.yml (Russian) 2019-01-06 17:52:32 +09:00
1b4dd64cbe New translations ja-JP.yml (Portuguese) 2019-01-06 17:52:28 +09:00
95b7d84025 New translations ja-JP.yml (Polish) 2019-01-06 17:52:22 +09:00
137b081b8a New translations ja-JP.yml (Korean) 2019-01-06 17:52:18 +09:00
76af9bbda7 New translations ja-JP.yml (Italian) 2019-01-06 17:52:14 +09:00
17ab07ae9c New translations ja-JP.yml (German) 2019-01-06 17:52:09 +09:00
4c4d06e49b New translations ja-JP.yml (French) 2019-01-06 17:52:05 +09:00
5d9ef68f14 New translations ja-JP.yml (English) 2019-01-06 17:51:59 +09:00
4689cf5591 New translations ja-JP.yml (Chinese Simplified) 2019-01-06 17:51:54 +09:00
58e7edf08a New translations ja-JP.yml (Catalan) 2019-01-06 17:51:50 +09:00
9c6c281ac3 Update CHANGELOG.md 2019-01-06 17:47:05 +09:00
2326d6208b Merge pull request #3811 from syuilo/l10n_develop
New Crowdin translations
2019-01-06 17:46:09 +09:00
cd4be4116b Fix sharedInbox recovery code (#3840) 2019-01-06 17:45:53 +09:00
6697ca243c Update README.md [AUTOGEN] (#3841) 2019-01-06 17:45:34 +09:00
15ce89a88d Resolve #3078 (#3838) 2019-01-06 17:45:14 +09:00
4b13278a41 Update README.md [AUTOGEN] (#3834) 2019-01-06 17:44:36 +09:00
e01167fcab Merge pull request #3816 from syuilo/dependabot/npm_and_yarn/nodemailer-5.0.0
Update nodemailer requirement from 4.7.0 to 5.0.0
2019-01-06 13:29:05 +09:00
719ff26e79 Merge pull request #3830 from syuilo/dependabot/npm_and_yarn/moment-2.23.0
Update moment requirement from 2.22.2 to 2.23.0
2019-01-06 13:28:57 +09:00
2657328ac1 Merge pull request #3831 from syuilo/dependabot/npm_and_yarn/vue-marquee-text-component-1.1.1
Update vue-marquee-text-component requirement from 1.1.0 to 1.1.1
2019-01-06 13:28:49 +09:00
4b7cef239e Merge pull request #3817 from syuilo/dependabot/npm_and_yarn/@fortawesome/fontawesome-svg-core-1.2.12
Update @fortawesome/fontawesome-svg-core requirement from 1.2.8 to 1.2.12
2019-01-06 13:28:39 +09:00
49d9e51f72 Merge branch 'develop' into dependabot/npm_and_yarn/@fortawesome/fontawesome-svg-core-1.2.12 2019-01-06 13:28:33 +09:00
40a5f79d76 Merge pull request #3819 from syuilo/dependabot/npm_and_yarn/@fortawesome/free-brands-svg-icons-5.6.3
Update @fortawesome/free-brands-svg-icons requirement from 5.6.0 to 5.6.3
2019-01-06 13:27:56 +09:00
9cfd0b7351 Merge pull request #3818 from syuilo/dependabot/npm_and_yarn/@types/elasticsearch-5.0.30
Update @types/elasticsearch requirement from 5.0.29 to 5.0.30
2019-01-06 13:27:44 +09:00
2223ecf890 Merge pull request #3832 from syuilo/dependabot/npm_and_yarn/@types/koa-2.0.48
Update @types/koa requirement from 2.0.47 to 2.0.48
2019-01-06 13:27:36 +09:00
06bad9c501 Merge pull request #3833 from syuilo/dependabot/npm_and_yarn/@types/redis-2.8.10
Update @types/redis requirement from 2.8.8 to 2.8.10
2019-01-06 13:27:25 +09:00
a479e65f3e Compact URL preview (#3835)
* Compact url-preview

* fix header

* increase limit

* better limit

* Revert "better limit"

This reverts commit ef396f773394068b0b7e37fccff31c70661b3978.

ハードリミットかけるならサーバー上でかけたほうが良さそう

* Revert "increase limit"

This reverts commit 72c10a456ba37151a4d88d11544b0ff9daabd284.
2019-01-06 12:56:13 +09:00
a2e99e46b9 New translations ja-JP.yml (Polish) 2019-01-06 08:22:03 +09:00
07a27cfb9a New translations ja-JP.yml (Polish) 2019-01-06 08:11:40 +09:00
77f3a0d3a9 New translations ja-JP.yml (Polish) 2019-01-06 08:01:48 +09:00
f9065943c5 Fix #3827 (#3837) 2019-01-06 04:00:30 +09:00
d0aff4409d Locked mark (#3836) 2019-01-05 19:59:10 +09:00
84ea1fbd4d Fix typo: not -> note
1344ffa67d (commitcomment-31817792)
2019-01-05 10:29:46 +09:00
d1d92be09a New translations ja-JP.yml (English) 2019-01-05 02:11:58 +09:00
52b23af97e Update @types/redis requirement from 2.8.8 to 2.8.10
Updates the requirements on [@types/redis](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 20:22:40 +00:00
b76cd18dea Update @types/koa requirement from 2.0.47 to 2.0.48
Updates the requirements on [@types/koa](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 20:20:43 +00:00
cd3b30bf5c Update vue-marquee-text-component requirement from 1.1.0 to 1.1.1
Updates the requirements on [vue-marquee-text-component](https://github.com/EvodiaAut/vue-marquee-text-component) to permit the latest version.
- [Release notes](https://github.com/EvodiaAut/vue-marquee-text-component/releases)
- [Commits](https://github.com/EvodiaAut/vue-marquee-text-component/commits/v1.1.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 20:18:49 +00:00
b87ebc6f9d Update moment requirement from 2.22.2 to 2.23.0
Updates the requirements on [moment](https://github.com/moment/moment) to permit the latest version.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/commits/2.23.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 20:17:22 +00:00
4d7d119524 Update CHANGELOG.md 2019-01-04 04:54:28 +09:00
b4b6e9548d Rename 2019-01-04 03:52:50 +09:00
ebf9cd18c8 Make instance logo customisable (#3829) 2019-01-04 03:02:40 +09:00
b1ccbb2deb New translations ja-JP.yml (English) 2019-01-04 00:43:55 +09:00
562cd6ad0b Improve readability 2019-01-03 12:34:08 +09:00
a832672b59 Update file-type requirement from 10.6.0 to 10.7.0 (#3815)
Updates the requirements on [file-type](https://github.com/sindresorhus/file-type) to permit the latest version.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/commits/v10.7.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 11:47:32 +09:00
309058f209 Update webpack requirement from 4.26.1 to 4.28.3 (#3822)
Updates the requirements on [webpack](https://github.com/webpack/webpack) to permit the latest version.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/commits/v4.28.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 08:39:17 +09:00
2a344dfbd8 adds ko-KR な to にゃ (#3820)
* adds ko-KR な to にゃ
- this only take considers pre-composed "Hangul Syllables",
not composable area "Hangul Jamo" which are not used commonly
- 56 is '냐' - '나'

* replace magic number as suggested
2019-01-03 08:38:26 +09:00
866d4cd59a Update vue-i18n requirement from 8.3.2 to 8.6.0 (#3821)
Updates the requirements on [vue-i18n](https://github.com/kazupon/vue-i18n) to permit the latest version.
- [Release notes](https://github.com/kazupon/vue-i18n/releases)
- [Changelog](https://github.com/kazupon/vue-i18n/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/kazupon/vue-i18n/commits/v8.6.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 08:37:44 +09:00
165350cca6 Update apexcharts requirement from 2.4.2 to 2.5.1 (#3826)
Updates the requirements on [apexcharts](https://github.com/apexcharts/apexcharts.js) to permit the latest version.
- [Release notes](https://github.com/apexcharts/apexcharts.js/releases)
- [Changelog](https://github.com/apexcharts/apexcharts.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/apexcharts/apexcharts.js/commits/v2.5.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-03 08:36:00 +09:00
8c21b8a9a6 Update CHANGELOG.md 2019-01-02 18:10:23 +09:00
41e3a9a004 Tune AP URL negotiating with Accept (#3824) 2019-01-02 18:07:32 +09:00
4dc6ec5387 New translations ja-JP.yml (French) 2019-01-02 14:41:41 +09:00
96515c4544 Resolve #3813 (#3814) 2019-01-02 03:35:42 +09:00
b3637b5e8a New translations ja-JP.yml (Korean) 2019-01-02 00:22:17 +09:00
43bcdf397e Update @fortawesome/free-brands-svg-icons requirement
Updates the requirements on [@fortawesome/free-brands-svg-icons](https://github.com/FortAwesome/Font-Awesome) to permit the latest version.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/commits/5.6.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-31 20:27:42 +00:00
22c5db7121 Update @types/elasticsearch requirement from 5.0.29 to 5.0.30
Updates the requirements on [@types/elasticsearch](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-31 20:25:44 +00:00
1c6a8f8691 Update @fortawesome/fontawesome-svg-core requirement
Updates the requirements on [@fortawesome/fontawesome-svg-core](https://github.com/FortAwesome/Font-Awesome) to permit the latest version.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-31 20:21:31 +00:00
31b5175bb0 Update nodemailer requirement from 4.7.0 to 5.0.0
Updates the requirements on [nodemailer](https://github.com/nodemailer/nodemailer) to permit the latest version.
- [Release notes](https://github.com/nodemailer/nodemailer/releases)
- [Changelog](https://github.com/nodemailer/nodemailer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodemailer/nodemailer/commits/v5.0.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-31 20:17:17 +00:00
9add59aca9 2019 🎉 2019-01-01 00:11:07 +09:00
16c65173c1 New translations ja-JP.yml (French) 2018-12-31 06:12:15 +09:00
4f6ae4633f New translations ja-JP.yml (French) 2018-12-31 06:01:44 +09:00
8aa1577713 New translations ja-JP.yml (French) 2018-12-31 05:52:42 +09:00
5bd41704ae 10.73.0 2018-12-31 02:38:13 +09:00
4d0b335748 [Client] Improve theme 🎨 2018-12-31 02:33:03 +09:00
5692ae59a1 [Client] Improve theming 🎨 2018-12-31 01:15:32 +09:00
84f1ce866b [Client] line thiknessの設定はデバイスに保存するように 2018-12-31 00:59:13 +09:00
e68c6175ce Fix bug 2018-12-31 00:50:56 +09:00
0de11c3636 🎨 2018-12-31 00:50:14 +09:00
1f70657d4a Merge pull request #3798 from syuilo/l10n_develop
New Crowdin translations
2018-12-31 00:45:51 +09:00
73646aac9b New translations ja-JP.yml (English) 2018-12-30 19:11:39 +09:00
e72c590c6b 10.72.0 2018-12-30 14:52:41 +09:00
06e026b346 New translations ja-JP.yml (English) 2018-12-30 14:51:40 +09:00
5621d5725c [Client] Fix bug 2018-12-30 14:43:03 +09:00
14d0a07b29 New translations ja-JP.yml (English) 2018-12-30 14:21:40 +09:00
105fefd114 Clean up 2018-12-30 14:19:22 +09:00
f81c10fe62 New translations ja-JP.yml (Norwegian) 2018-12-30 14:13:06 +09:00
86a2aa42a4 New translations ja-JP.yml (Dutch) 2018-12-30 14:13:00 +09:00
42f5c3fe22 New translations ja-JP.yml (Japanese, Kansai) 2018-12-30 14:12:54 +09:00
975740464c New translations ja-JP.yml (Spanish) 2018-12-30 14:12:49 +09:00
c57bffb142 モバイル版にも設定を追加 2018-12-30 14:12:46 +09:00
d92a2cdb55 New translations ja-JP.yml (Russian) 2018-12-30 14:12:43 +09:00
5b91463233 New translations ja-JP.yml (Portuguese) 2018-12-30 14:12:38 +09:00
39eed3378f New translations ja-JP.yml (Polish) 2018-12-30 14:12:33 +09:00
cf98d40a44 New translations ja-JP.yml (Korean) 2018-12-30 14:12:28 +09:00
7d6436c90e New translations ja-JP.yml (Italian) 2018-12-30 14:12:24 +09:00
0acf3a8f6d New translations ja-JP.yml (German) 2018-12-30 14:12:19 +09:00
8b7324c8d3 New translations ja-JP.yml (French) 2018-12-30 14:12:13 +09:00
a0b0d5dff7 New translations ja-JP.yml (English) 2018-12-30 14:12:07 +09:00
bef0e36665 New translations ja-JP.yml (Chinese Simplified) 2018-12-30 14:12:02 +09:00
766e721ff3 New translations ja-JP.yml (Catalan) 2018-12-30 14:11:57 +09:00
93ad4b359e 🎨 2018-12-30 14:08:40 +09:00
b3032ad84d Better setting 2018-12-30 14:05:13 +09:00
4f76acd249 🎨 2018-12-30 14:00:57 +09:00
fcc4b2c704 New translations ja-JP.yml (English) 2018-12-30 13:21:45 +09:00
12286f4915 🎨 2018-12-30 13:19:06 +09:00
193abfdbac New translations ja-JP.yml (Norwegian) 2018-12-30 13:13:01 +09:00
0e13481eb4 New translations ja-JP.yml (Dutch) 2018-12-30 13:12:56 +09:00
b713cac4f1 New translations ja-JP.yml (Japanese, Kansai) 2018-12-30 13:12:51 +09:00
2137c894ef New translations ja-JP.yml (Spanish) 2018-12-30 13:12:47 +09:00
f0d2ce4f19 New translations ja-JP.yml (Russian) 2018-12-30 13:12:42 +09:00
e3a89d302f New translations ja-JP.yml (Portuguese) 2018-12-30 13:12:38 +09:00
d01d2ef65e New translations ja-JP.yml (Polish) 2018-12-30 13:12:32 +09:00
23c550acba New translations ja-JP.yml (Korean) 2018-12-30 13:12:26 +09:00
b9db88f616 New translations ja-JP.yml (Italian) 2018-12-30 13:12:21 +09:00
dee4a18d48 New translations ja-JP.yml (German) 2018-12-30 13:12:16 +09:00
fa5073b042 New translations ja-JP.yml (French) 2018-12-30 13:12:11 +09:00
9dda698dc8 New translations ja-JP.yml (English) 2018-12-30 13:12:06 +09:00
99d0930fba New translations ja-JP.yml (Chinese Simplified) 2018-12-30 13:12:01 +09:00
a599524b5f New translations ja-JP.yml (Catalan) 2018-12-30 13:11:57 +09:00
5f34758e87 [Client] Fix i18n 2018-12-30 13:02:17 +09:00
cdb8e41176 [Client] Update theme setting 2018-12-30 13:02:06 +09:00
d8f3e9d4a3 🎨 2018-12-30 12:45:31 +09:00
da900439a3 Update gruvbox-dark.json5 2018-12-30 11:58:26 +09:00
ad0273ab99 10.71.0 2018-12-30 09:24:03 +09:00
8bbff90aca [Client] Add Monokai theme 🎨 2018-12-30 09:21:23 +09:00
fcb3ba9947 [Client] Separate theme property 2018-12-30 09:21:07 +09:00
23b3e33df6 [Client] Fix bug 2018-12-30 09:15:56 +09:00
9edac2cd74 oops 2018-12-30 09:04:19 +09:00
fbe0d70661 New translations ja-JP.yml (English) 2018-12-30 08:41:38 +09:00
8782a64b18 [Client] Add some themes 🎨 2018-12-30 06:40:48 +09:00
d3b81c3e00 10.70.1 2018-12-30 01:52:28 +09:00
fd816afcd0 Add id to return of users/relation (#3795) 2018-12-30 01:44:26 +09:00
ac423f1ef4 [API] notes/mentions にミュートを適用するように 2018-12-30 01:40:24 +09:00
f11ebafe47 🎨 2018-12-30 01:32:58 +09:00
7947036af9 Make one import per line 2018-12-29 22:26:15 +09:00
b722431720 New translations ja-JP.yml (Norwegian) 2018-12-29 22:13:17 +09:00
295563caad New translations ja-JP.yml (Dutch) 2018-12-29 22:13:13 +09:00
26735815f1 New translations ja-JP.yml (Japanese, Kansai) 2018-12-29 22:13:08 +09:00
c06a52c237 New translations ja-JP.yml (Spanish) 2018-12-29 22:13:04 +09:00
5678adf3b5 New translations ja-JP.yml (Russian) 2018-12-29 22:12:58 +09:00
ac772dd389 New translations ja-JP.yml (Portuguese) 2018-12-29 22:12:53 +09:00
2c4de8475f New translations ja-JP.yml (Polish) 2018-12-29 22:12:49 +09:00
46facaf176 New translations ja-JP.yml (Korean) 2018-12-29 22:12:45 +09:00
eea1b7fc63 New translations ja-JP.yml (Italian) 2018-12-29 22:12:39 +09:00
f0e9386cd0 New translations ja-JP.yml (German) 2018-12-29 22:12:34 +09:00
e4a4238b57 New translations ja-JP.yml (French) 2018-12-29 22:12:28 +09:00
55e126998a New translations ja-JP.yml (English) 2018-12-29 22:12:24 +09:00
608a30d37b New translations ja-JP.yml (Chinese Simplified) 2018-12-29 22:12:19 +09:00
7d22d6255d New translations ja-JP.yml (Catalan) 2018-12-29 22:12:14 +09:00
4e55436339 [Client] Improve 2fa settings 2018-12-29 22:10:54 +09:00
3adadc8a52 Merge pull request #3776 from syuilo/dependabot/npm_and_yarn/@koa/cors-2.2.3
Update @koa/cors requirement from 2.2.2 to 2.2.3
2018-12-29 19:11:09 +09:00
b525af822c Merge pull request #3777 from syuilo/dependabot/npm_and_yarn/@types/dateformat-3.0.0
Update @types/dateformat requirement from 1.0.1 to 3.0.0
2018-12-29 19:11:01 +09:00
bee8a5b065 Merge pull request #3775 from syuilo/dependabot/npm_and_yarn/@types/showdown-1.9.0
Update @types/showdown requirement from 1.7.5 to 1.9.0
2018-12-29 19:10:53 +09:00
f4d80122b3 Merge pull request #3794 from syuilo/dependabot/npm_and_yarn/eslint-5.11.1
Update eslint requirement from 5.8.0 to 5.11.1
2018-12-29 19:09:52 +09:00
2e8ea34413 Merge branch 'develop' into dependabot/npm_and_yarn/eslint-5.11.1 2018-12-29 19:09:42 +09:00
7341d97a00 Update loader-utils requirement from 1.1.0 to 1.2.3 (#3793)
Updates the requirements on [loader-utils](https://github.com/webpack/loader-utils) to permit the latest version.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/commits/v1.2.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-29 19:07:25 +09:00
964b34bd3b Update eslint-plugin-vue requirement from 4.7.1 to 5.0.0 (#3792)
Updates the requirements on [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) to permit the latest version.
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Commits](https://github.com/vuejs/eslint-plugin-vue/commits/v5.0.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-29 19:07:20 +09:00
38e8d4bbea 10.70.0 2018-12-29 06:03:21 +09:00
cb106e6fe4 🎨 2018-12-29 05:55:09 +09:00
61411605b8 Merge pull request #3750 from syuilo/l10n_develop
New Crowdin translations
2018-12-29 05:52:34 +09:00
0ac7682188 Better note filtering 2018-12-29 05:51:17 +09:00
d7af18efbd [Client] Renote数の表示を廃止 2018-12-29 05:43:31 +09:00
64bb6daa43 Update eslint requirement from 5.8.0 to 5.11.1
Updates the requirements on [eslint](https://github.com/eslint/eslint) to permit the latest version.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v5.11.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-28 20:24:50 +00:00
0a1951f24c Update loader-utils requirement from 1.1.0 to 1.2.3
Updates the requirements on [loader-utils](https://github.com/webpack/loader-utils) to permit the latest version.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/commits/v1.2.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-28 20:21:50 +00:00
8bb388f62a New translations ja-JP.yml (English) 2018-12-29 04:52:33 +09:00
ee36956451 New translations ja-JP.yml (English) 2018-12-29 04:21:50 +09:00
f1a0e95489 Improve usability 2018-12-29 03:12:22 +09:00
de5d9470af New translations ja-JP.yml (Norwegian) 2018-12-29 03:02:56 +09:00
a9838495ce New translations ja-JP.yml (Dutch) 2018-12-29 03:02:51 +09:00
d34c080822 New translations ja-JP.yml (Japanese, Kansai) 2018-12-29 03:02:46 +09:00
59f55a8291 New translations ja-JP.yml (Spanish) 2018-12-29 03:02:42 +09:00
79ace6238a New translations ja-JP.yml (Russian) 2018-12-29 03:02:35 +09:00
89e88802b9 New translations ja-JP.yml (Portuguese) 2018-12-29 03:02:31 +09:00
c7f969a002 New translations ja-JP.yml (Polish) 2018-12-29 03:02:26 +09:00
18b186068d New translations ja-JP.yml (Korean) 2018-12-29 03:02:22 +09:00
037c67cbfb New translations ja-JP.yml (Italian) 2018-12-29 03:02:17 +09:00
c3ccee9097 New translations ja-JP.yml (German) 2018-12-29 03:02:13 +09:00
2449183f44 New translations ja-JP.yml (French) 2018-12-29 03:02:09 +09:00
1c98226621 New translations ja-JP.yml (English) 2018-12-29 03:02:03 +09:00
b405669672 New translations ja-JP.yml (Chinese Simplified) 2018-12-29 03:01:58 +09:00
53fbe675a7 New translations ja-JP.yml (Catalan) 2018-12-29 03:01:53 +09:00
6bcc174456 Clean up 2018-12-29 02:58:04 +09:00
a3493c4f07 Privateの公開範囲を廃止 2018-12-29 02:55:46 +09:00
545ced7826 Make autoAcceptFollowed default 2018-12-29 02:46:57 +09:00
a9a476a0d5 Resolve #3786 (#3788) 2018-12-29 02:04:29 +09:00
8dfd35303c New translations ja-JP.yml (Norwegian) 2018-12-28 21:43:24 +09:00
498ca306e4 New translations ja-JP.yml (Dutch) 2018-12-28 21:43:18 +09:00
5a46e08165 New translations ja-JP.yml (Japanese, Kansai) 2018-12-28 21:43:14 +09:00
c0c57044cc New translations ja-JP.yml (Spanish) 2018-12-28 21:43:09 +09:00
42d00b96c6 New translations ja-JP.yml (Russian) 2018-12-28 21:43:04 +09:00
072360947b New translations ja-JP.yml (Portuguese) 2018-12-28 21:43:00 +09:00
d60ba8e37d New translations ja-JP.yml (Polish) 2018-12-28 21:42:53 +09:00
c10cf60059 New translations ja-JP.yml (Korean) 2018-12-28 21:42:47 +09:00
880689e28a New translations ja-JP.yml (Italian) 2018-12-28 21:42:42 +09:00
ade7050996 New translations ja-JP.yml (German) 2018-12-28 21:42:35 +09:00
71b5fae4d9 New translations ja-JP.yml (French) 2018-12-28 21:42:30 +09:00
d398e87ea1 New translations ja-JP.yml (English) 2018-12-28 21:42:25 +09:00
6256d021e6 New translations ja-JP.yml (Chinese Simplified) 2018-12-28 21:42:20 +09:00
405f242ff9 New translations ja-JP.yml (Catalan) 2018-12-28 21:42:15 +09:00
8823a6c1a1 フォローしているユーザーからのフォローを自動承認するオプション (#3780) 2018-12-28 21:36:58 +09:00
65a82f32be Supports CSS Scrollbars (#3783)
* Supports CSS Scrollbars

* fix
2018-12-28 21:34:35 +09:00
fd593458a6 New translations ja-JP.yml (Korean) 2018-12-28 07:42:07 +09:00
3985fe6b09 Update @types/dateformat requirement from 1.0.1 to 3.0.0
Updates the requirements on [@types/dateformat](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 20:28:49 +00:00
db71a5da62 Update @koa/cors requirement from 2.2.2 to 2.2.3
Updates the requirements on [@koa/cors](https://github.com/koajs/cors) to permit the latest version.
- [Release notes](https://github.com/koajs/cors/releases)
- [Changelog](https://github.com/koajs/cors/blob/master/History.md)
- [Commits](https://github.com/koajs/cors/commits/2.2.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 20:27:27 +00:00
d76e3e4853 Update @types/showdown requirement from 1.7.5 to 1.9.0
Updates the requirements on [@types/showdown](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 20:25:12 +00:00
eead9fad03 10.69.0 2018-12-28 05:16:24 +09:00
b498072f9d 🎨 2018-12-28 05:14:04 +09:00
f56a961db2 New translations ja-JP.yml (Norwegian) 2018-12-28 05:13:16 +09:00
5d224f4eac New translations ja-JP.yml (Dutch) 2018-12-28 05:13:11 +09:00
5b5edae11c New translations ja-JP.yml (Japanese, Kansai) 2018-12-28 05:13:07 +09:00
bd51154c46 New translations ja-JP.yml (Spanish) 2018-12-28 05:13:03 +09:00
749a1ff8b6 New translations ja-JP.yml (Russian) 2018-12-28 05:12:58 +09:00
b06d46f46f New translations ja-JP.yml (Portuguese) 2018-12-28 05:12:54 +09:00
7146a534df New translations ja-JP.yml (Polish) 2018-12-28 05:12:48 +09:00
ef51e591ee New translations ja-JP.yml (Korean) 2018-12-28 05:12:41 +09:00
9d2f4d3ffb New translations ja-JP.yml (Italian) 2018-12-28 05:12:34 +09:00
f7e0b196eb New translations ja-JP.yml (German) 2018-12-28 05:12:29 +09:00
feb7e58912 New translations ja-JP.yml (French) 2018-12-28 05:12:23 +09:00
fbf04392c9 New translations ja-JP.yml (English) 2018-12-28 05:12:19 +09:00
e650818952 New translations ja-JP.yml (Chinese Simplified) 2018-12-28 05:12:15 +09:00
76fcb1af87 New translations ja-JP.yml (Catalan) 2018-12-28 05:12:09 +09:00
cce3e52642 通知の管理を強化
Resolve #3772
2018-12-28 05:06:25 +09:00
8c762e7b8e 🎵 2018-12-28 04:36:24 +09:00
f0dafa04a5 🎨 2018-12-28 04:30:37 +09:00
81f39b3b36 🎨 2018-12-28 04:28:16 +09:00
b162471d3e 🎨 2018-12-28 04:26:32 +09:00
2736e8d6fa New translations ja-JP.yml (English) 2018-12-28 03:42:36 +09:00
182f6f8faa New translations ja-JP.yml (Norwegian) 2018-12-28 01:03:26 +09:00
ff34655221 New translations ja-JP.yml (Dutch) 2018-12-28 01:03:20 +09:00
f6ce6109f9 New translations ja-JP.yml (Japanese, Kansai) 2018-12-28 01:03:15 +09:00
899ac15d88 New translations ja-JP.yml (Spanish) 2018-12-28 01:03:09 +09:00
7132f2062c New translations ja-JP.yml (Russian) 2018-12-28 01:03:04 +09:00
96b354c7f2 New translations ja-JP.yml (Portuguese) 2018-12-28 01:02:59 +09:00
715664a523 New translations ja-JP.yml (Polish) 2018-12-28 01:02:54 +09:00
e8ddfb4bfe New translations ja-JP.yml (Korean) 2018-12-28 01:02:49 +09:00
2a1229978e New translations ja-JP.yml (Italian) 2018-12-28 01:02:44 +09:00
b8af3515cd New translations ja-JP.yml (German) 2018-12-28 01:02:39 +09:00
f99e3f3d42 New translations ja-JP.yml (French) 2018-12-28 01:02:35 +09:00
d6057bd830 New translations ja-JP.yml (English) 2018-12-28 01:02:30 +09:00
975e57ec48 New translations ja-JP.yml (Chinese Simplified) 2018-12-28 01:02:26 +09:00
bd35965c99 New translations ja-JP.yml (Catalan) 2018-12-28 01:02:20 +09:00
1029bff5ff Undo reaction with clicking minus (#3773)
* Undo reaction with clicking minus

* fix isMyNote
2018-12-28 01:01:58 +09:00
6c1893f869 10.68.0 2018-12-27 23:38:53 +09:00
0a89ba60bd New translations ja-JP.yml (English) 2018-12-27 23:32:01 +09:00
c6e418a242 New translations ja-JP.yml (Norwegian) 2018-12-27 23:23:35 +09:00
d9a6666ba8 New translations ja-JP.yml (Dutch) 2018-12-27 23:23:29 +09:00
ab849fbbef New translations ja-JP.yml (Japanese, Kansai) 2018-12-27 23:23:24 +09:00
9d6b6053a6 New translations ja-JP.yml (Spanish) 2018-12-27 23:23:19 +09:00
ddfd64944d New translations ja-JP.yml (Russian) 2018-12-27 23:23:12 +09:00
51153ed287 New translations ja-JP.yml (Portuguese) 2018-12-27 23:23:07 +09:00
0e7bbd1b32 New translations ja-JP.yml (Polish) 2018-12-27 23:23:03 +09:00
5049791d7f New translations ja-JP.yml (Korean) 2018-12-27 23:22:57 +09:00
1ebcf8d915 New translations ja-JP.yml (Italian) 2018-12-27 23:22:51 +09:00
e01873811a New translations ja-JP.yml (German) 2018-12-27 23:22:45 +09:00
d078b871e1 New translations ja-JP.yml (French) 2018-12-27 23:22:39 +09:00
c6375ae864 New translations ja-JP.yml (English) 2018-12-27 23:22:34 +09:00
483467e32f New translations ja-JP.yml (Chinese Simplified) 2018-12-27 23:22:29 +09:00
c84d43bc5f New translations ja-JP.yml (Catalan) 2018-12-27 23:22:23 +09:00
fdd42fc2d7 user mention (#3771) 2018-12-27 23:14:30 +09:00
8573e258f8 Set cursor default on hover the own reaction
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-27 23:02:32 +09:00
6943c7d2d8 Resolve #3770
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-27 22:54:50 +09:00
4a42bf7b19 New translations ja-JP.yml (Norwegian) 2018-12-27 21:13:13 +09:00
b982f97c05 New translations ja-JP.yml (Dutch) 2018-12-27 21:13:06 +09:00
d9207788d3 New translations ja-JP.yml (Japanese, Kansai) 2018-12-27 21:13:01 +09:00
0ad48cc896 New translations ja-JP.yml (Spanish) 2018-12-27 21:12:57 +09:00
5e191a1f5b New translations ja-JP.yml (Russian) 2018-12-27 21:12:52 +09:00
8069e44d0a New translations ja-JP.yml (Portuguese) 2018-12-27 21:12:48 +09:00
0a83f0fd67 New translations ja-JP.yml (Polish) 2018-12-27 21:12:42 +09:00
83c54fb6b9 New translations ja-JP.yml (Korean) 2018-12-27 21:12:38 +09:00
5f6b0f689f New translations ja-JP.yml (Italian) 2018-12-27 21:12:32 +09:00
1b0b96526b New translations ja-JP.yml (German) 2018-12-27 21:12:27 +09:00
edb0469787 New translations ja-JP.yml (French) 2018-12-27 21:12:23 +09:00
3256a0914e New translations ja-JP.yml (English) 2018-12-27 21:12:18 +09:00
3c15182f24 New translations ja-JP.yml (Chinese Simplified) 2018-12-27 21:12:12 +09:00
f7bc5e3c0b New translations ja-JP.yml (Catalan) 2018-12-27 21:12:07 +09:00
19f327701d Fix kao 2018-12-27 21:10:40 +09:00
6b30e371a2 Remove needless code 2018-12-27 21:09:03 +09:00
98fd6de5a1 Resolve #3524 2018-12-27 21:07:44 +09:00
6635f25abe New translations ja-JP.yml (Norwegian) 2018-12-27 21:03:38 +09:00
5f93106eab New translations ja-JP.yml (Dutch) 2018-12-27 21:03:31 +09:00
84f2994d47 New translations ja-JP.yml (Japanese, Kansai) 2018-12-27 21:03:27 +09:00
96f5c6d616 New translations ja-JP.yml (Spanish) 2018-12-27 21:03:22 +09:00
b67923abb9 New translations ja-JP.yml (Russian) 2018-12-27 21:03:15 +09:00
310f7b3359 New translations ja-JP.yml (Portuguese) 2018-12-27 21:03:11 +09:00
c743c45989 New translations ja-JP.yml (Polish) 2018-12-27 21:03:04 +09:00
0322c51913 New translations ja-JP.yml (Korean) 2018-12-27 21:03:00 +09:00
b85e27c7e5 New translations ja-JP.yml (Italian) 2018-12-27 21:02:55 +09:00
aa351d1f7f New translations ja-JP.yml (German) 2018-12-27 21:02:50 +09:00
6b48b79758 New translations ja-JP.yml (French) 2018-12-27 21:02:45 +09:00
104ea7e277 New translations ja-JP.yml (English) 2018-12-27 21:02:41 +09:00
97de1ed3a8 New translations ja-JP.yml (Chinese Simplified) 2018-12-27 21:02:36 +09:00
d69e9741da New translations ja-JP.yml (Catalan) 2018-12-27 21:02:30 +09:00
0f5c737c1a Use double quotation 2018-12-27 21:00:08 +09:00
cb9960b0ac Fix i18n: is-suspended
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-27 20:59:49 +09:00
1404539895 Resolve #3287, resolve #3107
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-27 20:46:23 +09:00
2f901da58c [Client] Fix bug 2018-12-27 20:34:30 +09:00
3637c1bfbc New translations ja-JP.yml (Norwegian) 2018-12-27 20:33:23 +09:00
28c3edc844 New translations ja-JP.yml (Dutch) 2018-12-27 20:33:16 +09:00
9271a8c066 New translations ja-JP.yml (Japanese, Kansai) 2018-12-27 20:33:12 +09:00
7b16bfc736 New translations ja-JP.yml (Spanish) 2018-12-27 20:33:05 +09:00
54450033e4 New translations ja-JP.yml (Russian) 2018-12-27 20:32:59 +09:00
fbf676d518 New translations ja-JP.yml (Portuguese) 2018-12-27 20:32:54 +09:00
47df0bbec1 New translations ja-JP.yml (Polish) 2018-12-27 20:32:50 +09:00
708f8b3cc3 New translations ja-JP.yml (Korean) 2018-12-27 20:32:44 +09:00
9de163ab09 New translations ja-JP.yml (Italian) 2018-12-27 20:32:40 +09:00
e21be29131 New translations ja-JP.yml (German) 2018-12-27 20:32:35 +09:00
1aabb725d0 New translations ja-JP.yml (French) 2018-12-27 20:32:31 +09:00
3e17c34187 New translations ja-JP.yml (English) 2018-12-27 20:32:27 +09:00
d57de01d37 New translations ja-JP.yml (Chinese Simplified) 2018-12-27 20:32:22 +09:00
71918fdbf0 New translations ja-JP.yml (Catalan) 2018-12-27 20:32:17 +09:00
cb8663873d Rename: 404 --> not-found 2018-12-27 20:22:54 +09:00
0f204eebe1 Remove unused code 2018-12-27 20:10:29 +09:00
dec572a6b7 New translations ja-JP.yml (Norwegian) 2018-12-27 20:03:29 +09:00
28848ba969 New translations ja-JP.yml (Dutch) 2018-12-27 20:03:24 +09:00
4cfcd37a2b New translations ja-JP.yml (Japanese, Kansai) 2018-12-27 20:03:19 +09:00
2b0d5516d1 New translations ja-JP.yml (Spanish) 2018-12-27 20:03:13 +09:00
3e3c3c10ab New translations ja-JP.yml (Russian) 2018-12-27 20:03:08 +09:00
3cc282db14 New translations ja-JP.yml (Portuguese) 2018-12-27 20:03:03 +09:00
4c1c865ba9 New translations ja-JP.yml (Polish) 2018-12-27 20:02:59 +09:00
9423c99427 New translations ja-JP.yml (Korean) 2018-12-27 20:02:54 +09:00
d1512c90f1 New translations ja-JP.yml (Italian) 2018-12-27 20:02:48 +09:00
85c9993106 New translations ja-JP.yml (German) 2018-12-27 20:02:43 +09:00
1d580009e4 New translations ja-JP.yml (French) 2018-12-27 20:02:38 +09:00
22ad21597a New translations ja-JP.yml (English) 2018-12-27 20:02:32 +09:00
76d8f66eff New translations ja-JP.yml (Chinese Simplified) 2018-12-27 20:02:28 +09:00
febdf0cbee New translations ja-JP.yml (Catalan) 2018-12-27 20:02:23 +09:00
ba05606074 Show on the CW button that there is a poll (#3769) 2018-12-27 19:58:57 +09:00
030fe8bec7 New translations ja-JP.yml (English) 2018-12-27 19:23:07 +09:00
4587c5a512 Update @fortawesome/free-solid-svg-icons requirement from 5.6.1 to 5.6.3 (#3754)
Updates the requirements on [@fortawesome/free-solid-svg-icons](https://github.com/FortAwesome/Font-Awesome) to permit the latest version.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/commits/5.6.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 18:50:19 +09:00
96646e584b Update vue-svg-inline-loader requirement from 1.2.4 to 1.2.7 (#3764)
Updates the requirements on [vue-svg-inline-loader](https://github.com/oliverfindl/vue-svg-inline-loader) to permit the latest version.
- [Release notes](https://github.com/oliverfindl/vue-svg-inline-loader/releases)
- [Commits](https://github.com/oliverfindl/vue-svg-inline-loader/commits/v1.2.7)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 18:50:01 +09:00
fb2879df9c Update @types/js-yaml requirement from 3.11.2 to 3.11.4 (#3763)
Updates the requirements on [@types/js-yaml](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 18:49:51 +09:00
26ea338e8e Update vue-js-modal requirement from 1.3.27 to 1.3.28 (#3766)
Updates the requirements on [vue-js-modal](https://github.com/euvl/vue-js-modal) to permit the latest version.
- [Release notes](https://github.com/euvl/vue-js-modal/releases)
- [Commits](https://github.com/euvl/vue-js-modal/commits/1.3.28)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 18:49:44 +09:00
1fad5ed6f3 Update nan requirement from 2.11.1 to 2.12.1 (#3767)
Updates the requirements on [nan](https://github.com/nodejs/nan) to permit the latest version.
- [Release notes](https://github.com/nodejs/nan/releases)
- [Changelog](https://github.com/nodejs/nan/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodejs/nan/commits/v2.12.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 18:49:33 +09:00
20db10516c New translations ja-JP.yml (English) 2018-12-27 18:42:12 +09:00
00631f58ec New translations ja-JP.yml (French) 2018-12-27 18:22:13 +09:00
35273e53bc 10.67.0 2018-12-27 07:49:48 +09:00
bfc458e935 Resolve #3758 2018-12-27 07:07:26 +09:00
bb819d42f1 Update mongodb requirement from 3.1.9 to 3.1.10 (#3762)
Updates the requirements on [mongodb](https://github.com/mongodb/node-mongodb-native) to permit the latest version.
- [Release notes](https://github.com/mongodb/node-mongodb-native/releases)
- [Changelog](https://github.com/mongodb/node-mongodb-native/blob/master/HISTORY.md)
- [Commits](https://github.com/mongodb/node-mongodb-native/commits/v3.1.10)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 05:46:42 +09:00
5d76439224 Update sharp requirement from 0.21.0 to 0.21.1 (#3761)
Updates the requirements on [sharp](https://github.com/lovell/sharp) to permit the latest version.
- [Release notes](https://github.com/lovell/sharp/releases)
- [Changelog](https://github.com/lovell/sharp/blob/master/docs/changelog.md)
- [Commits](https://github.com/lovell/sharp/commits/v0.21.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 05:46:00 +09:00
3d0b704af8 Add URI parameter to /api/meta (#3748)
* Add URI parameter to /api/meta
closes #3747

* Update fetch-meta.ts

* Update meta.ts
2018-12-27 04:50:35 +09:00
05539ffc7b Update README.md [AUTOGEN] (#3743) 2018-12-27 01:33:19 +09:00
c86deab69c Introduce SonarTS (#3756) 2018-12-27 01:32:31 +09:00
21f8dbf2de Resolve #3248
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-27 01:26:03 +09:00
6731f904f2 New translations ja-JP.yml (Norwegian) 2018-12-26 23:14:31 +09:00
f6e74f529e New translations ja-JP.yml (Dutch) 2018-12-26 23:14:22 +09:00
c860a2f7f3 New translations ja-JP.yml (Japanese, Kansai) 2018-12-26 23:14:17 +09:00
7b141722ae New translations ja-JP.yml (Spanish) 2018-12-26 23:14:13 +09:00
fc516ffb7f New translations ja-JP.yml (Russian) 2018-12-26 23:14:08 +09:00
11604593a6 New translations ja-JP.yml (Portuguese) 2018-12-26 23:14:03 +09:00
6f3468ccd2 New translations ja-JP.yml (Polish) 2018-12-26 23:13:56 +09:00
e3be90503c New translations ja-JP.yml (Korean) 2018-12-26 23:13:50 +09:00
22d38e0d24 New translations ja-JP.yml (Italian) 2018-12-26 23:13:46 +09:00
8b654fb40a New translations ja-JP.yml (German) 2018-12-26 23:13:39 +09:00
91cd9831bc New translations ja-JP.yml (French) 2018-12-26 23:13:33 +09:00
805d72d42f New translations ja-JP.yml (English) 2018-12-26 23:13:29 +09:00
0d4a1719a6 New translations ja-JP.yml (Chinese Simplified) 2018-12-26 23:13:23 +09:00
32ab57e11b New translations ja-JP.yml (Catalan) 2018-12-26 23:13:16 +09:00
5174e16f7b Feature to show only my posts in the user page (#3753)
* Fix #3681

* Feature to show only my posts in the user page
2018-12-26 23:11:50 +09:00
9b746f3eb5 Make reactions removable
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>

Resolve #367, resolve #2260, close #3503
2018-12-26 23:05:47 +09:00
becd038660 New translations ja-JP.yml (Russian) 2018-12-26 22:31:58 +09:00
2a6cfec0e6 New translations ja-JP.yml (Russian) 2018-12-26 22:28:10 +09:00
dfc6ef4be6 Remove trailing whitespaces 2018-12-26 19:58:04 +09:00
c8b45f4f42 Fix #3346
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-26 19:39:51 +09:00
09c57e6d03 Fix #3345
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-26 19:24:38 +09:00
5edb1da097 Update gulp-typescript requirement from 4.0.2 to 5.0.0 (#3496)
Updates the requirements on [gulp-typescript](https://github.com/ivogabe/gulp-typescript) to permit the latest version.
- [Release notes](https://github.com/ivogabe/gulp-typescript/releases)
- [Commits](https://github.com/ivogabe/gulp-typescript/commits/v5.0.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:34:28 +09:00
b3ad3a6535 Update jsdom requirement from 13.0.0 to 13.1.0 (#3649)
Updates the requirements on [jsdom](https://github.com/jsdom/jsdom) to permit the latest version.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/master/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/commits/13.1.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:33:50 +09:00
3709bb23bc Update systeminformation requirement from 3.51.3 to 3.52.2 (#3669)
Updates the requirements on [systeminformation](https://github.com/sebhildebrandt/systeminformation) to permit the latest version.
- [Release notes](https://github.com/sebhildebrandt/systeminformation/releases)
- [Changelog](https://github.com/sebhildebrandt/systeminformation/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sebhildebrandt/systeminformation/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:33:42 +09:00
28be5c0b81 Update tslint requirement from 5.10.0 to 5.12.0 (#3670)
Updates the requirements on [tslint](https://github.com/palantir/tslint) to permit the latest version.
- [Release notes](https://github.com/palantir/tslint/releases)
- [Changelog](https://github.com/palantir/tslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/palantir/tslint/commits/5.12.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:33:34 +09:00
60ef74047a Update @types/file-type requirement from 5.2.2 to 10.6.0 (#3671)
Updates the requirements on [@types/file-type](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:33:28 +09:00
f81596c8d5 Update @types/webpack requirement from 4.4.20 to 4.4.21 (#3650)
Updates the requirements on [@types/webpack](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:33:20 +09:00
075b7e3060 Update vue-cropperjs requirement from 2.2.2 to 3.0.0 (#3617)
Updates the requirements on [vue-cropperjs](https://github.com/Agontuk/vue-cropperjs) to permit the latest version.
- [Release notes](https://github.com/Agontuk/vue-cropperjs/releases)
- [Changelog](https://github.com/Agontuk/vue-cropperjs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Agontuk/vue-cropperjs/commits/v3.0.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:33:08 +09:00
cc7d6198ec Update hard-source-webpack-plugin requirement from 0.12.0 to 0.13.1 (#3611)
Updates the requirements on [hard-source-webpack-plugin](https://github.com/mzgoddard/hard-source-webpack-plugin) to permit the latest version.
- [Release notes](https://github.com/mzgoddard/hard-source-webpack-plugin/releases)
- [Changelog](https://github.com/mzgoddard/hard-source-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mzgoddard/hard-source-webpack-plugin/commits/v0.13.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:32:58 +09:00
5766c2ce1b Update @fortawesome/free-solid-svg-icons requirement from 5.5.0 to 5.6.1 (#3610)
Updates the requirements on [@fortawesome/free-solid-svg-icons](https://github.com/FortAwesome/Font-Awesome) to permit the latest version.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/commits/5.6.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:32:50 +09:00
03fed08c03 Update @fortawesome/free-brands-svg-icons requirement (#3598)
Updates the requirements on [@fortawesome/free-brands-svg-icons](https://github.com/FortAwesome/Font-Awesome) to permit the latest version.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/commits/5.6.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-26 18:32:43 +09:00
4662641feb Fix #3745 (#3746) 2018-12-26 18:32:16 +09:00
00e2ce9489 Fix #3715 (#3752) 2018-12-26 06:21:09 +09:00
c2ec81f93a New translations ja-JP.yml (French) 2018-12-26 05:31:49 +09:00
47561a6f8b New translations ja-JP.yml (French) 2018-12-26 05:21:51 +09:00
c81eb49f9e Supports emoji in notifications (#3751) 2018-12-26 05:15:02 +09:00
205c0d44d5 New translations ja-JP.yml (French) 2018-12-26 05:11:57 +09:00
dc1bdbaaa5 New translations ja-JP.yml (French) 2018-12-26 05:01:48 +09:00
d619a92a37 New translations ja-JP.yml (French) 2018-12-26 04:52:05 +09:00
59ad529162 New translations ja-JP.yml (French) 2018-12-26 04:41:54 +09:00
c4c44e04fd New translations ja-JP.yml (French) 2018-12-26 04:32:01 +09:00
fae58a9ab0 New translations ja-JP.yml (French) 2018-12-26 04:21:58 +09:00
fa03c172f2 Fix typo 2018-12-25 20:02:37 +09:00
89ac15b4de Fix typo
split は不規則動詞
2018-12-25 16:49:35 +09:00
10d3b81251 Fix build fails 2018-12-25 13:39:55 +09:00
71dceca225 Merge pull request #3648 from syuilo/l10n_develop
New Crowdin translations
2018-12-25 12:24:26 +09:00
40de631d95 New translations ja-JP.yml (English) 2018-12-25 12:22:01 +09:00
6985c39874 Make activity view in admin scrollable (#3741)
I can't think of any reason why this isnt currently the case as the extra lines are still there, just not displayed, meaning theres no difference in performance/memory usage
Also means that sometimes entries are cut off which is weird
Also, sometimes there is reason to wish to view older entries that may have scrolled off the page/keep reading something which was pushed too far down.
2018-12-25 12:13:50 +09:00
0938ea3964 Use join instead of reduce 2018-12-24 17:02:15 +09:00
4b4c19b242 New translations ja-JP.yml (Korean) 2018-12-24 08:11:46 +09:00
d8620187ec 10.66.2 2018-12-24 05:40:33 +09:00
520849d070 Update translation placeholder (#3735) 2018-12-24 05:36:02 +09:00
b6a028a8ed [API] Fix #3737 2018-12-24 05:31:20 +09:00
7db799a0ac New translations ja-JP.yml (Norwegian) 2018-12-24 01:33:08 +09:00
1ab776c867 New translations ja-JP.yml (Dutch) 2018-12-24 01:33:04 +09:00
f4c9f63548 New translations ja-JP.yml (Japanese, Kansai) 2018-12-24 01:32:57 +09:00
08da9d70cd New translations ja-JP.yml (Spanish) 2018-12-24 01:32:53 +09:00
96173e5c0b New translations ja-JP.yml (Russian) 2018-12-24 01:32:48 +09:00
b37cc70742 New translations ja-JP.yml (Portuguese) 2018-12-24 01:32:43 +09:00
96ee4299c7 New translations ja-JP.yml (Polish) 2018-12-24 01:32:38 +09:00
6072b02f12 New translations ja-JP.yml (Korean) 2018-12-24 01:32:33 +09:00
6ccbca0741 New translations ja-JP.yml (Italian) 2018-12-24 01:32:29 +09:00
360394fd5c New translations ja-JP.yml (German) 2018-12-24 01:32:24 +09:00
dcb45aa953 New translations ja-JP.yml (French) 2018-12-24 01:32:20 +09:00
a8fcc1aad9 New translations ja-JP.yml (English) 2018-12-24 01:32:15 +09:00
4d69cd86f1 New translations ja-JP.yml (Chinese Simplified) 2018-12-24 01:32:11 +09:00
6e14e58b89 New translations ja-JP.yml (Catalan) 2018-12-24 01:32:06 +09:00
af5839bb59 Fix translation location (#3734) 2018-12-24 01:25:28 +09:00
a53e0d9f73 Fix error in featuredNotes (#3730) 2018-12-23 23:23:56 +09:00
49921f2dcf Fix: can not update remote Misskey user (#3731) 2018-12-23 23:23:17 +09:00
70d2d61b9a New translations ja-JP.yml (French) 2018-12-23 18:11:51 +09:00
9abaf80f6b New translations ja-JP.yml (Chinese Simplified) 2018-12-23 17:51:56 +09:00
25948fc3c9 New translations ja-JP.yml (Chinese Simplified) 2018-12-23 17:42:42 +09:00
6b947c2139 Fix mention links (#3728)
canonical already starts with @, so remove the extra @.
2018-12-23 14:35:18 +09:00
98acf919f1 ダイレクト投稿でユーザーが指定されていなかったらrejectする (#3724) 2018-12-23 04:17:42 +09:00
c9c2853150 ダイレクトでメンションでもユーザーを指定できるように (#3722) 2018-12-23 03:44:18 +09:00
2bc708f8e6 Fix #3717 (#3723) 2018-12-23 03:41:28 +09:00
874b8fc3c2 Fix indent 2018-12-23 03:31:11 +09:00
7d6aac3431 Fix space 2018-12-23 03:27:26 +09:00
e2fc7decad 本文からメンション等を展開しないオプション (#3721) 2018-12-23 03:25:33 +09:00
21bed71f5e Rename PULL_REQUEST_TEMPLATE.md to .github/PULL_REQUEST_TEMPLATE.md 2018-12-22 20:43:44 +09:00
747a5694f8 New translations ja-JP.yml (French) 2018-12-22 13:02:00 +09:00
479a0a2deb New translations ja-JP.yml (French) 2018-12-22 12:52:26 +09:00
14aef6ec89 New translations ja-JP.yml (English) 2018-12-22 01:16:40 +09:00
f0d2b3f449 New translations ja-JP.yml (English) 2018-12-22 01:02:28 +09:00
3b974428fc 10.66.1 2018-12-22 00:59:40 +09:00
580191fb17 Improve MFM bracket matching
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-22 00:44:38 +09:00
be0cb88b6c Fix sharedInbox location (#3711)
* Fix sharedInbox location

* Perform update Following

* Fix comment
2018-12-22 00:12:34 +09:00
95c4e4497e Fix tag not found (#3710) 2018-12-21 21:46:50 +09:00
2ec445f83e 10.66.0 2018-12-21 16:26:46 +09:00
51b915428e [Client] Fix #3693 2018-12-21 16:22:34 +09:00
1395cf89ce Feed (#3698)
* wip

* Implement feed

* Update feed.ts

* Update index.ts

* Update feed.ts
2018-12-21 11:54:39 +09:00
2a8f984db7 Fix comment 2018-12-21 11:28:30 +09:00
decf2d396f Fix processing icon (#3705) 2018-12-21 02:30:49 +09:00
f7964da899 Fix: ap/show does not return on error (#3704) 2018-12-21 00:09:02 +09:00
c8607ff7b6 Tune polls/recommendation (#3703) 2018-12-20 22:56:12 +09:00
e9f8897fe2 Refactor MFM
Co-authored-by: syuilo syuilotan@yahoo.co.jp
2018-12-20 19:42:10 +09:00
e0b107a3a0 Fix overlap of birthday label on datepicker (#3697) 2018-12-20 17:01:29 +09:00
abf2c89931 New translations ja-JP.yml (Korean) 2018-12-20 07:51:43 +09:00
1d3e6a7197 10.65.0 2018-12-20 04:37:47 +09:00
288bf195e9 New translations ja-JP.yml (English) 2018-12-20 04:22:50 +09:00
7e3cc11cc4 New translations ja-JP.yml (Norwegian) 2018-12-20 04:13:09 +09:00
4e07e94af0 New translations ja-JP.yml (Dutch) 2018-12-20 04:13:03 +09:00
9cb49c9204 New translations ja-JP.yml (Japanese, Kansai) 2018-12-20 04:12:59 +09:00
580dd729e5 New translations ja-JP.yml (Spanish) 2018-12-20 04:12:54 +09:00
49ab77c86e New translations ja-JP.yml (Russian) 2018-12-20 04:12:49 +09:00
f98914b9f1 New translations ja-JP.yml (Portuguese) 2018-12-20 04:12:43 +09:00
f3f3599b28 New translations ja-JP.yml (Polish) 2018-12-20 04:12:38 +09:00
f67b1beee4 New translations ja-JP.yml (Korean) 2018-12-20 04:12:32 +09:00
8395d0f1ba New translations ja-JP.yml (Italian) 2018-12-20 04:12:27 +09:00
af203bee93 New translations ja-JP.yml (German) 2018-12-20 04:12:23 +09:00
760fb79dad New translations ja-JP.yml (French) 2018-12-20 04:12:18 +09:00
ee9d4119c2 New translations ja-JP.yml (English) 2018-12-20 04:12:13 +09:00
90027efcbf New translations ja-JP.yml (Chinese Simplified) 2018-12-20 04:12:07 +09:00
1848de1dc4 New translations ja-JP.yml (Catalan) 2018-12-20 04:11:58 +09:00
1c93fcb1c4 Fix #3683 2018-12-20 04:11:10 +09:00
e3389e7899 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-20 04:08:22 +09:00
454632d785 Resolve #3687 2018-12-20 04:08:13 +09:00
c9bca7dc85 Update CONTRIBUTING.md 2018-12-20 03:44:19 +09:00
710ba526fa Better cw detection 2018-12-20 03:22:27 +09:00
aa47b6732d [Doc] Clean up 2018-12-20 03:19:44 +09:00
20f83420ca Update CONTRIBUTING.md 2018-12-20 03:02:19 +09:00
d09a68ef11 Update CONTRIBUTING.md 2018-12-20 03:01:02 +09:00
b545be5799 Fix wrong comment 2018-12-20 02:47:24 +09:00
4fc377584f Fix tag length limit from AP (#3688) 2018-12-20 02:20:56 +09:00
a5f09c90dd [Client] Resolve #3686 2018-12-20 01:09:35 +09:00
ba407c3eb0 New translations ja-JP.yml (French) 2018-12-20 01:03:08 +09:00
d059d7f972 open処理中はopenの処理をしないように (#3661)
* autocomplettimeout

* fix

* fix

* Update autocomplete.ts

* Update autocomplete.ts
2018-12-20 00:02:28 +09:00
c03e2dfbc0 Change naming (#3678)
* Change naming

* x to a
2018-12-19 22:38:27 +09:00
45c5e7b967 Hide hidden contents in welcome timeline (#3682) 2018-12-19 22:18:58 +09:00
c81a94ff75 Resolve #3676 (#3677) 2018-12-19 21:20:25 +09:00
acc6f54557 Update remote Emoji (#3680) 2018-12-19 21:19:43 +09:00
8025b121af Add Predicate type 2018-12-19 17:08:09 +09:00
78ec06bda3 Add relation types 2018-12-19 17:00:07 +09:00
6ef83d9c59 Update deck.notes.vue 2018-12-19 11:23:46 +09:00
fca4ceef21 [Client] デッキのTLにUIの動きを減らすオプションが適用されていなかったのを修正 2018-12-19 11:22:27 +09:00
00f979f0e6 Fix bug 2018-12-19 11:16:29 +09:00
556677be7a Refactor 2018-12-19 10:23:57 +09:00
624fd093f2 Fix comment 2018-12-19 10:02:58 +09:00
2ee438dece Add comments for prelude/array.ts 2018-12-19 09:54:45 +09:00
534de24406 Use consistent naming convention 2018-12-19 09:14:05 +09:00
014edce1b9 New translations ja-JP.yml (Korean) 2018-12-19 08:52:01 +09:00
ac1f3de4c6 New translations ja-JP.yml (Norwegian) 2018-12-19 07:33:01 +09:00
dced228cb0 New translations ja-JP.yml (Dutch) 2018-12-19 07:32:55 +09:00
a92244cc12 New translations ja-JP.yml (Japanese, Kansai) 2018-12-19 07:32:50 +09:00
0717688933 New translations ja-JP.yml (Spanish) 2018-12-19 07:32:43 +09:00
87d54b7d40 New translations ja-JP.yml (Russian) 2018-12-19 07:32:36 +09:00
ed51f5c7de New translations ja-JP.yml (Portuguese) 2018-12-19 07:32:31 +09:00
66e2db0d52 New translations ja-JP.yml (Polish) 2018-12-19 07:32:26 +09:00
03be4826df New translations ja-JP.yml (Korean) 2018-12-19 07:32:22 +09:00
c9d5aef04f New translations ja-JP.yml (Italian) 2018-12-19 07:32:18 +09:00
106cb3fe3e New translations ja-JP.yml (German) 2018-12-19 07:32:12 +09:00
48320f8536 New translations ja-JP.yml (French) 2018-12-19 07:32:08 +09:00
1a0845dc0a New translations ja-JP.yml (English) 2018-12-19 07:32:04 +09:00
185d09f3ed New translations ja-JP.yml (Chinese Simplified) 2018-12-19 07:32:00 +09:00
8e25fb6cb7 New translations ja-JP.yml (Catalan) 2018-12-19 07:31:55 +09:00
e88ce1746d リスト関連の操作を強化
Resolve #2069
Resolve #2051
Resolve #2807
Resolve #3647
2018-12-19 07:22:01 +09:00
b8aad35009 Fix error 2018-12-19 06:47:47 +09:00
47bd485a39 Clean up 2018-12-19 06:09:31 +09:00
ad869d7469 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-19 06:05:47 +09:00
d15cce5337 [Client] Show more images 2018-12-19 06:05:44 +09:00
37daff6d61 [Client] Fix #2764 2018-12-19 06:04:59 +09:00
5417e40f59 Send original URL for quote (#3668) 2018-12-19 05:07:54 +09:00
0fed33bfdb Create PULL_REQUEST_TEMPLATE.md (#3552)
* Create PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md
2018-12-19 04:48:49 +09:00
5dddc75d09 Add AP emojis endpoint (#3667) 2018-12-19 04:23:08 +09:00
081578c604 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-19 01:11:08 +09:00
6c47bf5b76 [Client] Resolve #3662 2018-12-19 01:10:53 +09:00
936bb1bcd0 New translations ja-JP.yml (Norwegian) 2018-12-19 01:04:21 +09:00
d5241d9a3e New translations ja-JP.yml (Dutch) 2018-12-19 01:04:15 +09:00
05b4430c92 New translations ja-JP.yml (Japanese, Kansai) 2018-12-19 01:04:09 +09:00
292e911de2 New translations ja-JP.yml (Spanish) 2018-12-19 01:04:04 +09:00
1c4ba2c037 New translations ja-JP.yml (Russian) 2018-12-19 01:03:59 +09:00
452db13d0c New translations ja-JP.yml (Portuguese) 2018-12-19 01:03:54 +09:00
c3f64b395b New translations ja-JP.yml (Polish) 2018-12-19 01:03:49 +09:00
3fa6bf93a4 New translations ja-JP.yml (Korean) 2018-12-19 01:03:44 +09:00
a13d76bec5 New translations ja-JP.yml (Italian) 2018-12-19 01:03:39 +09:00
05cee078d0 New translations ja-JP.yml (German) 2018-12-19 01:03:33 +09:00
706d3f3f95 New translations ja-JP.yml (French) 2018-12-19 01:03:27 +09:00
c5cf034b5d New translations ja-JP.yml (English) 2018-12-19 01:03:22 +09:00
3a04aa93f9 New translations ja-JP.yml (Chinese Simplified) 2018-12-19 01:03:16 +09:00
838cdbedbd New translations ja-JP.yml (Catalan) 2018-12-19 01:03:09 +09:00
9e85291cd3 Add example nginx configuration (#3659)
* Sample Nginx configuration

* nginxによせる

* 非Debian系ではsites-enabledがない
2018-12-19 01:00:57 +09:00
7f77517fc8 [Client] Resolve #3658 2018-12-19 00:57:28 +09:00
b2f288dcac [Client] Fix #3657 2018-12-19 00:45:00 +09:00
52b59e9d7b [Client] Fix #3655 2018-12-19 00:41:53 +09:00
80c74b1fa7 Improve readability 2018-12-19 00:40:29 +09:00
91811ea500 Clean up 2018-12-19 00:40:13 +09:00
57150fd910 Improve readability 2018-12-19 00:39:28 +09:00
cddbbdf5d0 clean up 2018-12-19 00:39:04 +09:00
423dc2349b [Client] Improve performance 2018-12-19 00:25:35 +09:00
5229bbd55d New translations ja-JP.yml (Korean) 2018-12-18 07:55:13 +09:00
28311b9a2b New translations ja-JP.yml (French) 2018-12-17 23:02:47 +09:00
663d17a485 New translations ja-JP.yml (French) 2018-12-17 22:54:39 +09:00
08d005dfd9 New translations ja-JP.yml (French) 2018-12-17 22:44:05 +09:00
02edbc131b New translations ja-JP.yml (French) 2018-12-17 22:33:42 +09:00
0556a2a2da Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-17 20:18:09 +09:00
65d943e42a Fix #3646 2018-12-17 20:17:21 +09:00
3bcb344ecb Re: #3457 (#3614)
* Update parser.ts

* Update user.ts

* Update search.ts

* Update parser.ts

* Update parser.ts

* Update parser.ts

* Update parser.ts

* Update parser.ts

* Update parser.ts

* Update mfm.ts

* Update parser.ts

* Merge branch 'develop' into 3440-mk2

* Fix typo

* Update parser.ts

* Update mfm.ts

* Update mfm.ts
2018-12-17 19:11:38 +09:00
82d721d60b Refactor Reversi (#3584)
* Update core.ts

* Update core.ts

* Create functional-syntax.ts

* Update core.ts

* Update functional-syntax.ts

* Update core.ts

* Delete functional-syntax.ts
2018-12-17 19:10:38 +09:00
48dc56e834 10.64.2 2018-12-17 17:27:07 +09:00
2c33bd6e31 Update README.md [AUTOGEN] (#3641) 2018-12-17 17:26:02 +09:00
b6524616bc Clean up 2018-12-17 17:21:45 +09:00
7e2b70f912 [Client] UIの動きを減らすオプションが一部のアニメーションに適用されなかったのを修正
Resolve #3632
2018-12-17 17:21:36 +09:00
4f071a66b6 10.64.1 2018-12-17 03:33:22 +09:00
39f2303429 Merge pull request #3631 from syuilo/l10n_develop
New Crowdin translations
2018-12-17 03:31:49 +09:00
cacf072027 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-17 03:31:31 +09:00
6ab1fdfe1a Update README.md [AUTOGEN] (#3639) 2018-12-17 03:31:19 +09:00
6e5c93f926 [Client] Add animation 🎨 2018-12-17 03:29:57 +09:00
1670737075 [API] Resolve #3637 2018-12-17 01:43:34 +09:00
fee235c4e4 Update README.md 2018-12-16 17:24:52 +09:00
7a39d489f2 New translations ja-JP.yml (Norwegian) 2018-12-16 16:23:07 +09:00
7c634218d1 New translations ja-JP.yml (Dutch) 2018-12-16 16:23:02 +09:00
2704c5be73 New translations ja-JP.yml (Japanese, Kansai) 2018-12-16 16:22:58 +09:00
489b51ba9f New translations ja-JP.yml (Spanish) 2018-12-16 16:22:52 +09:00
21807c29f1 New translations ja-JP.yml (Russian) 2018-12-16 16:22:48 +09:00
3bc62fe3eb New translations ja-JP.yml (Portuguese) 2018-12-16 16:22:43 +09:00
ba0e3c4a5f New translations ja-JP.yml (Polish) 2018-12-16 16:22:38 +09:00
9ec1fb5e37 New translations ja-JP.yml (Korean) 2018-12-16 16:22:33 +09:00
d708409462 New translations ja-JP.yml (Italian) 2018-12-16 16:22:29 +09:00
07d05d4f86 New translations ja-JP.yml (German) 2018-12-16 16:22:24 +09:00
bbdb2ebb40 New translations ja-JP.yml (French) 2018-12-16 16:22:20 +09:00
f7908ba098 New translations ja-JP.yml (English) 2018-12-16 16:22:15 +09:00
f2fda3075e New translations ja-JP.yml (Chinese Simplified) 2018-12-16 16:22:11 +09:00
1338a68979 New translations ja-JP.yml (Catalan) 2018-12-16 16:22:05 +09:00
e7da505fb3 [Client] Bug fix and clean up 2018-12-16 16:12:41 +09:00
5a9228372f New translations ja-JP.yml (Korean) 2018-12-16 13:31:39 +09:00
c4a6ba9097 New translations ja-JP.yml (Korean) 2018-12-16 12:13:35 +09:00
d5871b408b 10.64.0 2018-12-16 11:36:44 +09:00
7b3338e373 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-16 11:32:30 +09:00
d18ee12d2f [Client] Add some animations 🎨 2018-12-16 11:32:20 +09:00
ca9cc97940 Update minio requirement from 7.0.1 to 7.0.2 (#3606)
Updates the requirements on [minio](https://github.com/minio/minio-js) to permit the latest version.
- [Release notes](https://github.com/minio/minio-js/releases)
- [Commits](https://github.com/minio/minio-js/commits/7.0.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-16 10:30:33 +09:00
a70070ac7d Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-16 10:30:06 +09:00
069d99b320 Update dependency 🚀 2018-12-16 10:29:55 +09:00
37d350dcad Merge pull request #3601 from syuilo/l10n_develop
New Crowdin translations
2018-12-16 10:24:04 +09:00
8653e09b59 [Client] Add particle effect 2018-12-16 10:20:46 +09:00
7cd2d59576 [Client] Fix bug 2018-12-16 09:03:07 +09:00
a0839de38f Add 'twitter:creator' meta data in user pages (#3618)
* Update user.pug

* Update user.pug

* Update note.pug

* Update user.pug

* Update note.pug

* Update note.pug
2018-12-16 08:49:38 +09:00
b7c5c71c6f [Client] Resolve #2951
あと検索フォームでサジェストを有効に
2018-12-16 08:45:10 +09:00
adab0adbdd New translations ja-JP.yml (English) 2018-12-16 07:31:43 +09:00
2faa58928f Format uptimes (#3629)
* Format uptime

* 逆だわ

* ザ

* 1個多い

* Fix comment
2018-12-16 07:06:43 +09:00
ffb80efe21 Return 404 for invalid Object ID (#3627)
* Update activitypub.ts

* Update activitypub.ts

* Update featured.ts

* Update followers.ts

* Update following.ts

* Update outbox.ts

* Fix following, outbox
2018-12-16 01:44:59 +09:00
6f959218ef Update analog-clock.vue 2018-12-15 23:34:46 +09:00
be1125dcb9 OGP向けにインスタンスのバナー画像を提供するように 2018-12-15 23:19:04 +09:00
9ab34c2301 Update index.ts (#3624) 2018-12-15 20:54:34 +09:00
0166d81d9e New translations ja-JP.yml (Polish) 2018-12-15 18:31:49 +09:00
0b26efbd2f New translations ja-JP.yml (French) 2018-12-15 18:01:50 +09:00
2cbaedf946 New translations ja-JP.yml (Norwegian) 2018-12-15 17:13:24 +09:00
b66924fbe8 New translations ja-JP.yml (Dutch) 2018-12-15 17:13:19 +09:00
8c91148954 New translations ja-JP.yml (Japanese, Kansai) 2018-12-15 17:13:13 +09:00
be0eff3dda New translations ja-JP.yml (Spanish) 2018-12-15 17:13:08 +09:00
85903ac9c6 New translations ja-JP.yml (Russian) 2018-12-15 17:13:04 +09:00
dbdd778dc7 New translations ja-JP.yml (Portuguese) 2018-12-15 17:12:59 +09:00
fc50dfd8d5 New translations ja-JP.yml (Polish) 2018-12-15 17:12:54 +09:00
f444e132ee New translations ja-JP.yml (Korean) 2018-12-15 17:12:50 +09:00
68f562c323 New translations ja-JP.yml (Italian) 2018-12-15 17:12:44 +09:00
820ea69613 New translations ja-JP.yml (German) 2018-12-15 17:12:40 +09:00
6f4b3853a1 New translations ja-JP.yml (French) 2018-12-15 17:12:33 +09:00
a706ad0e80 New translations ja-JP.yml (English) 2018-12-15 17:12:26 +09:00
820116affc New translations ja-JP.yml (Chinese Simplified) 2018-12-15 17:12:22 +09:00
52650342be New translations ja-JP.yml (Catalan) 2018-12-15 17:12:16 +09:00
85ddabdc65 Update ja-JP.yml 2018-12-15 17:09:05 +09:00
0730cc4fa4 🎨 2018-12-15 17:01:19 +09:00
17b6ab0ef0 🎨 2018-12-15 16:48:28 +09:00
4e208b85bb New translations ja-JP.yml (Polish) 2018-12-15 08:51:47 +09:00
00f8b29f6d New translations ja-JP.yml (Polish) 2018-12-15 08:41:45 +09:00
9cf0fcadb1 New translations ja-JP.yml (Polish) 2018-12-15 08:31:50 +09:00
c595efeead New translations ja-JP.yml (Polish) 2018-12-15 08:21:59 +09:00
b56c6793a1 New translations ja-JP.yml (Polish) 2018-12-15 08:12:15 +09:00
ebceffba1e Resolve #2165 2018-12-15 00:09:04 +09:00
3ae42d9b85 🎨 2018-12-14 23:35:07 +09:00
796237b3c6 Implement admin drive page 2018-12-14 19:09:11 +09:00
cb7a97ee4c New translations ja-JP.yml (Korean) 2018-12-14 07:32:03 +09:00
0cf758b6d1 New translations ja-JP.yml (French) 2018-12-14 02:03:02 +09:00
d28fca320e New translations ja-JP.yml (French) 2018-12-14 01:42:26 +09:00
8bd17703c3 Fix reversi settings bot switch (#3609) 2018-12-13 13:40:10 +09:00
a78eebc43f ていねい (#3608)
「古い」という表現でキレる方もいるので、丁寧な言葉づかいに変更
2018-12-13 09:42:14 +09:00
79fb5246df New translations ja-JP.yml (English) 2018-12-13 08:01:55 +09:00
458b8c78dc New translations ja-JP.yml (French) 2018-12-13 04:12:31 +09:00
64e0cbd6fc New translations ja-JP.yml (French) 2018-12-13 04:04:32 +09:00
7fe937026b Update html.ts (#3603) 2018-12-13 01:33:18 +09:00
656cec65b9 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-13 01:18:29 +09:00
8045bbff1c 🎨 2018-12-13 01:18:17 +09:00
c1a7a21746 Hide unavailable integration settings (#3604) 2018-12-12 23:21:02 +09:00
f3ee63fcbe Update url-preview.vue (#3602) 2018-12-12 21:19:52 +09:00
7645c212a3 No @ for account name (#3586)
* No @ for account name

* Use @ for GitHub
2018-12-12 17:33:08 +09:00
8b38e2ea58 New translations ja-JP.yml (Norwegian) 2018-12-12 13:12:57 +09:00
c9eb6a8919 New translations ja-JP.yml (Dutch) 2018-12-12 13:12:53 +09:00
9a41fd4734 New translations ja-JP.yml (Japanese, Kansai) 2018-12-12 13:12:47 +09:00
70d96ee076 New translations ja-JP.yml (Spanish) 2018-12-12 13:12:43 +09:00
3b6fb3959b New translations ja-JP.yml (Russian) 2018-12-12 13:12:36 +09:00
484d705320 New translations ja-JP.yml (Portuguese) 2018-12-12 13:12:30 +09:00
786031be66 New translations ja-JP.yml (Polish) 2018-12-12 13:12:25 +09:00
bc0027ce43 New translations ja-JP.yml (Korean) 2018-12-12 13:12:21 +09:00
3e7c6d9bdc New translations ja-JP.yml (Italian) 2018-12-12 13:12:15 +09:00
5463e3e55e New translations ja-JP.yml (German) 2018-12-12 13:12:11 +09:00
84a880086e New translations ja-JP.yml (French) 2018-12-12 13:12:06 +09:00
89419b7136 New translations ja-JP.yml (English) 2018-12-12 13:12:01 +09:00
9106ec74f7 New translations ja-JP.yml (Chinese Simplified) 2018-12-12 13:11:57 +09:00
ebf9a0921d New translations ja-JP.yml (Catalan) 2018-12-12 13:11:53 +09:00
c237f49016 10.63.1 2018-12-12 13:07:16 +09:00
709290d2da Improve mention display 2018-12-12 13:06:05 +09:00
eb3180f3b6 Fix bug 2018-12-12 13:05:37 +09:00
681997509c Merge pull request #3599 from syuilo/l10n_develop
New Crowdin translations
2018-12-12 12:22:59 +09:00
79ff5888fd Fix htmlToMfm (#3600) 2018-12-12 11:47:07 +09:00
9ee9cf8d81 Fix URL after deleting remote file (#3597)
* Fix URL after deleting remote file

* expired only

* delete space
2018-12-12 11:46:35 +09:00
ee3c0f6f18 Update settings.2fa.vue (#3593) 2018-12-12 10:07:30 +09:00
9dd463bff4 New translations ja-JP.yml (Korean) 2018-12-12 07:53:00 +09:00
df297d0031 Fix fields (#3596) 2018-12-12 02:46:40 +09:00
d18d1cb958 Update settings.2fa.vue (#3595) 2018-12-11 23:41:27 +09:00
5bc0570888 Update CHANGELOG.md 2018-12-11 21:31:58 +09:00
8b43d75eaf 10.63.0 2018-12-11 21:20:26 +09:00
89b37bd73d Merge pull request #3571 from syuilo/l10n_develop
New Crowdin translations
2018-12-11 21:19:57 +09:00
69f246ce7f Fix bug 2018-12-11 21:17:57 +09:00
6a97f0b7f6 [Client] Fix bug 2018-12-11 20:59:25 +09:00
d885b872f3 Fix bug 2018-12-11 20:47:07 +09:00
125849673a Use for-of instead of forEach (#3583)
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2018-12-11 20:36:55 +09:00
30c53e9ee0 Fix error 2018-12-11 20:33:52 +09:00
981fb9e8f3 New translations ja-JP.yml (English) 2018-12-11 20:32:25 +09:00
9fac22d880 New translations ja-JP.yml (Norwegian) 2018-12-11 20:23:11 +09:00
b8f034064a New translations ja-JP.yml (Dutch) 2018-12-11 20:23:07 +09:00
6068227434 New translations ja-JP.yml (Japanese, Kansai) 2018-12-11 20:23:02 +09:00
69cda49c88 New translations ja-JP.yml (Spanish) 2018-12-11 20:22:58 +09:00
039d821d20 New translations ja-JP.yml (Russian) 2018-12-11 20:22:53 +09:00
44d93bc408 New translations ja-JP.yml (Portuguese) 2018-12-11 20:22:48 +09:00
cfa76ac6f9 New translations ja-JP.yml (Polish) 2018-12-11 20:22:44 +09:00
0ec2d16522 New translations ja-JP.yml (Korean) 2018-12-11 20:22:39 +09:00
6bcac1fe14 New translations ja-JP.yml (Italian) 2018-12-11 20:22:35 +09:00
bc9427d000 New translations ja-JP.yml (German) 2018-12-11 20:22:30 +09:00
07c043361e New translations ja-JP.yml (French) 2018-12-11 20:22:26 +09:00
e676a9a501 New translations ja-JP.yml (English) 2018-12-11 20:22:22 +09:00
09e654c6d2 New translations ja-JP.yml (Chinese Simplified) 2018-12-11 20:22:17 +09:00
549cb1ba87 New translations ja-JP.yml (Catalan) 2018-12-11 20:22:13 +09:00
c633827e5e Update typescript requirement from 3.1.6 to 3.2.2 (#3585)
Updates the requirements on [typescript](https://github.com/Microsoft/TypeScript) to permit the latest version.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/commits/v3.2.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-11 20:21:03 +09:00
08142ead67 Resolve #3581 (#3589)
* Update ja-JP.yml

* Create 404.vue

* Update script.ts

* Update script.ts

* Update script.ts

* Update script.ts

* Update script.ts

* Update script.ts

* Update 404.vue

* Update meta.ts

* Update instance.vue

* Update update-meta.ts
2018-12-11 20:19:13 +09:00
638d81b66e Show user fields (#3590) 2018-12-11 20:18:12 +09:00
4c83c2f64d New translations ja-JP.yml (Norwegian) 2018-12-11 18:25:19 +09:00
bf56f90fdc New translations ja-JP.yml (Dutch) 2018-12-11 18:25:14 +09:00
d8412aad7a New translations ja-JP.yml (Japanese, Kansai) 2018-12-11 18:25:09 +09:00
c136741710 New translations ja-JP.yml (Spanish) 2018-12-11 18:25:05 +09:00
4fe8454da0 New translations ja-JP.yml (Russian) 2018-12-11 18:25:00 +09:00
3f2161dadd New translations ja-JP.yml (Portuguese) 2018-12-11 18:24:55 +09:00
3db516aa1a New translations ja-JP.yml (Polish) 2018-12-11 18:24:50 +09:00
367bbbe605 New translations ja-JP.yml (Korean) 2018-12-11 18:24:45 +09:00
5b70ff561c New translations ja-JP.yml (Italian) 2018-12-11 18:24:40 +09:00
4486527e5d New translations ja-JP.yml (German) 2018-12-11 18:24:36 +09:00
147e23d332 New translations ja-JP.yml (French) 2018-12-11 18:24:31 +09:00
ee20e6950e New translations ja-JP.yml (English) 2018-12-11 18:24:26 +09:00
1d217154ef New translations ja-JP.yml (Chinese Simplified) 2018-12-11 18:24:22 +09:00
27d304a1ab New translations ja-JP.yml (Catalan) 2018-12-11 18:24:17 +09:00
1d1a373ca8 Update ja-JP.yml 2018-12-11 18:12:18 +09:00
bca3c6f8bf 🎨 2018-12-11 04:29:47 +09:00
d83d661535 New translations ja-JP.yml (French) 2018-12-11 00:02:10 +09:00
e16906afc3 Refactor /.autogen (#3551)
* Create patreon.jq

* Create check_pr.jq

* Rename check_pr.jq to .autogen/check_pr.jq

* Create next_url.jq

* Update autogen.sh

* Rename autogen.sh to update_readme_patreon.sh
2018-12-10 23:22:52 +09:00
a6dc0f3684 Fix #3325 2018-12-10 23:13:50 +09:00
6120474548 Use && and || to eliminate if-statement (#3559)
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2018-12-10 17:08:48 +09:00
121dd86299 [Client] Fix #3396 2018-12-10 12:31:04 +09:00
5251d9f668 New translations ja-JP.yml (Korean) 2018-12-10 07:32:10 +09:00
7ae3f569de New translations ja-JP.yml (Polish) 2018-12-10 04:42:02 +09:00
142ebead59 New translations ja-JP.yml (Polish) 2018-12-10 04:31:59 +09:00
e196086c64 New translations ja-JP.yml (Polish) 2018-12-10 04:11:59 +09:00
8c6ed98505 New translations ja-JP.yml (English) 2018-12-10 03:51:43 +09:00
98a2953c9c Fix bug 2018-12-10 01:44:43 +09:00
61d224695b New translations ja-JP.yml (Polish) 2018-12-10 01:02:02 +09:00
6967def6c8 Use primitive type string instead of String (#3578) 2018-12-09 23:26:32 +09:00
393c6aa79a 10.62.2 2018-12-09 23:15:06 +09:00
fc05540404 Fix bug? 2018-12-09 23:12:08 +09:00
1c589c7c18 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-09 23:10:06 +09:00
284df27435 Use camelCase 2018-12-09 23:10:02 +09:00
68c0600a5c New translations ja-JP.yml (Polish) 2018-12-09 22:12:14 +09:00
b8163bd0e1 New translations ja-JP.yml (Polish) 2018-12-09 22:02:27 +09:00
8c25b9dfad New translations ja-JP.yml (Polish) 2018-12-09 21:51:59 +09:00
bf34f67583 New translations ja-JP.yml (Polish) 2018-12-09 21:42:34 +09:00
0c63f410d6 New translations ja-JP.yml (Polish) 2018-12-09 21:32:06 +09:00
069077ace4 New translations ja-JP.yml (Polish) 2018-12-09 21:22:17 +09:00
5be947ea4d New translations ja-JP.yml (Polish) 2018-12-09 21:12:01 +09:00
b41ffa75b7 New translations ja-JP.yml (Polish) 2018-12-09 21:02:34 +09:00
cd80e02ebf Re: #3556 (#3568)
* Update index.ts

* Update index.ts
2018-12-09 18:39:13 +09:00
dffcefb81f Fix mobile following/followed list (#3574) 2018-12-09 16:00:32 +09:00
48df08d4dc New translations ja-JP.yml (Norwegian) 2018-12-09 14:32:46 +09:00
4de9a08e55 New translations ja-JP.yml (Dutch) 2018-12-09 14:32:41 +09:00
3f46b5259b New translations ja-JP.yml (Japanese, Kansai) 2018-12-09 14:32:35 +09:00
2faa8ea97c New translations ja-JP.yml (Spanish) 2018-12-09 14:32:30 +09:00
514690cf18 New translations ja-JP.yml (Russian) 2018-12-09 14:32:26 +09:00
f4f78c1898 New translations ja-JP.yml (Portuguese) 2018-12-09 14:32:22 +09:00
2d24befb15 New translations ja-JP.yml (Polish) 2018-12-09 14:32:17 +09:00
184d88838c New translations ja-JP.yml (Korean) 2018-12-09 14:32:11 +09:00
4490503d59 New translations ja-JP.yml (Italian) 2018-12-09 14:32:06 +09:00
99750435ae New translations ja-JP.yml (German) 2018-12-09 14:32:02 +09:00
fae920e578 New translations ja-JP.yml (French) 2018-12-09 14:31:56 +09:00
0243b6d13b New translations ja-JP.yml (English) 2018-12-09 14:31:51 +09:00
12bc725d68 New translations ja-JP.yml (Chinese Simplified) 2018-12-09 14:31:46 +09:00
b1a7b781ec New translations ja-JP.yml (Catalan) 2018-12-09 14:31:40 +09:00
7e1cad3e12 Improve tags settings (#3569) 2018-12-09 14:24:24 +09:00
fd3f4c37a0 Merge pull request #3565 from syuilo/l10n_develop
New Crowdin translations
2018-12-09 13:28:48 +09:00
3acd2e0f0c 🎨 2018-12-09 13:25:46 +09:00
b1b5a795c8 Revert "Eliminate if-statement (#3556)"
This reverts commit fb8b0c291d.
2018-12-09 13:21:42 +09:00
197e2c8377 #2501 (#3567)
* refactor mfm/html

* fix

* fix

* https://github.com/syuilo/misskey/pull/3567#discussion_r240023301
2018-12-09 13:15:32 +09:00
fb8b0c291d Eliminate if-statement (#3556) 2018-12-09 13:13:00 +09:00
706d47ec32 #2501 (#3560)
* #2501

* Update stream.ts
2018-12-09 13:09:31 +09:00
4eab2b3654 New translations ja-JP.yml (Korean) 2018-12-09 10:55:30 +09:00
0a78f560e0 New translations ja-JP.yml (Polish) 2018-12-09 09:52:03 +09:00
f6f79fb388 Refactor getChildrenCount (#3554)
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2018-12-09 09:44:51 +09:00
34235d4d44 Refactor getTextCount (#3553)
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2018-12-09 09:44:24 +09:00
21842ec190 New translations ja-JP.yml (Polish) 2018-12-09 09:42:15 +09:00
026e1cc7e7 New translations ja-JP.yml (Polish) 2018-12-09 09:32:08 +09:00
c65f4eebaf New translations ja-JP.yml (Polish) 2018-12-09 09:21:57 +09:00
17baf8770a Eliminate if-statement (#3564) 2018-12-09 03:45:47 +09:00
01f60edb17 Eliminate duplicated condition on if-statement (#3563) 2018-12-09 03:45:07 +09:00
15b11e59f4 Eliminate if-statement (#3562) 2018-12-09 03:44:37 +09:00
a2db4db963 Eliminate if-statement (#3561)
Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2018-12-09 03:43:58 +09:00
e87b9cc019 Use && to eliminate if-statement (#3558) 2018-12-09 03:41:18 +09:00
54cb94db1d Eliminate if-statement (#3555) 2018-12-09 03:40:40 +09:00
1de8e1eeb1 #2501 2018-12-09 01:05:55 +09:00
1d8fb65959 Fix follow duplicate (#3548)
* フォローとリクエスト両方存在しても解除する

* 既にフォローしてても承認できるように
2018-12-08 18:55:00 +09:00
28482627f7 improve user-integration display in the user page (#3541)
* improve user-integration display in the user page

* delete unnecessary comma
2018-12-08 16:59:29 +09:00
4ee7df887d 10.62.1 2018-12-08 10:58:13 +09:00
b040571fa8 Merge pull request #3481 from syuilo/l10n_develop
New Crowdin translations
2018-12-08 10:56:26 +09:00
fbd5e4bab8 New translations ja-JP.yml (English) 2018-12-08 10:55:59 +09:00
498bdd1cd0 New translations ja-JP.yml (Norwegian) 2018-12-08 10:42:58 +09:00
102cca8971 New translations ja-JP.yml (Dutch) 2018-12-08 10:42:53 +09:00
e710ad4c5f New translations ja-JP.yml (Japanese, Kansai) 2018-12-08 10:42:49 +09:00
f64f6fd603 New translations ja-JP.yml (Spanish) 2018-12-08 10:42:45 +09:00
5995020c64 New translations ja-JP.yml (Russian) 2018-12-08 10:42:38 +09:00
2dc86ec1ac New translations ja-JP.yml (Portuguese) 2018-12-08 10:42:32 +09:00
d50bcbdb23 New translations ja-JP.yml (Polish) 2018-12-08 10:42:27 +09:00
19afd0ba61 New translations ja-JP.yml (Korean) 2018-12-08 10:42:21 +09:00
7a787fa95c New translations ja-JP.yml (Italian) 2018-12-08 10:42:15 +09:00
4e85eb90cb New translations ja-JP.yml (German) 2018-12-08 10:42:09 +09:00
d4474b953e Update diskusage requirement from 0.2.5 to 1.0.0 (#3498)
Updates the requirements on [diskusage](https://github.com/jduncanator/node-diskusage) to permit the latest version.
- [Release notes](https://github.com/jduncanator/node-diskusage/releases)
- [Commits](https://github.com/jduncanator/node-diskusage/commits/1.0.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-08 10:42:07 +09:00
0aaf3d7bd7 New translations ja-JP.yml (French) 2018-12-08 10:42:03 +09:00
02bb2423af New translations ja-JP.yml (English) 2018-12-08 10:41:58 +09:00
e9b25f17af Update autobind-decorator requirement from 2.3.1 to 2.4.0 (#3533)
Updates the requirements on [autobind-decorator](https://github.com/andreypopp/autobind-decorator) to permit the latest version.
- [Release notes](https://github.com/andreypopp/autobind-decorator/releases)
- [Changelog](https://github.com/andreypopp/autobind-decorator/blob/master/CHANGELOG.md)
- [Commits](https://github.com/andreypopp/autobind-decorator/commits/v2.4.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-08 10:41:53 +09:00
96671c5c7e New translations ja-JP.yml (Chinese Simplified) 2018-12-08 10:41:53 +09:00
4fc786f062 New translations ja-JP.yml (Catalan) 2018-12-08 10:41:49 +09:00
51c0cca4ff Update @types/koa-bodyparser requirement from 5.0.1 to 5.0.2 (#3531)
Updates the requirements on [@types/koa-bodyparser](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-08 10:41:42 +09:00
bd344628f6 Update @types/webpack requirement from 4.4.19 to 4.4.20 (#3515)
Updates the requirements on [@types/webpack](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-08 10:41:00 +09:00
48deb35d4b Update server-stats.ts (#3512) 2018-12-08 10:40:45 +09:00
f9792f0d5c Update v-animate-css requirement from 0.0.2 to 0.0.3 (#3532)
Updates the requirements on [v-animate-css](https://github.com/jofftiquez/v-animate-css) to permit the latest version.
- [Release notes](https://github.com/jofftiquez/v-animate-css/releases)
- [Commits](https://github.com/jofftiquez/v-animate-css/commits/v0.0.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-08 10:40:15 +09:00
0157033104 Update file-type requirement from 10.4.0 to 10.6.0 (#3538)
Updates the requirements on [file-type](https://github.com/sindresorhus/file-type) to permit the latest version.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/commits/v10.6.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-08 10:39:17 +09:00
596f92cfcc [Client] Improve cw-button 2018-12-08 10:36:26 +09:00
b2dedf7f98 Add comment 2018-12-08 10:20:43 +09:00
34393ef89f Improve custom emoji parsing (#3539)
* Use MFM parser for extracting emoji in name

* Fix custom emoji regex

* Revert "Fix custom emoji regex"

This reverts commit 4c21caf59753e7653c02f81ddf0cde8c44f48008.
2018-12-08 06:39:15 +09:00
7e11cd3b99 New translations ja-JP.yml (Norwegian) 2018-12-08 06:22:51 +09:00
dd1622296d New translations ja-JP.yml (Dutch) 2018-12-08 06:22:46 +09:00
77cb59a6ac New translations ja-JP.yml (Japanese, Kansai) 2018-12-08 06:22:41 +09:00
a2b60e38a3 New translations ja-JP.yml (Spanish) 2018-12-08 06:22:37 +09:00
f0570bf111 New translations ja-JP.yml (Russian) 2018-12-08 06:22:33 +09:00
b980164318 New translations ja-JP.yml (Portuguese) 2018-12-08 06:22:27 +09:00
3e7ff586a5 New translations ja-JP.yml (Polish) 2018-12-08 06:22:23 +09:00
923bbcbf6b New translations ja-JP.yml (Korean) 2018-12-08 06:22:19 +09:00
8cc85931d6 New translations ja-JP.yml (Italian) 2018-12-08 06:22:14 +09:00
b25522a091 New translations ja-JP.yml (German) 2018-12-08 06:22:10 +09:00
97ae7e9ef4 New translations ja-JP.yml (French) 2018-12-08 06:22:04 +09:00
d25bd65722 New translations ja-JP.yml (English) 2018-12-08 06:21:58 +09:00
f4f98c25f7 New translations ja-JP.yml (Chinese Simplified) 2018-12-08 06:21:55 +09:00
336607568f New translations ja-JP.yml (Catalan) 2018-12-08 06:21:50 +09:00
e2843a5ce4 Resolve #3537 (#3540)
* Resolve #3537

* tune
2018-12-08 06:18:37 +09:00
702875a78e Apply tag length limit from AP (#3536) 2018-12-07 21:01:43 +09:00
0fa8c6afd2 New translations ja-JP.yml (French) 2018-12-07 20:22:26 +09:00
96571866a3 #2593 (mobile) (#3521) 2018-12-07 18:33:09 +09:00
f72b00bec7 Update parser.ts 2018-12-07 18:26:54 +09:00
1e7b5a0a98 Resolve #3529 2018-12-07 17:54:35 +09:00
9f09afc824 Fix bug caused by Chrome 71 (#3535)
* Update emoji.vue

* Update autocomplete.vue

* Update emoji.vue

* Update autocomplete.vue

* Update emoji.vue
2018-12-07 17:21:34 +09:00
93b599dc8e Add user name conversions (#3534)
* Add user name conversions

* add conversion
2018-12-07 11:29:49 +09:00
1c722494de Update README.md [AUTOGEN] (#3527) 2018-12-07 11:27:52 +09:00
a464c8d1d0 New translations ja-JP.yml (Korean) 2018-12-07 07:22:36 +09:00
51362e9a52 New translations ja-JP.yml (Polish) 2018-12-07 07:12:33 +09:00
3c086fe8c7 New translations ja-JP.yml (Polish) 2018-12-07 07:04:28 +09:00
f3b1248bd8 New translations ja-JP.yml (Polish) 2018-12-07 07:02:30 +09:00
4e529ee7d0 New translations ja-JP.yml (Polish) 2018-12-07 06:42:25 +09:00
a2b975a493 New translations ja-JP.yml (Polish) 2018-12-07 06:31:54 +09:00
13055d1496 New translations ja-JP.yml (English) 2018-12-07 00:12:25 +09:00
78b5af4e4f New translations ja-JP.yml (English) 2018-12-07 00:03:51 +09:00
008432e156 lint fix (#3522) 2018-12-06 19:15:09 +09:00
d3d50b2f79 Add missing comma 2018-12-06 17:02:44 +09:00
eefeb4c268 #2593 (desktop) (#3518) 2018-12-06 16:56:24 +09:00
86d4f1981c 10.62.0 2018-12-06 16:35:06 +09:00
7a8e97972c ✌️ 2018-12-06 16:33:35 +09:00
3555213155 Resolve #3519 2018-12-06 16:30:28 +09:00
5d3d8dffd6 Update photo-stream.vue 2018-12-06 16:19:12 +09:00
dea8688c9d Refactor
Use mk-user-name
2018-12-06 16:09:33 +09:00
a235869cfa Refactor
Make mk-user-name component
2018-12-06 11:18:13 +09:00
a8434b3bc5 New translations ja-JP.yml (Norwegian) 2018-12-06 11:14:30 +09:00
f110b2b320 New translations ja-JP.yml (Dutch) 2018-12-06 11:14:26 +09:00
0543cffe00 New translations ja-JP.yml (Japanese, Kansai) 2018-12-06 11:14:19 +09:00
0383cbe43f New translations ja-JP.yml (Spanish) 2018-12-06 11:14:15 +09:00
9dd1203583 New translations ja-JP.yml (Russian) 2018-12-06 11:14:10 +09:00
4eeeaffdee New translations ja-JP.yml (Portuguese) 2018-12-06 11:14:05 +09:00
6f73f3d7a1 New translations ja-JP.yml (Polish) 2018-12-06 11:14:01 +09:00
aa9cd211dd New translations ja-JP.yml (Korean) 2018-12-06 11:13:56 +09:00
3cdf4f01f8 New translations ja-JP.yml (Italian) 2018-12-06 11:13:51 +09:00
d0f84643d8 New translations ja-JP.yml (German) 2018-12-06 11:13:47 +09:00
89707ad436 New translations ja-JP.yml (French) 2018-12-06 11:13:40 +09:00
163d81c1b0 New translations ja-JP.yml (English) 2018-12-06 11:13:36 +09:00
81a7213583 New translations ja-JP.yml (Chinese Simplified) 2018-12-06 11:13:32 +09:00
8f92a07d68 New translations ja-JP.yml (Catalan) 2018-12-06 11:13:27 +09:00
31b30e3dd2 Resolve #3347 , #3349 (#3513)
* Resolve  #3347 , #3349
Make deck columns' width be selectable and flexible

* deckColumnMinwidth --> deckColumnMinWidth

* w-default --> normal

* ✌️
2018-12-06 11:11:46 +09:00
0a1ac12d97 New translations ja-JP.yml (Norwegian) 2018-12-06 10:23:42 +09:00
e800104ac4 New translations ja-JP.yml (Dutch) 2018-12-06 10:23:38 +09:00
05cb94eb77 New translations ja-JP.yml (Japanese, Kansai) 2018-12-06 10:23:33 +09:00
51499e04e0 New translations ja-JP.yml (Spanish) 2018-12-06 10:23:29 +09:00
0c993ef851 New translations ja-JP.yml (Russian) 2018-12-06 10:23:22 +09:00
b27fced30d New translations ja-JP.yml (Portuguese) 2018-12-06 10:23:18 +09:00
2b7da9d98c New translations ja-JP.yml (Polish) 2018-12-06 10:23:14 +09:00
cd66f86f08 New translations ja-JP.yml (Korean) 2018-12-06 10:23:10 +09:00
a2e7cab573 New translations ja-JP.yml (Italian) 2018-12-06 10:23:05 +09:00
f81f7d51c5 New translations ja-JP.yml (German) 2018-12-06 10:23:00 +09:00
7fb640e38f New translations ja-JP.yml (French) 2018-12-06 10:22:54 +09:00
c7561be15f New translations ja-JP.yml (English) 2018-12-06 10:22:50 +09:00
741c81bca9 New translations ja-JP.yml (Chinese Simplified) 2018-12-06 10:22:45 +09:00
1e38528716 New translations ja-JP.yml (Catalan) 2018-12-06 10:22:41 +09:00
58b3be438a Resolve #1872 (#3516) 2018-12-06 10:21:41 +09:00
4522568749 Emoji support in profile (#3514)
* Emoji in profile

* Add emojis to fields
2018-12-06 10:02:04 +09:00
719f9c8c02 New translations ja-JP.yml (Korean) 2018-12-06 08:21:50 +09:00
fe891da886 外部サービス連携情報をPersonのfieldsに乗せて配信する (#3499)
* Update person.ts

* Update person.ts

refs: https://github.com/syuilo/misskey/pull/3499#issuecomment-444484557

* Update person.ts

refs: https://github.com/syuilo/misskey/pull/3499#pullrequestreview-181755475
2018-12-06 00:37:59 +09:00
95b6684cfd New translations ja-JP.yml (English) 2018-12-05 23:02:24 +09:00
66836836ab Add small syntax (#3506) 2018-12-05 20:11:54 +09:00
0db48c778f New translations ja-JP.yml (Norwegian) 2018-12-05 18:59:25 +09:00
13a2f9373c New translations ja-JP.yml (Dutch) 2018-12-05 18:59:19 +09:00
ae4d504392 New translations ja-JP.yml (Japanese, Kansai) 2018-12-05 18:59:15 +09:00
85d240625d New translations ja-JP.yml (Spanish) 2018-12-05 18:59:09 +09:00
db646b0ad9 New translations ja-JP.yml (Russian) 2018-12-05 18:59:04 +09:00
2570d50957 New translations ja-JP.yml (Portuguese) 2018-12-05 18:58:58 +09:00
7faecaadcf New translations ja-JP.yml (Polish) 2018-12-05 18:58:53 +09:00
dcbcb18081 New translations ja-JP.yml (Korean) 2018-12-05 18:58:49 +09:00
f1a61a268e New translations ja-JP.yml (Italian) 2018-12-05 18:58:44 +09:00
d7636355a1 New translations ja-JP.yml (German) 2018-12-05 18:58:37 +09:00
ed2993b3f2 New translations ja-JP.yml (French) 2018-12-05 18:58:30 +09:00
1368c9d182 New translations ja-JP.yml (English) 2018-12-05 18:58:25 +09:00
c5e3c07c16 New translations ja-JP.yml (Chinese Simplified) 2018-12-05 18:58:21 +09:00
f8395166af New translations ja-JP.yml (Catalan) 2018-12-05 18:58:14 +09:00
dc8f4c8d6a Fix #3341 (#3502) 2018-12-05 18:44:57 +09:00
ed4860dfd9 [MFM] Add italic syntax
Resolve #3486
2018-12-05 17:39:26 +09:00
5b0bf98b3c New translations ja-JP.yml (Norwegian) 2018-12-05 17:38:57 +09:00
adffac1000 New translations ja-JP.yml (Dutch) 2018-12-05 17:38:53 +09:00
3a1672b061 New translations ja-JP.yml (Japanese, Kansai) 2018-12-05 17:38:48 +09:00
e7658be6cd New translations ja-JP.yml (Spanish) 2018-12-05 17:38:42 +09:00
63533ad9c8 New translations ja-JP.yml (Russian) 2018-12-05 17:38:37 +09:00
34b431fa1d New translations ja-JP.yml (Portuguese) 2018-12-05 17:38:32 +09:00
958802dbe0 New translations ja-JP.yml (Polish) 2018-12-05 17:38:28 +09:00
8681259597 New translations ja-JP.yml (Korean) 2018-12-05 17:38:21 +09:00
f3d76c06db New translations ja-JP.yml (Italian) 2018-12-05 17:38:17 +09:00
3f32a9bfff New translations ja-JP.yml (German) 2018-12-05 17:38:12 +09:00
c497149765 New translations ja-JP.yml (French) 2018-12-05 17:38:08 +09:00
9159613f2f New translations ja-JP.yml (English) 2018-12-05 17:38:02 +09:00
70e95a5cdb New translations ja-JP.yml (Chinese Simplified) 2018-12-05 17:37:58 +09:00
b0f82749aa New translations ja-JP.yml (Catalan) 2018-12-05 17:37:52 +09:00
20c0690352 [Client] Resolve #3500 2018-12-05 17:27:27 +09:00
006ecec443 New translations ja-JP.yml (French) 2018-12-05 17:12:08 +09:00
effcf0a609 New translations ja-JP.yml (French) 2018-12-05 17:03:30 +09:00
3852d0b2c3 New translations ja-JP.yml (English) 2018-12-05 14:19:33 +09:00
ec67590dbe New translations ja-JP.yml (English) 2018-12-05 14:02:11 +09:00
65d0dbb7d8 Update apexcharts requirement from 2.2.3 to 2.2.4 (#3497)
Updates the requirements on [apexcharts](https://github.com/apexcharts/apexcharts.js) to permit the latest version.
- [Release notes](https://github.com/apexcharts/apexcharts.js/releases)
- [Changelog](https://github.com/apexcharts/apexcharts.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/apexcharts/apexcharts.js/commits/v2.2.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-05 08:33:54 +09:00
f8af57dffb New translations ja-JP.yml (Polish) 2018-12-05 05:49:15 +09:00
2b058be3aa New translations ja-JP.yml (Polish) 2018-12-05 05:32:20 +09:00
67efd30553 New translations ja-JP.yml (Polish) 2018-12-05 05:28:00 +09:00
8d1fdc5aa4 New translations ja-JP.yml (Polish) 2018-12-05 05:12:28 +09:00
d033103163 New translations ja-JP.yml (Polish) 2018-12-05 05:02:39 +09:00
53dff28a21 New translations ja-JP.yml (Korean) 2018-12-05 03:32:18 +09:00
53c37036ee New translations ja-JP.yml (Korean) 2018-12-05 03:27:30 +09:00
133c879a3a New translations ja-JP.yml (Korean) 2018-12-05 03:22:27 +09:00
a105faeaae Update home.photos.vue 2018-12-04 11:02:51 +09:00
13404310a7 Revert "Update switch.vue"
This reverts commit 40520f3997.
2018-12-04 09:42:55 +09:00
2373b114bf Update vue-svg-inline-loader requirement from 1.2.2 to 1.2.4 (#3493)
Updates the requirements on [vue-svg-inline-loader](https://github.com/oliverfindl/vue-svg-inline-loader) to permit the latest version.
- [Release notes](https://github.com/oliverfindl/vue-svg-inline-loader/releases)
- [Commits](https://github.com/oliverfindl/vue-svg-inline-loader/commits/v1.2.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-04 08:29:09 +09:00
5bfc6b6547 Update typescript-eslint-parser requirement from 21.0.1 to 21.0.2 (#3492)
Updates the requirements on [typescript-eslint-parser](https://github.com/eslint/typescript-eslint-parser) to permit the latest version.
- [Release notes](https://github.com/eslint/typescript-eslint-parser/releases)
- [Changelog](https://github.com/eslint/typescript-eslint-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/typescript-eslint-parser/commits/v21.0.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-04 08:29:00 +09:00
8026a609bb Update vuedraggable requirement from 2.16.0 to 2.17.0 (#3491)
Updates the requirements on [vuedraggable](https://github.com/David-Desmaisons/Vue.Draggable) to permit the latest version.
- [Release notes](https://github.com/David-Desmaisons/Vue.Draggable/releases)
- [Commits](https://github.com/David-Desmaisons/Vue.Draggable/commits/v2.17.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-04 08:28:52 +09:00
10db61a0d2 Update @types/elasticsearch requirement from 5.0.28 to 5.0.29 (#3490)
Updates the requirements on [@types/elasticsearch](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-04 08:28:42 +09:00
40520f3997 Update switch.vue 2018-12-04 03:50:07 +09:00
c1d59716d1 Remove unnecessary Renote check code (#3489) 2018-12-04 03:22:41 +09:00
d8698743a1 Do not show Renote button when inhibited (#3488) 2018-12-04 03:22:08 +09:00
ade5055bc3 10.61.0 2018-12-04 01:37:05 +09:00
6e343d50f1 [MFM] Implement strike syntax
Resolve #3485
2018-12-04 01:28:21 +09:00
ce3f735654 Fix bug 2018-12-04 01:07:26 +09:00
9b5e623130 🎨 2018-12-04 01:04:53 +09:00
f0b0c5b540 🎨
Add ripple effect
2018-12-04 01:02:19 +09:00
dd2207d430 New translations ja-JP.yml (Japanese, Kansai) 2018-12-04 00:22:34 +09:00
ffd6ac2434 New translations ja-JP.yml (Japanese, Kansai) 2018-12-04 00:12:59 +09:00
27f93cc112 New translations ja-JP.yml (Japanese, Kansai) 2018-12-04 00:02:37 +09:00
7ee88a69ec New translations ja-JP.yml (Japanese, Kansai) 2018-12-03 23:53:23 +09:00
227798300f Improve widget paging looks (#3482)
* Improve widget paging looks

* rewind when error
2018-12-03 23:14:10 +09:00
2ab8a5bc0a 10.60.4 2018-12-03 20:27:47 +09:00
c222b9ae94 Update init.ts 2018-12-03 20:26:46 +09:00
53a0f3c794 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-03 20:26:38 +09:00
9ff349c548 Update post-form.vue 2018-12-03 20:21:05 +09:00
37a360efd9 New translations ja-JP.yml (Norwegian) 2018-12-03 20:14:07 +09:00
3a850823a9 New translations ja-JP.yml (Dutch) 2018-12-03 20:14:02 +09:00
4da53b7382 New translations ja-JP.yml (Japanese, Kansai) 2018-12-03 20:13:55 +09:00
cb6f94735f New translations ja-JP.yml (Spanish) 2018-12-03 20:13:51 +09:00
c073a20969 New translations ja-JP.yml (Russian) 2018-12-03 20:13:45 +09:00
6dc8a385ee New translations ja-JP.yml (Portuguese) 2018-12-03 20:13:39 +09:00
f299c050b8 New translations ja-JP.yml (Polish) 2018-12-03 20:13:35 +09:00
eed540a51c New translations ja-JP.yml (Korean) 2018-12-03 20:13:30 +09:00
5db72c4d71 New translations ja-JP.yml (Italian) 2018-12-03 20:13:25 +09:00
fc0bbfa759 New translations ja-JP.yml (German) 2018-12-03 20:13:20 +09:00
6d63c81dd5 New translations ja-JP.yml (French) 2018-12-03 20:13:15 +09:00
bea42924cb New translations ja-JP.yml (English) 2018-12-03 20:13:10 +09:00
b48ef68c12 New translations ja-JP.yml (Chinese Simplified) 2018-12-03 20:13:05 +09:00
65109d140b New translations ja-JP.yml (Catalan) 2018-12-03 20:12:57 +09:00
0935bd4bd4 Resolve #3281 (#3479) 2018-12-03 20:11:18 +09:00
45bee7cc2f Resolve #327 2018-12-03 20:08:18 +09:00
1c86a4bc26 Refactor 2018-12-03 19:44:03 +09:00
b385cf2a9f 10.60.3 2018-12-03 09:54:14 +09:00
40d3dc454d Merge pull request #3480 from syuilo/l10n_develop
New Crowdin translations
2018-12-03 09:53:40 +09:00
8e92848495 New translations ja-JP.yml (Korean) 2018-12-03 09:52:19 +09:00
2d94a22a30 New translations ja-JP.yml (French) 2018-12-03 09:52:15 +09:00
7a5a091c25 New translations ja-JP.yml (English) 2018-12-03 09:52:08 +09:00
2baf810c71 New translations ja-JP.yml (Chinese Simplified) 2018-12-03 09:52:01 +09:00
d1ecef13ef New translations ja-JP.yml (Norwegian) 2018-12-03 09:43:22 +09:00
495fa553ad New translations ja-JP.yml (Dutch) 2018-12-03 09:43:16 +09:00
854e649ea6 New translations ja-JP.yml (Japanese, Kansai) 2018-12-03 09:43:11 +09:00
c047324b42 🎨 2018-12-03 09:43:07 +09:00
daac865c72 New translations ja-JP.yml (Spanish) 2018-12-03 09:43:07 +09:00
63d059b8d1 New translations ja-JP.yml (Russian) 2018-12-03 09:43:01 +09:00
e3075a0dc7 New translations ja-JP.yml (Portuguese) 2018-12-03 09:42:57 +09:00
6b6e597b95 New translations ja-JP.yml (Polish) 2018-12-03 09:42:51 +09:00
eb0eadad5e New translations ja-JP.yml (Korean) 2018-12-03 09:42:46 +09:00
f600fee16d New translations ja-JP.yml (Italian) 2018-12-03 09:42:40 +09:00
7b88c54aa6 New translations ja-JP.yml (German) 2018-12-03 09:42:34 +09:00
623dd57cc3 New translations ja-JP.yml (French) 2018-12-03 09:42:27 +09:00
f6edd33adb New translations ja-JP.yml (English) 2018-12-03 09:42:23 +09:00
ac20d73222 New translations ja-JP.yml (Chinese Simplified) 2018-12-03 09:42:19 +09:00
c59374d79d New translations ja-JP.yml (Catalan) 2018-12-03 09:42:13 +09:00
0d478046de Improve usability 2018-12-03 09:41:22 +09:00
f3479d1b98 Refactor 2018-12-03 09:38:43 +09:00
2fdecb8a38 🎨 2018-12-03 09:14:17 +09:00
a95c3ee557 New translations ja-JP.yml (Korean) 2018-12-03 08:12:01 +09:00
67c439c70a New translations ja-JP.yml (French) 2018-12-03 03:01:46 +09:00
b96037cffa New translations ja-JP.yml (Chinese Simplified) 2018-12-03 00:23:03 +09:00
ebd8d34552 New translations ja-JP.yml (Chinese Simplified) 2018-12-03 00:13:13 +09:00
a653d9a83e New translations ja-JP.yml (Chinese Simplified) 2018-12-03 00:11:54 +09:00
07d6894c42 Clean up 2018-12-02 23:00:06 +09:00
03588b3fd6 Merge if-statements (#3478) 2018-12-02 22:32:09 +09:00
2e83440e70 10.60.2 2018-12-02 21:20:36 +09:00
2633873fcc Fix syntax error (#3477)
src/remote/activitypub/models/person.ts(326,4): error TS1005: ',' expected.
2018-12-02 21:19:28 +09:00
5f33713f53 10.60.1 2018-12-02 21:08:20 +09:00
fe84c5010c Merge pull request #3458 from syuilo/l10n_develop
New Crowdin translations
2018-12-02 20:43:52 +09:00
7f39df0713 New translations ja-JP.yml (English) 2018-12-02 20:43:12 +09:00
928d359dd2 Use takeWhile instead of some (#3475) 2018-12-02 20:28:22 +09:00
184eb00133 Remove self-assignment (#3476) 2018-12-02 20:26:15 +09:00
e264a49b08 [Client] Resolve #2596 2018-12-02 20:24:38 +09:00
8caf853c80 Merge branches 'develop', 'develop' and 'develop' of https://github.com/syuilo/misskey into develop 2018-12-02 20:11:03 +09:00
b451c04787 Use primitive type boolean (#3474) 2018-12-02 20:10:56 +09:00
1653977392 Improve input dialog 2018-12-02 20:10:53 +09:00
a0d9def98a Simplify expressions (#3473) 2018-12-02 19:35:41 +09:00
92701e5cec Fix #3445 (#3471) 2018-12-02 19:24:57 +09:00
0b6b6a4f2f Remove unneccesary casts 2018-12-02 19:05:08 +09:00
3a2dc95850 No MFM parsing when remote note (#3470)
* Use tag for hashtag detection of remote note

* No MFM parsing when remote note
2018-12-02 18:05:33 +09:00
163cf49f16 10.60.0 2018-12-02 15:39:46 +09:00
37fc3103f6 New translations ja-JP.yml (Norwegian) 2018-12-02 15:33:32 +09:00
b7bd1ff69f New translations ja-JP.yml (Dutch) 2018-12-02 15:33:28 +09:00
dc36134f10 New translations ja-JP.yml (Japanese, Kansai) 2018-12-02 15:33:22 +09:00
fea8821091 New translations ja-JP.yml (Spanish) 2018-12-02 15:33:17 +09:00
33faf40aca New translations ja-JP.yml (Russian) 2018-12-02 15:33:12 +09:00
4410f8d7f7 New translations ja-JP.yml (Portuguese) 2018-12-02 15:33:08 +09:00
3e6029e69d New translations ja-JP.yml (Polish) 2018-12-02 15:33:04 +09:00
96c7707e6c New translations ja-JP.yml (Korean) 2018-12-02 15:32:59 +09:00
d8e545db3c New translations ja-JP.yml (Italian) 2018-12-02 15:32:54 +09:00
a9a6ba0aed New translations ja-JP.yml (German) 2018-12-02 15:32:50 +09:00
a898c6ceab New translations ja-JP.yml (French) 2018-12-02 15:32:44 +09:00
0205c5c2d7 New translations ja-JP.yml (English) 2018-12-02 15:32:38 +09:00
f8074ab74b New translations ja-JP.yml (Chinese Simplified) 2018-12-02 15:32:34 +09:00
f15c491d5f New translations ja-JP.yml (Catalan) 2018-12-02 15:32:29 +09:00
c38a32dee9 🎨 2018-12-02 15:31:24 +09:00
4f5abed70d Fix 2018-12-02 15:30:48 +09:00
c9ac9923df Refactor: rename alert to dialog 2018-12-02 15:28:52 +09:00
bb14895fd8 [Client] Resolve #2225 2018-12-02 15:26:56 +09:00
6f92d601ec 🎨 2018-12-02 14:26:30 +09:00
345143b0c1 Suggest in CW (#3467) 2018-12-02 07:33:03 +09:00
dc80d5d376 10.59.4 2018-12-02 07:08:26 +09:00
d3544f9637 Update README.md [AUTOGEN] (#3466) 2018-12-02 07:05:22 +09:00
864b6ad1bd Resolve #1826 2018-12-02 07:02:08 +09:00
c58027e521 [MFM] Better hashtag detection 2018-12-02 06:53:57 +09:00
10fb399588 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-12-02 06:44:25 +09:00
10f466c895 Improve performance 2018-12-02 06:44:18 +09:00
32068b4bcc Update README.md [AUTOGEN] (#3465) 2018-12-02 06:16:24 +09:00
381f2b7fdf New translations ja-JP.yml (French) 2018-12-02 05:12:02 +09:00
1c3c733c6b New translations ja-JP.yml (French) 2018-12-02 05:02:46 +09:00
8bc5febe66 [Client] Add missing icon (#3464) 2018-12-02 03:43:05 +09:00
20335e23f9 Resolve external recommended users (#3462)
* Resolve external recommended users

* Skip unresolvable users

* Fix indent

* Use original for unresolvable users
2018-12-02 03:42:45 +09:00
9dbc9115c9 New translations ja-JP.yml (English) 2018-12-01 12:51:44 +09:00
fe707f88a4 [MFM] Better MFM parsing 2018-12-01 10:40:09 +09:00
9b23ebd4a3 🎨 2018-12-01 09:45:48 +09:00
bea450cc2c 10.59.3 2018-12-01 08:00:25 +09:00
e80709f7aa Disable update notification 2018-12-01 07:59:15 +09:00
cb71f92f42 [ImgBot] Optimize images (#3455)
*Total -- 1,383.25kb -> 1,231.27kb (10.99%)

/assets/apple-touch-icon.png -- 4.72kb -> 2.51kb (46.79%)
/assets/icons/256.png -- 4.72kb -> 2.51kb (46.79%)
/assets/title.png -- 6.63kb -> 3.80kb (42.73%)
/assets/favicon/favicon.png -- 6.83kb -> 3.93kb (42.45%)
/assets/icons/192.png -- 3.49kb -> 2.02kb (42.08%)
/assets/icons/128.png -- 2.29kb -> 1.50kb (34.81%)
/assets/about/ui.png -- 125.21kb -> 94.85kb (24.25%)
/assets/ai-orig.png -- 255.55kb -> 199.67kb (21.86%)
/assets/icons/64.png -- 1.21kb -> 0.99kb (18.34%)
/assets/about/drive.png -- 110.33kb -> 94.20kb (14.62%)
/assets/about/post.png -- 344.52kb -> 316.57kb (8.11%)
/assets/ai.png -- 243.43kb -> 234.93kb (3.49%)
/src/client/assets/pointer.png -- 274.33kb -> 273.80kb (0.19%)
2018-12-01 07:55:34 +09:00
2ca5348560 Fix "Mi"/"Misskey" logos (#3400)
* Fix mi.svg

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload
2018-12-01 07:52:15 +09:00
c8e98fdf8e Update vue-js-modal requirement from 1.3.26 to 1.3.27 (#3425)
Updates the requirements on [vue-js-modal](https://github.com/euvl/vue-js-modal) to permit the latest version.
- [Release notes](https://github.com/euvl/vue-js-modal/releases)
- [Commits](https://github.com/euvl/vue-js-modal/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-01 07:44:30 +09:00
0bfa041026 Merge pull request #3435 from syuilo/l10n_develop
New Crowdin translations
2018-12-01 07:20:03 +09:00
33bf474a1e Update @types/file-type requirement from 5.2.1 to 5.2.2 (#3450)
Updates the requirements on [@types/file-type](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-01 07:19:39 +09:00
53c559c001 Allow hyphens in the middle of remote usernames (#3440)
* Allow hyphens in the middle of remote usernames

refs: d797c29db462de4a3d69a5077a1ae4d03195b6f2

* Make options fallback better

* Make options flat
2018-12-01 07:19:17 +09:00
1c99ef454b Update webpack requirement from 4.26.0 to 4.26.1 (#3453)
Updates the requirements on [webpack](https://github.com/webpack/webpack) to permit the latest version.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/commits/v4.26.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-01 07:16:53 +09:00
cf4cecd4df Fix media video (#3452)
* Fix: Always show nsfw

* [Client] Add missing video play icon
2018-12-01 07:16:28 +09:00
6a8835b923 Exclude remote user or myself from talk user suggestions (#3449) 2018-12-01 07:15:55 +09:00
f2b1cf92e1 AP CW (#3448) 2018-12-01 07:15:10 +09:00
6b79618e74 New translations ja-JP.yml (Polish) 2018-12-01 02:22:34 +09:00
3db414add4 Use for-of instead of map
return values are not being used
2018-11-30 23:30:28 +09:00
9ef641b403 Remove consecutive blank line 2018-11-30 23:07:21 +09:00
6fa7819a44 Fix #3442 (#3443) 2018-11-30 18:13:55 +09:00
59a1b9adbe Trim notifications text (#3438)
* Trim notifications

* Remove needless colons

* Use single quote

* 🎨
2018-11-30 09:34:37 +09:00
3fbc7094f6 New translations ja-JP.yml (Korean) 2018-11-30 07:52:03 +09:00
56c6227bc2 New translations ja-JP.yml (English) 2018-11-30 05:02:18 +09:00
ee82f99f5a Better limit 2018-11-30 00:45:02 +09:00
72d9a46156 10.59.2 2018-11-30 00:36:02 +09:00
683a85ecc0 Fix SMTP (#3436) 2018-11-30 00:35:17 +09:00
89047fd66d 10.59.1 2018-11-30 00:15:02 +09:00
789de130a2 New translations ja-JP.yml (Norwegian) 2018-11-30 00:14:31 +09:00
46c026ce70 New translations ja-JP.yml (Dutch) 2018-11-30 00:14:24 +09:00
82290f6e4e New translations ja-JP.yml (Japanese, Kansai) 2018-11-30 00:14:17 +09:00
8729525f95 New translations ja-JP.yml (Spanish) 2018-11-30 00:14:09 +09:00
df0115ffe8 New translations ja-JP.yml (Russian) 2018-11-30 00:14:04 +09:00
0275b4fc9e New translations ja-JP.yml (Portuguese) 2018-11-30 00:13:57 +09:00
9982fd71ba New translations ja-JP.yml (Polish) 2018-11-30 00:13:49 +09:00
081060b7db New translations ja-JP.yml (Korean) 2018-11-30 00:13:45 +09:00
0de64f1fc7 New translations ja-JP.yml (Italian) 2018-11-30 00:13:37 +09:00
f0508c0a90 New translations ja-JP.yml (German) 2018-11-30 00:13:32 +09:00
b51ae1dfaa New translations ja-JP.yml (French) 2018-11-30 00:13:24 +09:00
6e7233d41b New translations ja-JP.yml (English) 2018-11-30 00:13:19 +09:00
8ca27a4480 Fix #3432 2018-11-30 00:13:13 +09:00
418041a56e New translations ja-JP.yml (Chinese Simplified) 2018-11-30 00:13:13 +09:00
17d20f5a18 New translations ja-JP.yml (Catalan) 2018-11-30 00:13:07 +09:00
77d2d84e05 Fix #3434 2018-11-30 00:04:28 +09:00
3bde4285eb Fix SMTP (#3433)
* Fix: SMTP local relay

* Fix SMTP SSL description

* ✌️
2018-11-30 00:03:28 +09:00
15efbfb244 Fix #3430 2018-11-29 22:05:11 +09:00
55a57db958 Show current selected language (#3429) 2018-11-29 21:56:53 +09:00
91f624c900 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-29 20:40:03 +09:00
d753489e49 10.59.0 2018-11-29 20:39:56 +09:00
36dd7c82db Merge pull request #3394 from syuilo/l10n_develop
New Crowdin translations
2018-11-29 20:38:43 +09:00
b00db74216 Add korean 2018-11-29 20:38:19 +09:00
cf9f85eb2a メールサーバーの設定がオフの場合はメール設定を表示しないように 2018-11-29 20:33:31 +09:00
bfa8414289 New translations ja-JP.yml (English) 2018-11-29 20:32:43 +09:00
58dc9c9544 New translations ja-JP.yml (Norwegian) 2018-11-29 20:24:05 +09:00
ba95ce18a8 New translations ja-JP.yml (Dutch) 2018-11-29 20:23:58 +09:00
ac10c40f31 New translations ja-JP.yml (Japanese, Kansai) 2018-11-29 20:23:51 +09:00
de8b40c80f New translations ja-JP.yml (Spanish) 2018-11-29 20:23:45 +09:00
60fe69728d New translations ja-JP.yml (Russian) 2018-11-29 20:23:39 +09:00
557607e842 New translations ja-JP.yml (Portuguese) 2018-11-29 20:23:34 +09:00
40ac9de728 New translations ja-JP.yml (Polish) 2018-11-29 20:23:26 +09:00
a725cd1946 New translations ja-JP.yml (Korean) 2018-11-29 20:23:21 +09:00
b648706756 New translations ja-JP.yml (Italian) 2018-11-29 20:23:15 +09:00
20f2e9fc6d New translations ja-JP.yml (German) 2018-11-29 20:23:10 +09:00
858ced0a53 New translations ja-JP.yml (French) 2018-11-29 20:23:04 +09:00
c9ca8f777f New translations ja-JP.yml (English) 2018-11-29 20:22:57 +09:00
0d0be31527 New translations ja-JP.yml (Chinese Simplified) 2018-11-29 20:22:52 +09:00
96305a088c New translations ja-JP.yml (Catalan) 2018-11-29 20:22:47 +09:00
22e30b44b9 Make require password to update email 2018-11-29 20:19:02 +09:00
48d0e2fa5f [MFM] Improve hashtag detection 2018-11-29 20:12:37 +09:00
0489291815 Refactor 2018-11-29 20:09:41 +09:00
7a412500e1 [Client] Fix #3427 2018-11-29 20:07:31 +09:00
dffaa72a88 New translations ja-JP.yml (Norwegian) 2018-11-29 16:34:41 +09:00
152d61f906 New translations ja-JP.yml (Dutch) 2018-11-29 16:34:29 +09:00
b44ded5fc9 New translations ja-JP.yml (Japanese, Kansai) 2018-11-29 16:34:21 +09:00
99d77cc843 New translations ja-JP.yml (Spanish) 2018-11-29 16:34:11 +09:00
bc385eec2d New translations ja-JP.yml (Russian) 2018-11-29 16:33:58 +09:00
2c6b9403b3 New translations ja-JP.yml (Portuguese) 2018-11-29 16:33:46 +09:00
89cdc59fe5 New translations ja-JP.yml (Polish) 2018-11-29 16:33:35 +09:00
3e04e1ccea New translations ja-JP.yml (Korean) 2018-11-29 16:33:27 +09:00
25f491a65f New translations ja-JP.yml (Italian) 2018-11-29 16:33:17 +09:00
7fdde157e0 New translations ja-JP.yml (German) 2018-11-29 16:33:10 +09:00
27f30a449a New translations ja-JP.yml (French) 2018-11-29 16:33:02 +09:00
dc66a0cd66 New translations ja-JP.yml (English) 2018-11-29 16:32:54 +09:00
f302ecd1e2 New translations ja-JP.yml (Chinese Simplified) 2018-11-29 16:32:46 +09:00
1afc2a227a New translations ja-JP.yml (Catalan) 2018-11-29 16:32:38 +09:00
ab594d1dfe Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-29 16:24:05 +09:00
647d32f506 🎨 2018-11-29 16:24:02 +09:00
1bc109b42c Implement email config 2018-11-29 16:23:45 +09:00
6e02e2a6b3 New translations ja-JP.yml (Norwegian) 2018-11-29 11:14:35 +09:00
3372baad6c New translations ja-JP.yml (Dutch) 2018-11-29 11:14:26 +09:00
e9b3e3877a New translations ja-JP.yml (Japanese, Kansai) 2018-11-29 11:14:16 +09:00
c84c5fbae7 New translations ja-JP.yml (Spanish) 2018-11-29 11:14:08 +09:00
2e7ab91f48 New translations ja-JP.yml (Russian) 2018-11-29 11:13:59 +09:00
92c41c003a New translations ja-JP.yml (Portuguese) 2018-11-29 11:13:51 +09:00
53688cdcdc New translations ja-JP.yml (Polish) 2018-11-29 11:13:44 +09:00
70f864ea8b New translations ja-JP.yml (Korean) 2018-11-29 11:13:34 +09:00
5dd94e551a New translations ja-JP.yml (Italian) 2018-11-29 11:13:26 +09:00
afc1ed9897 New translations ja-JP.yml (German) 2018-11-29 11:13:19 +09:00
df7562f98d New translations ja-JP.yml (French) 2018-11-29 11:13:10 +09:00
1c7e799164 New translations ja-JP.yml (English) 2018-11-29 11:13:02 +09:00
107a3f99f4 New translations ja-JP.yml (Chinese Simplified) 2018-11-29 11:12:54 +09:00
7e3cf4b4ad New translations ja-JP.yml (Catalan) 2018-11-29 11:12:45 +09:00
afdb23ff57 Feature / Configurable web search engine (#3406)
* configurable web search engine

* add webSearchEngine config in mobile ui

* add webSearchEngine config in desktop ui

* add webSearchEngine config

* add messages for web search engine config

* correct locale
2018-11-29 11:05:17 +09:00
0ce64f8c33 10.58.2 2018-11-29 06:34:07 +09:00
2cd6ccb85c Fix test 2018-11-29 06:33:23 +09:00
3dcf5374c2 Mark chart apis as stable 2018-11-29 06:06:07 +09:00
1c7d5f3f64 Update ts-loader requirement from 5.3.0 to 5.3.1 (#3426)
Updates the requirements on [ts-loader](https://github.com/TypeStrong/ts-loader) to permit the latest version.
- [Release notes](https://github.com/TypeStrong/ts-loader/releases)
- [Changelog](https://github.com/TypeStrong/ts-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/ts-loader/commits/v5.3.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-29 05:31:41 +09:00
bb0cb0a866 Fix bad style in deck column options and other things (#3412)
* Fix wrong text color in empty timeline (#3268)

* Whoops

* Fix wrong text color in deck options (#3268)

* Some padding to make it look less ugly

* Fix wrong text color in user lists menu (#3268)

* Fix wrong text color of footer on welcome screen (mobile) (#3268)

* Fix misalignment of icons and text in menu (mobile) (#3289)

* Fix wrong text color in empty timeline (mobile) (#3268)
2018-11-29 05:02:35 +09:00
362dc29057 Update profile-editor.vue (#3424) 2018-11-29 04:54:36 +09:00
8af0218e4c ✌️🤔✌️ 2018-11-28 18:57:22 +09:00
09af9968b5 🎨 2018-11-28 16:29:18 +09:00
7d0b819c5a Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-28 16:19:09 +09:00
4bbb7eded3 Cookieを使わないように 2018-11-28 16:19:02 +09:00
72ea9e5522 Update systeminformation requirement from 3.49.3 to 3.51.3 (#3419)
Updates the requirements on [systeminformation](https://github.com/sebhildebrandt/systeminformation) to permit the latest version.
- [Release notes](https://github.com/sebhildebrandt/systeminformation/releases)
- [Changelog](https://github.com/sebhildebrandt/systeminformation/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sebhildebrandt/systeminformation/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-28 16:01:16 +09:00
743e5d947d Update autobind-decorator requirement from 2.2.1 to 2.3.1 (#3418)
Updates the requirements on [autobind-decorator](https://github.com/andreypopp/autobind-decorator) to permit the latest version.
- [Release notes](https://github.com/andreypopp/autobind-decorator/releases)
- [Changelog](https://github.com/andreypopp/autobind-decorator/blob/master/CHANGELOG.md)
- [Commits](https://github.com/andreypopp/autobind-decorator/commits/v2.3.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-28 16:00:58 +09:00
f257853906 Update signin.ts 2018-11-28 05:27:34 +09:00
32983d3829 New translations ja-JP.yml (Polish) 2018-11-28 04:42:11 +09:00
bdef33e88d Add theme_color and 512x512 icon to app manifest (#3417)
As per Chrome Lighthouse PWA suggestions.
2018-11-28 04:38:50 +09:00
a4a4194586 New translations ja-JP.yml (Polish) 2018-11-28 04:32:18 +09:00
e36c538dc0 New translations ja-JP.yml (Polish) 2018-11-28 04:22:13 +09:00
982a218bf2 New translations ja-JP.yml (Chinese Simplified) 2018-11-27 21:04:16 +09:00
f7aeca4c7c New translations ja-JP.yml (Korean) 2018-11-27 20:08:23 +09:00
4b81bc864f New translations ja-JP.yml (Korean) 2018-11-27 19:59:43 +09:00
a52cc62c04 New translations ja-JP.yml (Korean) 2018-11-27 19:42:47 +09:00
81f69bff9e New translations ja-JP.yml (Korean) 2018-11-27 19:33:25 +09:00
d9b2aa1880 New translations ja-JP.yml (Korean) 2018-11-27 19:13:03 +09:00
3bddd986a0 New translations ja-JP.yml (Korean) 2018-11-27 18:57:30 +09:00
d00712d817 New translations ja-JP.yml (Korean) 2018-11-27 18:43:54 +09:00
d756fdbebf New translations ja-JP.yml (Russian) 2018-11-27 17:00:13 +09:00
b2f2c74605 New translations ja-JP.yml (Russian) 2018-11-27 16:53:36 +09:00
1407cd71b5 New translations ja-JP.yml (Russian) 2018-11-27 16:32:45 +09:00
3dd3a7238d New translations ja-JP.yml (Russian) 2018-11-27 16:22:11 +09:00
afc834ae4b New translations ja-JP.yml (Russian) 2018-11-27 16:12:28 +09:00
357f190ce3 New translations ja-JP.yml (Russian) 2018-11-27 16:02:30 +09:00
ab92762320 Update webfinger.js requirement from 2.6.6 to 2.7.0 (#3414)
Updates the requirements on [webfinger.js](https://github.com/silverbucket/webfinger.js) to permit the latest version.
- [Release notes](https://github.com/silverbucket/webfinger.js/releases)
- [Changelog](https://github.com/silverbucket/webfinger.js/blob/master/RELEASE_CHECKLIST)
- [Commits](https://github.com/silverbucket/webfinger.js/commits/v2.7.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-27 15:49:50 +09:00
04942c8477 Update README.md [AUTOGEN] (#3415) 2018-11-27 15:49:39 +09:00
9c60f51e0d New translations ja-JP.yml (Russian) 2018-11-27 15:42:01 +09:00
956ae2ac46 New translations ja-JP.yml (Korean) 2018-11-27 13:01:57 +09:00
f2ed813337 New translations ja-JP.yml (Korean) 2018-11-27 12:52:16 +09:00
7d9a7d1a3c New translations ja-JP.yml (Korean) 2018-11-27 12:42:09 +09:00
2f67b6fb47 New translations ja-JP.yml (Korean) 2018-11-27 12:31:55 +09:00
7444dde93e New translations ja-JP.yml (Korean) 2018-11-27 12:22:14 +09:00
e62fad7bc6 Update README.md [AUTOGEN] (#3413) 2018-11-27 03:08:08 +09:00
2c6bad2501 [MFM] Improve hashtag detection 2018-11-27 02:08:51 +09:00
6952bb2eca New translations ja-JP.yml (Norwegian) 2018-11-27 01:26:59 +09:00
610972dbde New translations ja-JP.yml (Dutch) 2018-11-27 01:26:54 +09:00
926049055a New translations ja-JP.yml (Japanese, Kansai) 2018-11-27 01:26:49 +09:00
db5f6b60df New translations ja-JP.yml (Spanish) 2018-11-27 01:26:44 +09:00
7be7b9d9fd New translations ja-JP.yml (Russian) 2018-11-27 01:26:39 +09:00
366855c4cc New translations ja-JP.yml (Portuguese) 2018-11-27 01:26:35 +09:00
e950beeeab New translations ja-JP.yml (Polish) 2018-11-27 01:26:28 +09:00
5515b39f6c New translations ja-JP.yml (Korean) 2018-11-27 01:26:23 +09:00
f5d0599e4d New translations ja-JP.yml (Italian) 2018-11-27 01:26:17 +09:00
8fd7914f0f New translations ja-JP.yml (German) 2018-11-27 01:26:13 +09:00
24ef98eb01 10.58.1 2018-11-27 01:26:07 +09:00
b3dd6cf001 New translations ja-JP.yml (French) 2018-11-27 01:26:07 +09:00
6d4b474cb1 New translations ja-JP.yml (English) 2018-11-27 01:26:03 +09:00
0a8876a3ae New translations ja-JP.yml (Chinese Simplified) 2018-11-27 01:25:59 +09:00
9a83a48331 New translations ja-JP.yml (Catalan) 2018-11-27 01:25:54 +09:00
7ed50b90bd [Client] Resolve #3323 2018-11-27 01:21:16 +09:00
b6fd5d7282 No caching /api/ (#3411) 2018-11-27 01:16:25 +09:00
33243e7176 Fix #3409 (#3410)
* Update Dockerfile

* Update Dockerfile
2018-11-27 00:32:56 +09:00
e8439679a5 Add yarn.lock to .gitignore (#3408) 2018-11-26 21:55:16 +09:00
06124dbbd5 Return 404 for undefined .well-known (#3404) 2018-11-26 04:49:24 +09:00
857940f402 10.58.0 2018-11-26 04:33:39 +09:00
bcb04924ff Image for web publish (#3402)
* Image for Web

* Add comment

* Make main to original
2018-11-26 04:25:48 +09:00
2b6aeb9ebc New translations ja-JP.yml (Korean) 2018-11-25 18:55:39 +09:00
648e4538fb New translations ja-JP.yml (Korean) 2018-11-25 18:41:57 +09:00
cd4b3777da New translations ja-JP.yml (Korean) 2018-11-25 18:31:44 +09:00
4acf506b7e New translations ja-JP.yml (Korean) 2018-11-25 18:22:00 +09:00
543ca348bc New translations ja-JP.yml (Korean) 2018-11-25 18:11:50 +09:00
03375412f1 New translations ja-JP.yml (Korean) 2018-11-25 18:01:59 +09:00
0c7a9b6827 New translations ja-JP.yml (Korean) 2018-11-25 17:52:07 +09:00
c54bc3c176 New translations ja-JP.yml (Korean) 2018-11-25 17:42:22 +09:00
90973bedf4 New translations ja-JP.yml (Korean) 2018-11-25 17:32:03 +09:00
757f70162e New translations ja-JP.yml (Korean) 2018-11-25 17:21:56 +09:00
3047410b35 New translations ja-JP.yml (Korean) 2018-11-25 17:11:58 +09:00
9d0d4c5eae New translations ja-JP.yml (Korean) 2018-11-25 16:41:50 +09:00
cab5b4d601 New translations ja-JP.yml (Korean) 2018-11-25 16:31:55 +09:00
517b6e25d9 New translations ja-JP.yml (Korean) 2018-11-25 16:21:57 +09:00
94d394c29e New translations ja-JP.yml (Korean) 2018-11-25 16:11:51 +09:00
a52099d175 New translations ja-JP.yml (Korean) 2018-11-25 16:01:56 +09:00
f1cb7b862d New translations ja-JP.yml (Korean) 2018-11-25 15:51:50 +09:00
0863e5d379 🎨 2018-11-25 13:47:42 +09:00
55dcd25df1 Improve MFM 2018-11-25 13:36:52 +09:00
f3155ea180 [MFM] Add center syntax
Resolve #1775
2018-11-25 13:36:40 +09:00
2c5162671c Improve MFM 2018-11-25 13:23:18 +09:00
fc8aeb5a66 [Client] Fix bug 2018-11-25 13:21:47 +09:00
995cf503eb Add MFM test 2018-11-25 13:21:39 +09:00
0e49c11a4c Refactoring 2018-11-25 13:19:33 +09:00
0367c37b0a 10.57.3 2018-11-25 05:17:45 +09:00
e0b9fe5e5d 🎨 2018-11-25 05:16:39 +09:00
a4726e683b 🎨 2018-11-25 05:10:48 +09:00
3b10e93efe [MFM] Better hashtag parsing 2018-11-25 04:44:42 +09:00
02b07c1b5b Update note-mixin.ts 2018-11-25 04:30:32 +09:00
5e54751bd4 Refactor 2018-11-25 04:26:07 +09:00
34f1dc238d New translations ja-JP.yml (Korean) 2018-11-25 02:21:48 +09:00
3c0f4bdf35 New translations ja-JP.yml (Korean) 2018-11-25 02:11:52 +09:00
a68d370ad0 New translations ja-JP.yml (Korean) 2018-11-25 02:01:52 +09:00
debb27ed30 New translations ja-JP.yml (Korean) 2018-11-25 01:52:36 +09:00
97fbb857fb New translations ja-JP.yml (Korean) 2018-11-25 01:41:56 +09:00
93f13ffc8e Fix: url-preview (#3397) 2018-11-25 01:39:22 +09:00
4d9dc93d46 New translations ja-JP.yml (Korean) 2018-11-25 01:32:05 +09:00
22cd4c5d16 New translations ja-JP.yml (Korean) 2018-11-25 01:22:01 +09:00
6883994b22 New translations ja-JP.yml (Korean) 2018-11-25 00:42:19 +09:00
852a312753 New translations ja-JP.yml (Korean) 2018-11-25 00:32:57 +09:00
afea0baaa8 New translations ja-JP.yml (Korean) 2018-11-25 00:22:08 +09:00
2c477660a0 New translations ja-JP.yml (Korean) 2018-11-25 00:12:06 +09:00
16a1cd3c9d New translations ja-JP.yml (Korean) 2018-11-25 00:02:20 +09:00
db23dd2e01 New translations ja-JP.yml (Korean) 2018-11-24 23:51:44 +09:00
eaa1ded5ba New translations ja-JP.yml (Korean) 2018-11-24 23:48:03 +09:00
393e14196a New translations ja-JP.yml (Korean) 2018-11-24 23:41:59 +09:00
8b005307ea New translations ja-JP.yml (Korean) 2018-11-24 23:32:15 +09:00
c915ac0e72 New translations ja-JP.yml (Korean) 2018-11-24 23:22:10 +09:00
1752bb896e New translations ja-JP.yml (Korean) 2018-11-24 23:13:01 +09:00
9c8fa026f3 New translations ja-JP.yml (English) 2018-11-24 23:12:56 +09:00
e93db6324a New translations ja-JP.yml (Korean) 2018-11-24 23:03:31 +09:00
a10708bffa New translations ja-JP.yml (English) 2018-11-24 23:03:26 +09:00
e65a7a142f New translations ja-JP.yml (Korean) 2018-11-24 22:52:16 +09:00
72e0b2d470 New translations ja-JP.yml (English) 2018-11-24 22:52:12 +09:00
43fb0f36a7 New translations ja-JP.yml (Korean) 2018-11-24 22:43:27 +09:00
cf3533221b New translations ja-JP.yml (Korean) 2018-11-24 22:32:16 +09:00
de522ebe14 New translations ja-JP.yml (Korean) 2018-11-24 22:22:02 +09:00
2ace891dde New translations ja-JP.yml (Korean) 2018-11-24 22:11:52 +09:00
e212d9f991 New translations ja-JP.yml (Korean) 2018-11-24 19:32:05 +09:00
739f3f84d0 New translations ja-JP.yml (Korean) 2018-11-24 19:22:14 +09:00
5e206c86be New translations ja-JP.yml (French) 2018-11-24 19:22:08 +09:00
1ab37011ea New translations ja-JP.yml (French) 2018-11-24 19:12:20 +09:00
b6e02f63cd New translations ja-JP.yml (French) 2018-11-24 19:02:11 +09:00
60e10d4efa 10.57.2 2018-11-24 17:31:08 +09:00
95ba7e43b1 Fix bug: リモートユーザーのアイコンとバナーの色が取得されていない問題を修正 2018-11-24 17:29:32 +09:00
9e5a2e5b17 Fix lint 2018-11-24 17:19:51 +09:00
dbbc416095 [MFM] Fix hashtag detection 2018-11-24 17:18:11 +09:00
a479ad357c Update dependency 🚀 2018-11-24 17:13:25 +09:00
b1c12abb7c Refactor 2018-11-24 17:10:12 +09:00
17d1a1d7bd New translations ja-JP.yml (Korean) 2018-11-24 12:12:00 +09:00
ba50156a83 10.57.1 2018-11-24 07:35:29 +09:00
eb83ab41c0 Revert "10.57.1"
This reverts commit 8c4f0d4589.
2018-11-24 07:34:51 +09:00
4e6a917dab Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-24 07:34:23 +09:00
8c4f0d4589 10.57.1 2018-11-24 07:33:53 +09:00
3f7738204e Merge pull request #3391 from syuilo/l10n_develop
New Crowdin translations
2018-11-24 07:31:36 +09:00
e251a9b9fe New translations ja-JP.yml (English) 2018-11-24 07:22:10 +09:00
01d43b9683 New translations ja-JP.yml (Norwegian) 2018-11-24 07:13:03 +09:00
4d4a0c89a8 New translations ja-JP.yml (Dutch) 2018-11-24 07:12:58 +09:00
0a5524e9c8 New translations ja-JP.yml (Japanese, Kansai) 2018-11-24 07:12:53 +09:00
c8fb5746b3 New translations ja-JP.yml (Spanish) 2018-11-24 07:12:49 +09:00
bbcc132978 New translations ja-JP.yml (Russian) 2018-11-24 07:12:44 +09:00
d3e4f84285 New translations ja-JP.yml (Portuguese) 2018-11-24 07:12:38 +09:00
62c470cf75 New translations ja-JP.yml (Polish) 2018-11-24 07:12:34 +09:00
8ab31d3765 New translations ja-JP.yml (Korean) 2018-11-24 07:12:28 +09:00
55fe1cf0a8 New translations ja-JP.yml (Italian) 2018-11-24 07:12:23 +09:00
00cff51ff7 New translations ja-JP.yml (German) 2018-11-24 07:12:18 +09:00
d6bc4a7aa1 New translations ja-JP.yml (French) 2018-11-24 07:12:14 +09:00
4e57d12aea New translations ja-JP.yml (English) 2018-11-24 07:12:09 +09:00
4a2d99c43f New translations ja-JP.yml (Chinese Simplified) 2018-11-24 07:12:03 +09:00
217c27df86 New translations ja-JP.yml (Catalan) 2018-11-24 07:11:59 +09:00
e6dcd438b4 Update ja-JP.yml 2018-11-24 07:05:41 +09:00
de2b0224d6 Resolve #3158 2018-11-24 07:04:29 +09:00
3f8a72eb88 🎨 2018-11-24 07:03:03 +09:00
0387176e8c 🎨 2018-11-24 07:01:40 +09:00
aa34e332f4 Update reversi.room.vue 2018-11-24 07:01:12 +09:00
d13999d689 🎨 2018-11-24 06:56:30 +09:00
22c4e92728 Resolve #3389 2018-11-24 06:47:51 +09:00
df8128c0b1 Update url-preview.ts 2018-11-24 06:41:22 +09:00
ec534a3704 New translations ja-JP.yml (Korean) 2018-11-24 00:53:34 +09:00
366d4cd3e2 New translations ja-JP.yml (Korean) 2018-11-24 00:43:26 +09:00
4841926df1 Update README.md [AUTOGEN] (#3393) 2018-11-23 23:12:54 +09:00
f2f7bdc5a9 Do not use _replyIds (#3392) 2018-11-23 23:12:28 +09:00
fd811eb325 New translations ja-JP.yml (English) 2018-11-23 19:44:09 +09:00
915d352505 Resolve #3366 2018-11-23 16:39:51 +09:00
1d1024c57a [MFM] Improve hashtag detection
Resolve #3387
2018-11-23 16:02:17 +09:00
73df6e0347 Update manage.ja.md 2018-11-23 09:26:14 +09:00
e6d62c5a7b Update manage.en.md 2018-11-23 09:25:32 +09:00
470e48c0a5 Delete suspend.js 2018-11-23 09:24:00 +09:00
9235f72a2e Update manage.ja.md 2018-11-23 09:23:40 +09:00
9fe6da79b2 Update manage.en.md 2018-11-23 09:23:19 +09:00
1858437eb1 Delete reset-password.js 2018-11-23 09:22:45 +09:00
c3ba0dcd32 Update @types/systeminformation requirement from 3.23.0 to 3.23.1 (#3370)
Updates the requirements on [@types/systeminformation](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 09:12:36 +09:00
70f4b13089 Update @types/node requirement from 10.12.2 to 10.12.10 (#3369)
Updates the requirements on [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 09:12:29 +09:00
cc57a4b671 Update @types/koa requirement from 2.0.46 to 2.0.47 (#3354)
Updates the requirements on [@types/koa](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 09:12:21 +09:00
6902700458 Update @types/redis requirement from 2.8.7 to 2.8.8 (#3353)
Updates the requirements on [@types/redis](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 09:12:13 +09:00
b772041547 Update @types/koa-router requirement from 7.0.33 to 7.0.35 (#3352)
Updates the requirements on [@types/koa-router](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 09:12:01 +09:00
79174c1a19 10.57.0 2018-11-23 08:20:12 +09:00
898850027a Merge pull request #3335 from syuilo/l10n_develop
New Crowdin translations
2018-11-23 08:19:32 +09:00
0d272b1fb0 Resolve #3376 2018-11-23 08:13:17 +09:00
7993a9eb90 New translations ja-JP.yml (English) 2018-11-23 08:12:53 +09:00
42d419970d New translations ja-JP.yml (Norwegian) 2018-11-23 08:05:03 +09:00
ad49268d8b New translations ja-JP.yml (Dutch) 2018-11-23 08:04:53 +09:00
76c345396a New translations ja-JP.yml (Japanese, Kansai) 2018-11-23 08:04:44 +09:00
5690ef1ebc New translations ja-JP.yml (Spanish) 2018-11-23 08:04:35 +09:00
5616404b4d New translations ja-JP.yml (Russian) 2018-11-23 08:04:31 +09:00
f92137f6c2 New translations ja-JP.yml (Portuguese) 2018-11-23 08:04:21 +09:00
ca3373ba4e New translations ja-JP.yml (Polish) 2018-11-23 08:04:12 +09:00
4e6115b414 New translations ja-JP.yml (Korean) 2018-11-23 08:04:03 +09:00
ddf47051c9 New translations ja-JP.yml (Italian) 2018-11-23 08:03:54 +09:00
d45478510c New translations ja-JP.yml (German) 2018-11-23 08:03:45 +09:00
2641f89349 New translations ja-JP.yml (French) 2018-11-23 08:03:35 +09:00
9d46d03c37 New translations ja-JP.yml (English) 2018-11-23 08:03:26 +09:00
25b6de88a9 New translations ja-JP.yml (Chinese Simplified) 2018-11-23 08:03:18 +09:00
a24046e46a New translations ja-JP.yml (Catalan) 2018-11-23 08:03:09 +09:00
7e803ff9a9 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-23 08:01:29 +09:00
246cead2b1 Improve user operations
Resolve #2197
Resolve #3367
2018-11-23 08:01:14 +09:00
214f7f06bb Update koa requirement from 2.6.1 to 2.6.2 (#3386)
Updates the requirements on [koa](https://github.com/koajs/koa) to permit the latest version.
- [Release notes](https://github.com/koajs/koa/releases)
- [Changelog](https://github.com/koajs/koa/blob/master/History.md)
- [Commits](https://github.com/koajs/koa/commits/2.6.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 06:06:03 +09:00
6878f73a9f Update ws requirement from 6.1.0 to 6.1.2 (#3385)
Updates the requirements on [ws](https://github.com/websockets/ws) to permit the latest version.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/commits/6.1.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 05:23:05 +09:00
336b45b6f7 AP quote (#3384) 2018-11-23 02:10:07 +09:00
2a0b62d26d Fix #3343 (#3383)
Setting "X-Forwarded-Proto: https" in the SSL proxy is the correct way to do this
2018-11-23 02:09:04 +09:00
653ec0cbb0 No cache /notes/:note (#3382) 2018-11-22 23:17:58 +09:00
120ab3f0a3 New translations ja-JP.yml (French) 2018-11-22 18:53:16 +09:00
8bcbbbc1a3 New translations ja-JP.yml (English) 2018-11-22 09:22:41 +09:00
13a75abc91 Update systeminformation requirement from 3.47.0 to 3.49.3 (#3374)
Updates the requirements on [systeminformation](https://github.com/sebhildebrandt/systeminformation) to permit the latest version.
- [Release notes](https://github.com/sebhildebrandt/systeminformation/releases)
- [Changelog](https://github.com/sebhildebrandt/systeminformation/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sebhildebrandt/systeminformation/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-22 05:31:46 +09:00
eace740c63 Update emojilib requirement from 2.3.0 to 2.4.0 (#3375)
Updates the requirements on [emojilib](https://github.com/muan/emojilib) to permit the latest version.
- [Release notes](https://github.com/muan/emojilib/releases)
- [Commits](https://github.com/muan/emojilib/commits/v2.4.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-22 05:31:09 +09:00
cb3a54de00 Update apexcharts requirement from 2.2.2 to 2.2.3 (#3373)
Updates the requirements on [apexcharts](https://github.com/apexcharts/apexcharts.js) to permit the latest version.
- [Release notes](https://github.com/apexcharts/apexcharts.js/releases)
- [Changelog](https://github.com/apexcharts/apexcharts.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/apexcharts/apexcharts.js/commits/v2.2.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-22 05:29:47 +09:00
5fbc77795d Update webpack requirement from 4.25.1 to 4.26.0 (#3371)
Updates the requirements on [webpack](https://github.com/webpack/webpack) to permit the latest version.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/commits/v4.26.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-22 05:29:02 +09:00
ce4feae731 Update vue-i18n requirement from 8.3.1 to 8.3.2 (#3372)
Updates the requirements on [vue-i18n](https://github.com/kazupon/vue-i18n) to permit the latest version.
- [Release notes](https://github.com/kazupon/vue-i18n/releases)
- [Changelog](https://github.com/kazupon/vue-i18n/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/kazupon/vue-i18n/commits/v8.3.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-22 05:28:39 +09:00
08f00d4990 Remove unneccesary cast (#3355) 2018-11-22 05:07:25 +09:00
6951f7e74a Fix #3361 (#3362)
* Update create.ts

* Update api.ts
2018-11-22 05:06:51 +09:00
2b4d63b1bb Add some tests 2018-11-22 05:04:45 +09:00
8cbb961493 [MFM] Improve URL parsing
Fix #3368
2018-11-22 05:02:38 +09:00
64c795938d New translations ja-JP.yml (French) 2018-11-22 02:03:40 +09:00
67df681a48 Refactoring 2018-11-22 01:51:26 +09:00
9285bcf8bb New translations ja-JP.yml (Norwegian) 2018-11-21 23:55:53 +09:00
b9b23a4b54 New translations ja-JP.yml (Dutch) 2018-11-21 23:55:48 +09:00
2f6371b085 New translations ja-JP.yml (Japanese, Kansai) 2018-11-21 23:55:38 +09:00
2a5c3475a7 New translations ja-JP.yml (Spanish) 2018-11-21 23:55:29 +09:00
8a2698a5db New translations ja-JP.yml (Russian) 2018-11-21 23:55:19 +09:00
f6919a171a New translations ja-JP.yml (Portuguese) 2018-11-21 23:55:09 +09:00
82ebf67456 New translations ja-JP.yml (Polish) 2018-11-21 23:55:02 +09:00
a60c8b2ee8 New translations ja-JP.yml (Korean) 2018-11-21 23:54:58 +09:00
0a2b8ccfb6 New translations ja-JP.yml (Italian) 2018-11-21 23:54:53 +09:00
698094b787 New translations ja-JP.yml (German) 2018-11-21 23:54:48 +09:00
b57e111ea8 New translations ja-JP.yml (French) 2018-11-21 23:54:41 +09:00
aa6bf2b54e New translations ja-JP.yml (English) 2018-11-21 23:54:31 +09:00
454910d295 New translations ja-JP.yml (Chinese Simplified) 2018-11-21 23:54:21 +09:00
d44e620769 New translations ja-JP.yml (Catalan) 2018-11-21 23:54:12 +09:00
ac14adfd3e Feature / user recommendation config in admin ui (#3357)
* add config for external user recommendation into admin ui

* debug

* correct admin ui

* switch external user recommendation to admin ui config

* debug

* debug

* debug

* Revert "debug"

This reverts commit f4a0460e5bde21cd1f39a735f496a2d74233ef3f.

* explicit parseInt radix

* add Japanese message

* change default engine to https

* remove unused settings

* debug

* nullable externalUserRecommendationTimeout
2018-11-21 23:44:59 +09:00
928d30ee1e New translations ja-JP.yml (Norwegian) 2018-11-21 14:53:16 +09:00
3dd9b0f347 New translations ja-JP.yml (Dutch) 2018-11-21 14:53:10 +09:00
c57dd083c5 New translations ja-JP.yml (Japanese, Kansai) 2018-11-21 14:53:06 +09:00
2a1d6c5406 New translations ja-JP.yml (Spanish) 2018-11-21 14:52:59 +09:00
112e9f69bd New translations ja-JP.yml (Russian) 2018-11-21 14:52:55 +09:00
d50e537888 New translations ja-JP.yml (Portuguese) 2018-11-21 14:52:50 +09:00
86d14d30fa New translations ja-JP.yml (Polish) 2018-11-21 14:52:46 +09:00
710d3689d3 New translations ja-JP.yml (Korean) 2018-11-21 14:52:39 +09:00
3fee011369 New translations ja-JP.yml (Italian) 2018-11-21 14:52:33 +09:00
7cd4b8ba4f New translations ja-JP.yml (German) 2018-11-21 14:52:28 +09:00
31132de18b New translations ja-JP.yml (French) 2018-11-21 14:52:23 +09:00
c6cb271f6f New translations ja-JP.yml (English) 2018-11-21 14:52:18 +09:00
b7c4afd20c New translations ja-JP.yml (Chinese Simplified) 2018-11-21 14:52:14 +09:00
70395d200a New translations ja-JP.yml (Catalan) 2018-11-21 14:52:07 +09:00
562a5f66fc Improve usability 2018-11-21 14:44:49 +09:00
b2f8003602 [MFM] Better inline code parse 2018-11-21 12:55:15 +09:00
b7b36973f7 Fix: stop in DB check (#3356) 2018-11-21 12:45:40 +09:00
f7d5f597f3 10.56.2 2018-11-21 08:33:02 +09:00
79c7712241 Improve MFM 2018-11-21 08:32:40 +09:00
8f5f3985f4 [MFM] Fix hashtag parsing 2018-11-21 08:30:29 +09:00
ef30f36f55 10.56.1 2018-11-21 06:27:11 +09:00
4198497237 Improve test page 2018-11-21 06:25:58 +09:00
9b1612574e [Client] Fix #3114 2018-11-21 06:24:46 +09:00
ca8a218144 10.56.0 2018-11-21 05:47:40 +09:00
db9c2913cf Update index.vue 2018-11-21 05:36:55 +09:00
286674c2bb Fix bug 2018-11-21 05:27:06 +09:00
7c259185bc Fix bug 2018-11-21 05:26:48 +09:00
79ffbf95db Improve MFM parser (#3337)
* wip

* wip

* Refactor

* Refactor

* wip

* wip

* wip

* wip

* Refactor

* Refactor

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Clean up

* Update misskey-flavored-markdown.ts

* wip

* wip

* wip

* wip

* Update parser.ts

* wip

* Add new test

* wip

* Add new test

* Add new test

* wip

* Refactor

* Update parse.ts

* Refactor

* Update parser.ts

* wip
2018-11-21 05:11:00 +09:00
6e347e4221 Refactor checkMongoDb (#3339) 2018-11-20 21:19:14 +09:00
28ccb14166 Create backup.fr.md (#3342)
* Create backup.fr.md

Create backup.fr.md

* Fix typo

Fix typo
2018-11-20 21:18:39 +09:00
389315e000 Fix: ap/show (#3350) 2018-11-20 21:18:14 +09:00
af00464f5b New translations ja-JP.yml (French) 2018-11-20 17:38:45 +09:00
f522b3df91 New translations ja-JP.yml (French) 2018-11-20 17:22:49 +09:00
168db6891f Refactor spawnWorkers (#3338) 2018-11-20 12:25:58 +09:00
4a77548672 Refactor port checking (#3336) 2018-11-20 11:23:32 +09:00
e9ec4a3b84 New translations ja-JP.yml (English) 2018-11-20 06:51:54 +09:00
375b2bb284 Merge pull request #3324 from syuilo/l10n_develop
New Crowdin translations
2018-11-20 05:35:03 +09:00
b922277896 Update typescript-eslint-parser requirement from 21.0.0 to 21.0.1 (#3333)
Updates the requirements on [typescript-eslint-parser](https://github.com/eslint/typescript-eslint-parser) to permit the latest version.
- [Release notes](https://github.com/eslint/typescript-eslint-parser/releases)
- [Changelog](https://github.com/eslint/typescript-eslint-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/typescript-eslint-parser/commits/v21.0.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-20 05:34:40 +09:00
8f6f810dbd Update apexcharts requirement from 2.2.0 to 2.2.2 (#3334)
Updates the requirements on [apexcharts](https://github.com/apexcharts/apexcharts.js) to permit the latest version.
- [Release notes](https://github.com/apexcharts/apexcharts.js/releases)
- [Changelog](https://github.com/apexcharts/apexcharts.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/apexcharts/apexcharts.js/commits/v2.2.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-20 05:34:18 +09:00
8f0c433e05 Cores => Logical cores (#3332) 2018-11-20 05:30:22 +09:00
e332e3c248 Explicitly set max-age (#3330) 2018-11-20 05:29:51 +09:00
2f90c38604 New translations ja-JP.yml (German) 2018-11-20 01:12:33 +09:00
fa33d12bd7 New translations ja-JP.yml (German) 2018-11-20 00:16:06 +09:00
86ab496fd6 New translations ja-JP.yml (Chinese Simplified) 2018-11-19 23:54:55 +09:00
ca0cb6fd42 Merge environmentInfo and machineInfo into index.ts (#3319) 2018-11-19 13:39:10 +09:00
be52779bbc Use descriptive variables to improve readability (#3318) 2018-11-19 13:27:38 +09:00
23b64794a4 Call main at the end (#3317) 2018-11-19 12:58:58 +09:00
d5fed29df3 Merge pull request #3311 from syuilo/l10n_develop
New Crowdin translations
2018-11-19 09:18:45 +09:00
644bc985e7 Fix some image processing (#3313)
* Improve thunmbnail generation

* Respect orientation in Firefox
2018-11-19 09:17:16 +09:00
5c1dc31131 New translations ja-JP.yml (English) 2018-11-19 02:31:46 +09:00
31fae1caa6 New translations ja-JP.yml (French) 2018-11-19 02:22:05 +09:00
9bc85ac511 New translations ja-JP.yml (Norwegian) 2018-11-19 02:13:15 +09:00
69d6dc22b9 New translations ja-JP.yml (Dutch) 2018-11-19 02:13:10 +09:00
c4f81fc1a7 New translations ja-JP.yml (Japanese, Kansai) 2018-11-19 02:13:06 +09:00
9a866766e0 New translations ja-JP.yml (Spanish) 2018-11-19 02:13:02 +09:00
eb7153acee New translations ja-JP.yml (Russian) 2018-11-19 02:12:57 +09:00
f3d98da329 New translations ja-JP.yml (Portuguese) 2018-11-19 02:12:51 +09:00
aac1c50a77 New translations ja-JP.yml (Polish) 2018-11-19 02:12:47 +09:00
0619a27916 New translations ja-JP.yml (Korean) 2018-11-19 02:12:43 +09:00
49ba56493f New translations ja-JP.yml (Italian) 2018-11-19 02:12:38 +09:00
bf0dae8cc3 New translations ja-JP.yml (German) 2018-11-19 02:12:33 +09:00
fbf77afde1 New translations ja-JP.yml (French) 2018-11-19 02:12:27 +09:00
5159caa9ff New translations ja-JP.yml (English) 2018-11-19 02:12:21 +09:00
5aef35f0b7 New translations ja-JP.yml (Chinese Simplified) 2018-11-19 02:12:16 +09:00
4db2843e7b New translations ja-JP.yml (Catalan) 2018-11-19 02:12:10 +09:00
a390e57dff [Client] Improve UI 2018-11-19 02:09:27 +09:00
8d70587814 Refactoring 2018-11-19 02:04:12 +09:00
6f3775de9d New translations ja-JP.yml (French) 2018-11-19 02:01:57 +09:00
5a0a3050ae New translations ja-JP.yml (French) 2018-11-19 01:53:15 +09:00
cbbf141846 New translations ja-JP.yml (French) 2018-11-19 01:42:15 +09:00
43c2b00cf8 Show visibility in note-detail (#3308)
* Show visibility in note-detail

* fix
2018-11-18 22:47:21 +09:00
046ccd49ca Merge pull request #3305 from syuilo/l10n_develop
New Crowdin translations
2018-11-18 22:46:28 +09:00
e7df6f5c0e New translations ja-JP.yml (English) 2018-11-18 21:31:51 +09:00
c67110835c New translations ja-JP.yml (Chinese Simplified) 2018-11-18 15:11:49 +09:00
4c97b847e7 10.55.0 2018-11-18 12:00:07 +09:00
cfa4f0fe0b Add zh-CN 2018-11-18 11:59:26 +09:00
9672343360 New Crowdin translations (#3255)
* New translations ja-JP.yml (Catalan)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Italian)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Catalan)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Italian)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Catalan)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Italian)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Catalan)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Italian)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Catalan)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Italian)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Catalan)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (German)

* New translations ja-JP.yml (Italian)

* New translations ja-JP.yml (Korean)

* New translations ja-JP.yml (Polish)

* New translations ja-JP.yml (Portuguese)

* New translations ja-JP.yml (Russian)

* New translations ja-JP.yml (Spanish)

* New translations ja-JP.yml (Japanese, Kansai)

* New translations ja-JP.yml (Dutch)

* New translations ja-JP.yml (Norwegian)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Italian)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (French)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (Chinese Simplified)

* New translations ja-JP.yml (English)

* New translations ja-JP.yml (Chinese Simplified)
2018-11-18 10:56:51 +09:00
80fdfe54c4 Add faUserClock icon for follow requests (#3303) 2018-11-18 01:10:57 +09:00
7fcbe87591 Improve relative time detection (#3302) 2018-11-17 20:57:23 +09:00
e401ba9e25 Update visibility text (#3299) 2018-11-17 18:21:05 +09:00
35db61f1b4 To able to store local only visibilities (#3298) 2018-11-17 13:21:40 +09:00
6c72545fc8 [Test] Add a test and some updtes 2018-11-17 12:52:20 +09:00
70385ca670 Update @types/webpack requirement from 4.4.18 to 4.4.19 (#3295)
Updates the requirements on [@types/webpack](https://github.com/DefinitelyTyped/DefinitelyTyped) to permit the latest version.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-17 05:30:30 +09:00
a8e72d39f7 Update vue-svg-inline-loader requirement from 1.2.1 to 1.2.2 (#3294)
Updates the requirements on [vue-svg-inline-loader](https://github.com/oliverfindl/vue-svg-inline-loader) to permit the latest version.
- [Release notes](https://github.com/oliverfindl/vue-svg-inline-loader/releases)
- [Commits](https://github.com/oliverfindl/vue-svg-inline-loader/commits/v1.2.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-17 05:30:18 +09:00
0bf54b3ff6 Renote visibility (#3290) 2018-11-17 03:25:48 +09:00
db657c2a62 Hide unused login method (#3285) 2018-11-17 02:13:01 +09:00
01964f3926 Add missing Robot icon (used on user profiles) (#3284) 2018-11-17 01:55:37 +09:00
bfd6bb0fda Add missing Map Marker icon (used on user profiles) (#3283) 2018-11-17 01:50:39 +09:00
3fc70996e2 Change math syntax (#3280) 2018-11-17 00:31:49 +09:00
cb0874f15a 10.54.0 2018-11-16 23:19:34 +09:00
9239e37b45 Fix #3273 (#3277) 2018-11-16 23:14:11 +09:00
57d80932a4 Add an optional setting to remain deleted note (#3271)
Co-authored-by: Aya Morisawa <AyaMorisawa4869@gmail.com>
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-11-16 23:13:37 +09:00
8569970fbe Update github-bot.ts 2018-11-16 23:10:48 +09:00
713e9ad5f4 Resolve #3274 2018-11-16 23:09:33 +09:00
59e229d962 Update github-bot.ts 2018-11-16 23:02:01 +09:00
3c5f09cda2 Clean up 2018-11-16 23:01:14 +09:00
e42aa2530d Update github-bot.ts
follow dvelop instead master
2018-11-16 23:00:34 +09:00
1fd298ac9c Update docker.en.md (#3272) 2018-11-16 22:47:10 +09:00
1a73f52541 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-16 22:32:17 +09:00
27e458f884 Do not use camelCase in html 2018-11-16 22:32:06 +09:00
ba3e2a9371 Update setup.en.md (#3270)
* [doc] run as root

* [doc] update setup guide headings
2018-11-16 22:31:53 +09:00
831e8f8583 Refactoring 2018-11-16 22:31:28 +09:00
0ff390ed80 [MFM] Improve various parsing
Resolve #2779
Resolve #3053
2018-11-16 21:57:19 +09:00
e3b8495431 [MFM] Better URL parsing 2018-11-16 21:30:01 +09:00
da10ba3fea [Client] Add missing icon
Resolve #3267
2018-11-16 18:34:52 +09:00
cc7de853b4 [Client] Wrap formula component to split code 2018-11-16 18:31:25 +09:00
23d8235197 Revert "[Client] Load katex async to reduce bundle size"
This reverts commit 37e3d60ade.
2018-11-16 18:26:19 +09:00
37e3d60ade [Client] Load katex async to reduce bundle size 2018-11-16 18:22:44 +09:00
83a3426dd5 Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-16 17:56:08 +09:00
a2549192ca Update misskey-flavored-markdown.ts 2018-11-16 17:55:48 +09:00
9d3a1cab6e Fix #3224 (#3265) 2018-11-16 17:41:52 +09:00
06f8d8f0a3 Show server version on server.info.vue (#3264) 2018-11-16 17:24:03 +09:00
fa66b79e2d Update the locale when version or language changed (#3263) 2018-11-16 17:13:22 +09:00
81312f5a93 Remove a trailing whitespace (#3261) 2018-11-16 17:04:28 +09:00
ad84901f39 Support math rendering on MFM (#3260) 2018-11-16 17:03:52 +09:00
d2385a0e52 Do not show duplicate url-preview (#3259) 2018-11-16 16:35:13 +09:00
39285fc2d0 10.53.0 2018-11-16 05:56:58 +09:00
6e491c1466 Refactoring 2018-11-16 05:53:17 +09:00
84152aa663 Update typescript-eslint-parser requirement from 20.1.1 to 21.0.0 (#3237)
Updates the requirements on [typescript-eslint-parser](https://github.com/eslint/typescript-eslint-parser) to permit the latest version.
- [Release notes](https://github.com/eslint/typescript-eslint-parser/releases)
- [Changelog](https://github.com/eslint/typescript-eslint-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/typescript-eslint-parser/commits/v21.0.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-16 05:49:21 +09:00
600fc65c2f Update showdown requirement from 1.8.7 to 1.9.0 (#3252)
Updates the requirements on [showdown](https://github.com/showdownjs/showdown) to permit the latest version.
- [Release notes](https://github.com/showdownjs/showdown/releases)
- [Changelog](https://github.com/showdownjs/showdown/blob/master/CHANGELOG.md)
- [Commits](https://github.com/showdownjs/showdown/commits/1.9.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-16 05:49:07 +09:00
40e2733424 Update mongodb requirement from 3.1.8 to 3.1.9 (#3253)
Updates the requirements on [mongodb](https://github.com/mongodb/node-mongodb-native) to permit the latest version.
- [Release notes](https://github.com/mongodb/node-mongodb-native/releases)
- [Changelog](https://github.com/mongodb/node-mongodb-native/blob/master/HISTORY.md)
- [Commits](https://github.com/mongodb/node-mongodb-native/commits/v3.1.9)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-16 05:48:39 +09:00
bceb02d760 local only visibility (#3254)
* local only visibility

* fix UI
2018-11-16 05:47:29 +09:00
aaaaf2681a [Client] Add missing icon 2018-11-16 05:38:16 +09:00
3c3ef9bba0 [Client] ✌️ 2018-11-16 05:36:52 +09:00
338f3a981f Merge branch 'develop' of https://github.com/syuilo/misskey into develop 2018-11-16 05:26:48 +09:00
a86ae9fa50 Better UX 2018-11-16 05:26:36 +09:00
a3c4e8a1bc [Client] Improve admin dashboard 2018-11-16 05:21:52 +09:00
6a7c18e8db Merge pull request #3250 from syuilo/l10n_develop
New Crowdin translations
2018-11-16 05:10:41 +09:00
672b7a4c3d 🎨 2018-11-16 05:07:59 +09:00
bf3fee4481 Check the port is configured (#3251) 2018-11-16 03:25:35 +09:00
a3c8d1d732 New translations ja-JP.yml (Chinese Simplified) 2018-11-16 00:15:45 +09:00
bb03d8c49a New translations ja-JP.yml (Chinese Simplified) 2018-11-15 23:59:41 +09:00
fbd5abe3b6 New translations ja-JP.yml (Chinese Simplified) 2018-11-15 23:43:21 +09:00
5ac390abe9 New translations ja-JP.yml (Chinese Simplified) 2018-11-15 23:38:10 +09:00
766cae2299 Check Node.js version (#3245)
* Check Node.js version

* Fix bug
2018-11-15 22:17:06 +09:00
d9828fdc6a 10.52.0 2018-11-15 22:04:57 +09:00
4114ce4a04 [Client] Split some components to improve performance 2018-11-15 22:04:12 +09:00
6090630260 Merge pull request #3236 from syuilo/l10n_develop
New Crowdin translations
2018-11-15 21:44:39 +09:00
259cfeae17 Use Node.js official Docker image (#3241)
* Update Dockerfile

* Update Dockerfile
2018-11-15 21:43:02 +09:00
ebe15c4711 New translations ja-JP.yml (English) 2018-11-15 21:03:36 +09:00
75a740a110 New translations ja-JP.yml (English) 2018-11-15 20:53:18 +09:00
0c085c4f74 New translations ja-JP.yml (English) 2018-11-15 20:44:10 +09:00
1d819e79db New translations ja-JP.yml (Norwegian) 2018-11-15 19:24:47 +09:00
515b79dcf0 New translations ja-JP.yml (Dutch) 2018-11-15 19:24:41 +09:00
269e12abb4 New translations ja-JP.yml (Japanese, Kansai) 2018-11-15 19:24:36 +09:00
cf5be6ff5a New translations ja-JP.yml (Spanish) 2018-11-15 19:24:32 +09:00
f140adbc9d New translations ja-JP.yml (Russian) 2018-11-15 19:24:25 +09:00
6c31406bb0 New translations ja-JP.yml (Portuguese) 2018-11-15 19:24:19 +09:00
b6e8626908 New translations ja-JP.yml (Polish) 2018-11-15 19:24:15 +09:00
64a3a4915a New translations ja-JP.yml (Korean) 2018-11-15 19:24:11 +09:00
fd71f24d46 New translations ja-JP.yml (Italian) 2018-11-15 19:24:05 +09:00
65b5c6753f New translations ja-JP.yml (German) 2018-11-15 19:23:59 +09:00
7408bbce37 New translations ja-JP.yml (French) 2018-11-15 19:23:54 +09:00
0f58978c9f New translations ja-JP.yml (English) 2018-11-15 19:23:47 +09:00
01ca3fd6b2 New translations ja-JP.yml (Chinese Simplified) 2018-11-15 19:23:43 +09:00
26c366156b New translations ja-JP.yml (Catalan) 2018-11-15 19:23:37 +09:00
9d8f7b081d WIP: Add Discord auth (#3239)
* Add Discord auth

* Apply review 175263424
2018-11-15 19:15:04 +09:00
9d8ebb795d New translations ja-JP.yml (French) 2018-11-15 18:11:46 +09:00
8be98e4cb8 New translations ja-JP.yml (French) 2018-11-15 17:32:46 +09:00
3c229c9950 New translations ja-JP.yml (Chinese Simplified) 2018-11-15 13:51:55 +09:00
f2263faf7d New translations ja-JP.yml (Chinese Simplified) 2018-11-15 13:44:35 +09:00
39c7cf3e66 New translations ja-JP.yml (Chinese Simplified) 2018-11-15 13:32:36 +09:00
5ee24e5c09 New translations ja-JP.yml (French) 2018-11-15 07:21:58 +09:00
a34fdc2068 10.51.2 2018-11-15 07:04:25 +09:00
2c2cd893b8 🎨 2018-11-15 07:03:46 +09:00
aecf9329bd New translations ja-JP.yml (Norwegian) 2018-11-15 04:24:24 +09:00
b2384605e7 New translations ja-JP.yml (Dutch) 2018-11-15 04:24:20 +09:00
57ab5ab604 New translations ja-JP.yml (Japanese, Kansai) 2018-11-15 04:24:15 +09:00
e493a20301 New translations ja-JP.yml (Spanish) 2018-11-15 04:24:09 +09:00
0bd5ed937c New translations ja-JP.yml (Russian) 2018-11-15 04:24:03 +09:00
6a9b3bc64e New translations ja-JP.yml (Portuguese) 2018-11-15 04:23:58 +09:00
4c1ef3e6a5 New translations ja-JP.yml (Polish) 2018-11-15 04:23:54 +09:00
2ea250f954 New translations ja-JP.yml (Korean) 2018-11-15 04:23:49 +09:00
5d810980f8 New translations ja-JP.yml (Italian) 2018-11-15 04:23:43 +09:00
d51b4e27cc New translations ja-JP.yml (German) 2018-11-15 04:23:37 +09:00
c01c555309 New translations ja-JP.yml (French) 2018-11-15 04:23:33 +09:00
ce2e66d9b0 New translations ja-JP.yml (English) 2018-11-15 04:23:27 +09:00
9550acd61e New translations ja-JP.yml (Chinese Simplified) 2018-11-15 04:23:23 +09:00
d95b5daa6d New translations ja-JP.yml (Catalan) 2018-11-15 04:23:18 +09:00
532a7b90f3 New translations ja-JP.yml (Chinese Simplified) 2018-11-15 00:55:47 +09:00
4e8c200349 New translations ja-JP.yml (Chinese Simplified) 2018-11-15 00:43:37 +09:00
475 changed files with 15360 additions and 8628 deletions

3
.autogen/check_pr.jq Normal file
View File

@ -0,0 +1,3 @@
.[]
.head
.label

2
.autogen/next_url.jq Normal file
View File

@ -0,0 +1,2 @@
.links
.next

39
.autogen/patreon.jq Normal file
View File

@ -0,0 +1,39 @@
(
.data |
map(
select(
.relationships
.currently_entitled_tiers
.data[]
)
) |
map(
.relationships
.user
.data
.id
)
) as $data |
.included |
map(
select(
.id as $id |
$data |
contains(
[
$id
]
)
)
) |
map(
.attributes |
[
.full_name,
.thumb_url,
.url
] |
@tsv
) |
.[] |
@text

View File

@ -5,7 +5,7 @@
# __MISSKEY_HEAD=acid-chicken:patch-autogen # __MISSKEY_HEAD=acid-chicken:patch-autogen
# __MISSKEY_REPO=syuilo/misskey # __MISSKEY_REPO=syuilo/misskey
# __MISSKEY_BRANCH=develop # __MISSKEY_BRANCH=develop
test "$(curl -LSs -w '\n' -- "https://api.github.com/repos/$REPO/pulls?access_token=$__MISSKEY_GITHUB_TOKEN" | jq -r '.[].head.label' | grep $__MISSKEY_HEAD)" && exit 1 test "$(curl -LSs -w '\n' -- "https://api.github.com/repos/$REPO/pulls?access_token=$__MISSKEY_GITHUB_TOKEN" | jq -r -f check_pr.jq | grep $__MISSKEY_HEAD)" && exit 1
cd "$(dirname $0)/.." && \ cd "$(dirname $0)/.." && \
touch null.cache && \ touch null.cache && \
rm *.cache && \ rm *.cache && \
@ -30,12 +30,12 @@ while :
touch patreon.cache && \ touch patreon.cache && \
rm patreon.cache && \ rm patreon.cache && \
cat patreon.raw.cache | \ cat patreon.raw.cache | \
jq -r '(.data|map(select(.relationships.currently_entitled_tiers.data[]))|map(.relationships.user.data.id))as$data|.included|map(select(.id as$id|$data|contains([$id])))|map(.attributes|[.full_name,.thumb_url,.url]|@tsv)|.[]|@text' >> patreon.cache && \ jq -r -f patreon.jq >> patreon.cache && \
echo '<table><tr>' >> patreon.md.cache && \ echo '<table><tr>' >> patreon.md.cache && \
cat patreon.cache | \ cat patreon.cache | \
awk -F'\t' '{print $2,$1}' | \ awk -F'\t' '{print $2,$1}' | \
sed -e 's/ /\\" alt=\\"/' | \ sed -e 's/ /\\" alt=\\"/' | \
xargs -I% echo '<td><img src="%"></td>' >> patreon.md.cache && \ xargs -I% echo '<td><img src="%" width="100"></td>' >> patreon.md.cache && \
echo '</tr><tr>' >> patreon.md.cache && \ echo '</tr><tr>' >> patreon.md.cache && \
cat patreon.cache | \ cat patreon.cache | \
awk -F'\t' '{print $3,$1}' | \ awk -F'\t' '{print $3,$1}' | \
@ -43,7 +43,7 @@ while :
xargs -I% echo '<td><a href="%</a></td>' >> patreon.md.cache && \ xargs -I% echo '<td><a href="%</a></td>' >> patreon.md.cache && \
echo '</tr></table>' >> patreon.md.cache || \ echo '</tr></table>' >> patreon.md.cache || \
exit 1 exit 1
new_url="$(cat patreon.raw.cache | jq -r '.links.next')" new_url="$(cat patreon.raw.cache | jq -r -f next_url.jq)"
test "$new_url" = 'null' && \ test "$new_url" = 'null' && \
break || \ break || \
URL="$url" URL="$url"

View File

@ -108,22 +108,5 @@ autoAdmin: true
# port: 9200 # port: 9200
# pass: null # pass: null
# ServiceWorker
#sw:
# # Public key of VAPID
# public_key: example-sw-public-key
#
# # Private key of VAPID
# private_key: example-sw-private-key
# Clustering # Clustering
#clusterLimit: 1 #clusterLimit: 1
# Summaly proxy
#summalyProxy: "http://example.com"
# User recommendation
#user_recommendation:
# external: true
# engine: http://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}
# timeout: 300000

13
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,13 @@
# Summary
<!--
-
- * Please describe your changes here *
-
- If you are going to resolve some issue, please add this context.
- Resolve #ISSUE_NUMBER
-
- If you are going to fix some bug issue, please add this context.
- Fix #ISSUE_NUMBER
-
-->

1
.gitignore vendored
View File

@ -17,3 +17,4 @@ api-docs.json
/mongo /mongo
/elasticsearch /elasticsearch
*.code-workspace *.code-workspace
yarn.lock

View File

@ -1,9 +1,151 @@
ChangeLog ChangeLog
========= =========
破壊的変更のみ記載。 10.74.0
----------
* Pleromaとのフェデレーションを修正
* インスタンスのキャラクター画像を設定できるように
* Catモードの朝鮮語対応
* CWが付いた投稿に返信する際、そのCWを引き継ぐように
* 投稿のソースをクリップボードにコピーできるように
* i/notifications API で取得する通知の種別を配列で指定できるように
* パフォーマンスの改善
* バグ修正
This document describes breaking changes only. 10.73.0
-------
* テーマの強化
* line thiknessの設定はデバイスに保存するように
10.72.0
-------
* いくつかのテーマの追加
* デザインの調整
* バグ修正
* など
10.71.0
-------
* いくつかのテーマの追加
10.70.1
-------
* notes/mentions にミュートを適用するように
* Add id to return of users/relation
* デザインの調整
10.70.0
-------
* フォローしているユーザーからのフォローを自動承認するオプション
* 「非公開」の公開範囲を廃止
* Renote数の表示を廃止
* 投稿のフィルタリングを強化
* デザインの調整
10.69.0
-------
* 通知の管理を強化
* ユーザビリティの強化
* デザインの調整
10.68.0
-------
* 特定ユーザーにメンション付きで新規投稿ができるボタンを追加
* 自分の投稿にリアクションできないように
* 数式に文法エラーがあるとき、数式のソースをそのまま表示するように
* CWボタンにアンケートの有無を表記するように
* デスクトップ版で設定を新しいタブで開くように
* モバイル版で検索ができない問題を修正
* i18nの修正
10.67.0
-------
* トークのメッセージを削除できるように
* リアクションを取り消せるように
* Misskey以外のソフトウェアからの「Like」アクティビティをプリンではなく「いいね」として扱うように
* i18nの修正
* バグ修正
* など
10.66.2
-------
* i18nの修正
* ドライブのファイル一覧取得APIでファイルサイズによるソートが機能していなかった問題を修正
* リモートユーザーの更新時に、各ピン留め投稿の取得失敗は無視するように
* リモートMisskeyユーザーの情報が登録/更新出来なくなっていたのを修正
* メンションのリンク先URLに余計な@がプリフィクスされていたのを修正
* ダイレクトでリプライする際、リプライ先のユーザーは自動的に公開先として追加するように
* ダイレクトでメンションでもユーザーを指定できるように
10.66.1
-------
* ActivityPubのsharedInboxに関して修正
* MFMでのカッコの判定を改善
* バグ修正
10.66.0
-------
* ユーザーごとのRSSフィードを提供するように
* リストのユーザーがすべて表示できない問題を修正
* デザインの調整
* パフォーマンスの改善
10.65.0
-------
* 検索で投稿やユーザーのURLを入力した際にそれをフェッチして表示するように
* リストのリネームと削除をできるように
* リストからユーザーを削除できるように
* リモートの絵文字を更新するように
* ActivityPubのための絵文字エンドポイントを実装
* 管理者がドライブのファイルのNSFWを設定できるように
* ServiceWorkerの設定を管理者ページで行えるように
* メンションの判定を改善
* リモートの投稿を引用した際にオリジナルのURLを挿入するように
* クライアントのパフォーマンス改善
* CWの内容がタブタイトルに表示されるのを修正
* アカウントを作成したときにログイン状態にならない問題を修正
* 時計の針にテーマカラーが適用されていなかったのを修正
* 一部の日時の表示が日本語で表示されていたのを修正
* プロフィールの写真欄に画像以外のファイルが含まれる問題を修正
* メンションが含まれる投稿に返信する際、フォームに予めそれらのメンションがセットされた状態にならない問題を修正
* デッキのTLにUIの動きを減らすオプションが適用されていなかったのを修正
* ログイン画面のタイムラインに隠した投稿が表示される問題を修正
* サジェストが複数開いてしまう問題を修正
* APから来たタグに登録時の長さ制限が適用されていなかったのを修正
10.64.2
-------
* UIの動きを減らすオプションが一部のアニメーションに適用されなかったのを修正
10.64.1
-------
* レートリミットの調整
* アニメーションの調整
10.64.0
-------
* いくつかのアニメーションを追加
* OGP向けにインスタンスのバナー画像を提供するように
* 管理者ページでドライブのファイルを表示できるように
* ユーザビリティの強化
* バグ修正
10.63.1
-------
* メンションの表示を改善
* バグ修正
10.63.0
-------
* ActivityPubのユーザーフィールドをユーザーページに表示
* 404ページの実装
* パフォーマンスの向上
* バグ修正
10.62.2
-------
* バグ修正
* ユーザビリティの向上
10.0.0 10.0.0
------ ------

View File

@ -25,3 +25,16 @@ Misskey uses [vue-i18n](https://github.com/kazupon/vue-i18n).
## Continuous integration ## Continuous integration
Misskey uses CircleCI for automated test. Misskey uses CircleCI for automated test.
Configuration files are located in `/.circleci`. Configuration files are located in `/.circleci`.
## Glossary
### AP
Stands for _**A**ctivity**P**ub_.
### MFM
Stands for _**M**isskey **F**lavored **M**arkdown_.
### Mk
Stands for _**M**iss**k**ey_.
### SW
Stands for _**S**ervice**W**orker_.

View File

@ -1,26 +1,27 @@
FROM alpine:3.8 AS base FROM node:11-alpine AS base
ENV NODE_ENV=production ENV NODE_ENV=production
RUN apk add --no-cache nodejs nodejs-npm zlib
RUN npm i -g npm@latest RUN npm i -g npm@latest
WORKDIR /misskey WORKDIR /misskey
FROM base AS builder FROM base AS builder
RUN unlink /usr/bin/free
RUN apk add --no-cache \ RUN apk add --no-cache \
gcc \
g++ \
libc-dev \
python \
autoconf \ autoconf \
automake \ automake \
file \ file \
g++ \
gcc \
libc-dev \
libtool \
make \ make \
nasm \ nasm \
pkgconfig \ pkgconfig \
libtool \ procps \
python \
zlib-dev zlib-dev
RUN npm i -g node-gyp RUN npm i -g node-gyp

View File

@ -3,9 +3,9 @@
[![Misskey](/assets/title.png)](https://misskey.xyz/) [![Misskey](/assets/title.png)](https://misskey.xyz/)
================================================================ ================================================================
[![CircleCI](https://circleci.com/gh/syuilo/misskey.svg?style=svg)](https://circleci.com/gh/syuilo/misskey) [![CircleCI](https://img.shields.io/circleci/project/github/syuilo/misskey.svg?style=for-the-badge)](https://circleci.com/gh/syuilo/misskey)
[![][dependencies-badge]][dependencies-link] [![Dependencies](https://img.shields.io/david/syuilo/misskey.svg?style=for-the-badge)](https://david-dm.org/syuilo/misskey)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=for-the-badge)](http://makeapullrequest.com)
**Sophisticated microblogging platform, evolving forever.** **Sophisticated microblogging platform, evolving forever.**
@ -73,60 +73,62 @@ Please see [Contribution guide](./CONTRIBUTING.md).
---------------------------------------------------------------- ----------------------------------------------------------------
<!-- PATREON_START --> <!-- PATREON_START -->
<table><tr> <table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/12731202/0995c46cdcb54153ab5f073f5869b70a/1?token-time=2145916800&token-hash=Yd60FK_SWfQO56SeiJpy1tDHOnCV4xdEywQe8gn5_Wo%3D" alt="negao"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12190916/fb7fa7983c14425f890369535b1506a4/1?token-time=2145916800&token-hash=WeuDzzz24cRXJogyIkU-mxARqkdyms-rcZKbO-GpGjw%3D" alt="weep" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/12913507/f7181eacafe8469a93033d85f5969c29/2?token-time=2145916800&token-hash=mgPdX9TqZxEg4TTPuc477dxhIgYk9246qafjWZEqZ7g%3D" alt="Melilot"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12731202/0995c46cdcb54153ab5f073f5869b70a/1?token-time=2145916800&token-hash=prtYqPOiSHBulhM7NU0VzMaWx39-9ntdq25b6kafDNA%3D" alt="negao" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/3384329/8b713330cb27404ea6e9fac50ff96efe/1?token-time=2145916800&token-hash=0eu4-m1gTWA9PhptVZt6rdKcusqcD7RB87rJT23VVFI%3D" alt="べすれい"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12913507/f7181eacafe8469a93033d85f5969c29/2?token-time=2145916800&token-hash=djaJ9cwy9uwTiF9UFtxYQdS8Nw7BhyfaREzZUbErN-0%3D" alt="Melilot" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/12021162/963128bb8d14476dbd8407943db8f31a/1?token-time=2145916800&token-hash=GgJ_NmUB6_nnRNLVGUWjV-WX91On7BOu59LKncYV9fE%3D" alt="gutfuckllc"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12999811/5f349fafcce44dd1824a8b1ebbec4564/3?token-time=2145916800&token-hash=LtV2lRi3L2jOWMLwccr9qWYfPrFlzIo2jYZHKzHEb6k%3D" alt="Xeltica" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/11357794/923ce94cd8c44ba788ee931907881839/1?token-time=2145916800&token-hash=I8lJVM8LeW6TSo5W6uIIRZ42cw83zp1wK_FsbzY0mcQ%3D" alt="mydarkstar"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/3384329/8b713330cb27404ea6e9fac50ff96efe/1?token-time=2145916800&token-hash=Ch3iF81ZGP0LMo894Y9ajpLisgtE91SnxtZE7fxsgrM%3D" alt="べすれい" width="100"></td>
<td><img src="https://c8.patreon.com/2/100/12718187" alt="Peter G."></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12021162/963128bb8d14476dbd8407943db8f31a/1?token-time=2145916800&token-hash=1FlxS9MEgmNGH_RHUVHbO5hIXB5I1z0lvA33CTvYvjA%3D" alt="gutfuckllc" width="100"></td>
</tr><tr> </tr><tr>
<td><a href="https://www.patreon.com/weepjp">weep</a></td>
<td><a href="https://www.patreon.com/negao">negao</a></td> <td><a href="https://www.patreon.com/negao">negao</a></td>
<td><a href="https://www.patreon.com/user?u=12913507">Melilot</a></td> <td><a href="https://www.patreon.com/user?u=12913507">Melilot</a></td>
<td><a href="https://www.patreon.com/Xeltica">Xeltica</a></td>
<td><a href="https://www.patreon.com/user?u=3384329">べすれい</a></td> <td><a href="https://www.patreon.com/user?u=3384329">べすれい</a></td>
<td><a href="https://www.patreon.com/gutfuckllc">gutfuckllc</a></td> <td><a href="https://www.patreon.com/gutfuckllc">gutfuckllc</a></td>
<td><a href="https://www.patreon.com/mydarkstar">mydarkstar</a></td>
<td><a href="https://www.patreon.com/user?u=12718187">Peter G.</a></td>
</tr></table> </tr></table>
<table><tr> <table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/13039004/509d0c412eb14ae08d6a812a3054f7d6/1?token-time=2145916800&token-hash=zwSu01tOtn5xTUucDZHuPsCxF2HBEMVs9ROJKTlEV_o%3D" alt="nemu"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/11357794/923ce94cd8c44ba788ee931907881839/1?token-time=2145916800&token-hash=0xgcpqvFDqRcV_YIEhcPNVH7gs9sLg_BBnTJXCkN4ao%3D" alt="mydarkstar" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/5881381/6235ca5d3fb04c8e95ef5b4ff2abcc18/3?token-time=2145916800&token-hash=qsdn0-e6yLaLI6hUX9JAkyTR6a5UdnSp7T1foniBvGQ%3D" alt="YUKIMOCHI"></td> <td><img src="https://c8.patreon.com/2/200/12718187" alt="Peter G." width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/8241184/39e18850e87a449e9c9a71acb3310ebd/2?token-time=2145916800&token-hash=iUXOQzRyJDv3PJxwS7Mjwg1459dzh2trOq6NFtXu_OM%3D" alt="Acid Chicken"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13039004/509d0c412eb14ae08d6a812a3054f7d6/1?token-time=2145916800&token-hash=2PsbFNw0tnubZzgSXD01R6hIgncfiElG7H7HX2Y3dyo%3D" alt="nemu" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/13034746/c711c7f58e204ecfbc2fd646bc8a4eee/1?token-time=2145916800&token-hash=UERBN4OyP7Nh5XwwdDg0N0IE5cD6_qUQMO81Z5Wizso%3D" alt="Hiratake"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5881381/6235ca5d3fb04c8e95ef5b4ff2abcc18/3?token-time=2145916800&token-hash=9JtETp0X8gI280Ne1E8bxn6j4Lw5o2k4mJkICx97V_k%3D" alt="YUKIMOCHI" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/10789744/97175095d8f04c0f86225ff47cb98d40/1?token-time=2145916800&token-hash=P4BIzCX2I1CkEP66ottfhsC8Wr6BUSamjA-vq3pLqFI%3D" alt="Naoki Hirayama"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/8241184/39e18850e87a449e9c9a71acb3310ebd/2?token-time=2145916800&token-hash=zrInDotuEIFslKphuSiCqr3M-r-rveTXjVKWr-VK6M0%3D" alt="Acid Chicken" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/4503830/ccf2cc867ea64de0b524bb2e24b9a1cb/1?token-time=2145916800&token-hash=S1zP0QyLU52Dqq6dtc9qNYyWfW86XrYHiR4NMbeOrnA%3D" alt="dansup"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/13034746/c711c7f58e204ecfbc2fd646bc8a4eee/1?token-time=2145916800&token-hash=5T8XcaAf9Zyzfg3QubR06s_kJZkArVEM2dwObrBVAU4%3D" alt="Hiratake" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/619786/32cf01444db24e578cd1982c197f6fc6/1?token-time=2145916800&token-hash=tB1e_r8RlZ5sFL0KV_e8dugapxatNBRK1Z3h67TO1g8%3D" alt="Gargron"></td> <td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/10789744/97175095d8f04c0f86225ff47cb98d40/1?token-time=2145916800&token-hash=ubVARikVOg3v7NW6LDhtG-ClE1LTU3I2TJ3js2-5xDs%3D" alt="Naoki Hirayama" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/5731881/4b6038e6cda34c04b83a5fcce3806a93/1?token-time=2145916800&token-hash=VZUtwrjQa8Jml4twCjHYQQZ64wHEY4oIlGl7Kc-VYUQ%3D" alt="Nokotaro Takeda"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJoIjoxMDAsInciOjEwMH0%3D/patreon-media/p/user/12531784/93a45137841849329ba692da92ac7c60/1?token-time=2145916800&token-hash=tMosUojzUYJCH_3t--tvYA-SMCyrS__hzSndyaRSnbo%3D" alt="Takashi Shibuya"></td>
</tr><tr> </tr><tr>
<td><a href="https://www.patreon.com/mydarkstar">mydarkstar</a></td>
<td><a href="https://www.patreon.com/user?u=12718187">Peter G.</a></td>
<td><a href="https://www.patreon.com/user?u=13039004">nemu</a></td> <td><a href="https://www.patreon.com/user?u=13039004">nemu</a></td>
<td><a href="https://www.patreon.com/yukimochi">YUKIMOCHI</a></td> <td><a href="https://www.patreon.com/yukimochi">YUKIMOCHI</a></td>
<td><a href="https://www.patreon.com/acid_chicken">Acid Chicken</a></td> <td><a href="https://www.patreon.com/acid_chicken">Acid Chicken</a></td>
<td><a href="https://www.patreon.com/hiratake">Hiratake</a></td> <td><a href="https://www.patreon.com/hiratake">Hiratake</a></td>
<td><a href="https://www.patreon.com/spinlock">Naoki Hirayama</a></td> <td><a href="https://www.patreon.com/spinlock">Naoki Hirayama</a></td>
</tr></table>
<table><tr>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/4503830/ccf2cc867ea64de0b524bb2e24b9a1cb/1?token-time=2145916800&token-hash=Ksk_2l3gjPDbnzMUOCSW1E-hdPJsNs2tSR4_RAakRK8%3D" alt="dansup" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/619786/32cf01444db24e578cd1982c197f6fc6/1?token-time=2145916800&token-hash=CXe9AqlZy9AsYfiWd3OBYVOzvODoN47Litz0Tu4BFpU%3D" alt="Gargron" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/5731881/4b6038e6cda34c04b83a5fcce3806a93/1?token-time=2145916800&token-hash=xhR1n6NAAyEb-IUXLD6_dshkFa3mefU5ZZuk1L8qKTs%3D" alt="Nokotaro Takeda" width="100"></td>
<td><img src="https://c10.patreonusercontent.com/3/eyJ3IjoyMDB9/patreon-media/p/user/12531784/93a45137841849329ba692da92ac7c60/1?token-time=2145916800&token-hash=uR-48MQ0A4j0irQSrCAQZJ-sJUSs_Fkihlg3-l59b7c%3D" alt="Takashi Shibuya" width="100"></td>
</tr><tr>
<td><a href="https://www.patreon.com/dansup">dansup</a></td> <td><a href="https://www.patreon.com/dansup">dansup</a></td>
<td><a href="https://www.patreon.com/mastodon">Gargron</a></td> <td><a href="https://www.patreon.com/mastodon">Gargron</a></td>
<td><a href="https://www.patreon.com/takenoko">Nokotaro Takeda</a></td> <td><a href="https://www.patreon.com/takenoko">Nokotaro Takeda</a></td>
<td><a href="https://www.patreon.com/user?u=12531784">Takashi Shibuya</a></td> <td><a href="https://www.patreon.com/user?u=12531784">Takashi Shibuya</a></td>
</tr></table> </tr></table>
<table><tr>
</tr><tr>
</tr></table>
**Last updated:** Wed, 31 Oct 2018 23:21:06 UTC **Last updated:** Sun, 06 Jan 2019 21:53:06 UTC
<!-- PATREON_END --> <!-- PATREON_END -->
:four_leaf_clover: Copyright :four_leaf_clover: Copyright
---------------------------------------------------------------- ----------------------------------------------------------------
> Copyright (c) 2014-2018 syuilo > Copyright (c) 2014-2019 syuilo
Misskey is an open-source software licensed under the [GNU AGPLv3](LICENSE). Misskey is an open-source software licensed under the [GNU AGPLv3](LICENSE).
[![][agpl-3.0-badge]][AGPL-3.0] [![][agpl-3.0-badge]][AGPL-3.0]
[agpl-3.0]: https://www.gnu.org/licenses/agpl-3.0.en.html [agpl-3.0]: https://www.gnu.org/licenses/agpl-3.0.en.html
[agpl-3.0-badge]: https://img.shields.io/badge/license-AGPL--3.0-444444.svg?style=flat-square [agpl-3.0-badge]: https://img.shields.io/badge/license-AGPL--3.0-444444.svg?style=for-the-badge
[dependencies-link]: https://david-dm.org/syuilo/misskey
[dependencies-badge]: https://img.shields.io/david/syuilo/misskey.svg?style=flat-square
[backer-url]: #backers [backer-url]: #backers
[backer-badge]: https://opencollective.com/misskey/backers/badge.svg [backer-badge]: https://opencollective.com/misskey/backers/badge.svg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 KiB

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 344 KiB

After

Width:  |  Height:  |  Size: 317 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 125 KiB

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 KiB

After

Width:  |  Height:  |  Size: 235 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 264 KiB

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@ -1,108 +1,17 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg <svg
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#" xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="512"
height="512"
viewBox="0 0 135.46667 135.46667"
version="1.1"
id="svg8" id="svg8"
inkscape:version="0.92.1 r15371" version="1.1"
sodipodi:docname="favicon.svg" viewBox="0 0 135.46667 135.46667"
inkscape:export-filename="C:\Users\syuilo\projects\misskey\assets\favicon\16.png" height="512"
inkscape:export-xdpi="3" width="512">
inkscape:export-ydpi="3">
<defs <defs
id="defs2"> id="defs2" />
<inkscape:path-effect
effect="simplify"
id="path-effect5115"
is_visible="true"
steps="1"
threshold="0.000408163"
smooth_angles="360"
helper_size="0"
simplify_individual_paths="false"
simplify_just_coalesce="false"
simplifyindividualpaths="false"
simplifyJustCoalesce="false" />
<inkscape:path-effect
effect="simplify"
id="path-effect5111"
is_visible="true"
steps="1"
threshold="0.000408163"
smooth_angles="360"
helper_size="0"
simplify_individual_paths="false"
simplify_just_coalesce="false"
simplifyindividualpaths="false"
simplifyJustCoalesce="false" />
<inkscape:path-effect
effect="simplify"
id="path-effect5104"
is_visible="true"
steps="1"
threshold="0.000408163"
smooth_angles="360"
helper_size="0"
simplify_individual_paths="false"
simplify_just_coalesce="false"
simplifyindividualpaths="false"
simplifyJustCoalesce="false" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4142136"
inkscape:cx="15.466544"
inkscape:cy="235.92965"
inkscape:document-units="px"
inkscape:current-layer="g4502"
showgrid="true"
units="px"
inkscape:snap-bbox="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="false"
inkscape:snap-smooth-nodes="true"
inkscape:snap-center="true"
inkscape:snap-page="true"
inkscape:window-width="1920"
inkscape:window-height="1027"
inkscape:window-x="-8"
inkscape:window-y="1072"
inkscape:window-maximized="1"
inkscape:snap-object-midpoints="true"
inkscape:snap-midpoints="true"
inkscape:object-paths="true"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
objecttolerance="1"
guidetolerance="1"
inkscape:snap-nodes="false"
inkscape:snap-others="false">
<inkscape:grid
type="xygrid"
id="grid4504"
spacingx="4.2333334"
spacingy="4.2333334"
empcolor="#ff3fff"
empopacity="0.25098039"
empspacing="4" />
</sodipodi:namedview>
<metadata <metadata
id="metadata5"> id="metadata5">
<rdf:RDF> <rdf:RDF>
@ -116,32 +25,27 @@
</rdf:RDF> </rdf:RDF>
</metadata> </metadata>
<g <g
inkscape:label="レイヤー 1" style="fill:#2fa3bc;fill-opacity:1"
inkscape:groupmode="layer" transform="translate(-30.809093,-111.78601)"
id="layer1" id="layer1">
transform="translate(-30.809093,-111.78601)">
<g <g
id="g4502" style="fill:#2fa3bc;fill-opacity:1"
transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)"> transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)"
id="g4502">
<g <g
style="fill:#2fa1bb;fill-opacity:1" id="g5125"
id="g5125"> transform="translate(-1.3333333e-6,-1.3439941e-6)"
style="fill:#2fa3bc;fill-opacity:1">
<g <g
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)" aria-label="Mi"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#2fa3bc;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="text4489" id="text4489"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#2fa1bb;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)">
aria-label="Mi">
<path <path
sodipodi:nodetypes="zccssscssccscczzzccsccsscscsccz"
inkscape:connector-curvature="0"
id="path5210" id="path5210"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#2fa1bb;fill-opacity:1;stroke-width:0.28950602px" transform="matrix(0.26412464,0,0,0.26412464,24.988264,136.28626)"
d="m 75.196381,231.17126 c -5.855419,0.0202 -10.885068,-3.50766 -13.2572,-7.61584 -1.266603,-1.79454 -3.772419,-2.43291 -3.807919,0 v 11.2332 c 0,4.51309 -1.645397,8.41504 -4.936191,11.70583 -3.196772,3.19677 -7.098714,4.79516 -11.705826,4.79516 -4.513089,0 -8.415031,-1.59839 -11.705825,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -61.7729 c 0,-3.47884 0.987238,-6.6286 2.961715,-9.44928 2.068499,-2.91471 4.701135,-4.9362 7.897906,-6.06447 1.786431,-0.65816 3.666885,-0.98724 5.641362,-0.98724 5.077225,0 9.308247,1.97448 12.693064,5.92343 1.786431,1.97448 2.820681,3.00873 3.102749,3.10275 0,0 13.408119,16.21319 13.78421,16.49526 0.376091,0.28206 1.480789,2.43848 4.127113,2.43848 2.646324,0 3.89218,-2.15642 4.26827,-2.43848 0.376091,-0.28207 13.784088,-16.49526 13.784088,-16.49526 0.09402,0.094 1.081261,-0.94022 2.961715,-3.10275 3.478837,-3.94895 7.756866,-5.92343 12.834096,-5.92343 1.88045,0 3.76091,0.32908 5.64136,0.98724 3.19677,1.12827 5.7824,3.14976 7.75688,6.06447 2.06849,2.82068 3.10274,5.97044 3.10274,9.44928 v 61.7729 c 0,4.51309 -1.6454,8.41504 -4.93619,11.70583 -3.19677,3.19677 -7.09871,4.79516 -11.70582,4.79516 -4.51309,0 -8.41504,-1.59839 -11.705828,-4.79516 -3.196772,-3.29079 -4.795158,-7.19274 -4.795158,-11.70583 v -11.2332 c -0.277898,-3.06563 -2.987588,-1.13379 -3.948953,0 -2.538613,4.70114 -7.401781,7.59567 -13.2572,7.61584 z" /> d="m 62.474609,76.585938 c -7.47555,0 -14.595784,1.246427 -21.359375,3.738281 C 29.011968,84.595952 19.044417,92.249798 11.212891,103.28516 3.7373405,113.96451 0,125.88934 0,139.06055 v 233.8789 c 0,17.08697 6.0510264,31.85913 18.154297,44.31836 12.459246,12.10327 27.233346,18.15625 44.320312,18.15625 17.442947,0 32.215089,-6.05298 44.318361,-18.15625 12.45925,-12.45923 18.68945,-27.23139 18.68945,-44.31836 V 330.4082 c 0.13441,-9.21122 9.6225,-6.79429 14.41797,0 8.98111,15.55395 28.02226,28.91242 50.19141,28.83594 22.16915,-0.0764 40.58194,-11.03699 50.19336,-28.83594 3.63981,-4.29263 13.89902,-11.60675 14.95117,0 v 42.53125 c 0,17.08697 6.05102,31.85913 18.15429,44.31836 12.45923,12.10327 27.23335,18.15625 44.32032,18.15625 17.44294,0 32.21509,-6.05298 44.31836,-18.15625 12.45923,-12.45923 18.68945,-27.23139 18.68945,-44.31836 v -233.8789 c 0,-13.17121 -3.9146,-25.09604 -11.74609,-35.77539 -7.47557,-11.035362 -17.26588,-18.689208 -29.36914,-22.960941 -7.11956,-2.491854 -14.23982,-3.738281 -21.35938,-3.738281 -19.22286,0 -35.41865,7.476649 -48.58984,22.427734 l -63.40235,74.199218 c -1.42391,1.06791 -6.14093,9.23242 -16.16015,9.23242 -10.01923,0 -14.20109,-8.16451 -15.625,-9.23242 L 110.53125,99.013672 C 97.716024,84.062587 81.697447,76.585938 62.474609,76.585938 Z m 395.060551,0 c -14.9511,-10e-7 -27.76596,5.340179 -38.44532,16.019531 -10.32338,10.323381 -15.48437,22.961011 -15.48437,37.912111 0,14.9511 5.16099,27.76596 15.48437,38.44531 10.67936,10.32338 23.49422,15.48633 38.44532,15.48633 14.95109,0 27.76596,-5.16295 38.44531,-15.48633 C 506.65982,158.28354 512,145.46868 512,130.51758 512,115.56648 506.65982,102.92885 495.98047,92.605469 485.30112,81.926117 472.48625,76.585938 457.53516,76.585938 Z m 0.5332,118.541012 c -14.9511,0 -27.76596,5.34018 -38.44531,16.01953 -10.67936,10.67936 -16.01758,23.49422 -16.01758,38.44532 v 131.89062 c 0,14.9511 5.33822,27.76596 16.01758,38.44531 10.67935,10.32339 23.49421,15.48633 38.44531,15.48633 14.9511,0 27.58873,-5.16294 37.91211,-15.48633 C 506.65982,409.24838 512,396.43352 512,381.48242 V 249.5918 c 0,-14.9511 -5.34018,-27.76596 -16.01953,-38.44532 -10.32338,-10.67935 -22.96101,-16.01953 -37.91211,-16.01953 z"
<path style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#2fa3bc;fill-opacity:1;stroke-width:1.09609616px" />
inkscape:connector-curvature="0"
id="path5212"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#2fa1bb;fill-opacity:1;stroke-width:0.28950602px"
d="m 145.83461,185.00361 q -5.92343,0 -10.15445,-4.08999 -4.08999,-4.23102 -4.08999,-10.15445 0,-5.92343 4.08999,-10.01342 4.23102,-4.23102 10.15445,-4.23102 5.92343,0 10.15445,4.23102 4.23102,4.08999 4.23102,10.01342 0,5.92343 -4.23102,10.15445 -4.23102,4.08999 -10.15445,4.08999 z m 0.14103,2.82068 q 5.92343,0 10.01342,4.23102 4.23102,4.23102 4.23102,10.15445 v 34.83541 q 0,5.92343 -4.23102,10.15445 -4.08999,4.08999 -10.01342,4.08999 -5.92343,0 -10.15445,-4.08999 -4.23102,-4.23102 -4.23102,-10.15445 v -34.83541 q 0,-5.92343 4.23102,-10.15445 4.23102,-4.23102 10.15445,-4.23102 z" />
</g> </g>
</g> </g>
</g> </g>

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 446 B

After

Width:  |  Height:  |  Size: 430 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 774 B

After

Width:  |  Height:  |  Size: 671 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1015 B

View File

@ -1,108 +1,17 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg <svg
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#" xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="512"
height="512"
viewBox="0 0 135.46667 135.46667"
version="1.1"
id="svg8" id="svg8"
inkscape:version="0.92.1 r15371" version="1.1"
sodipodi:docname="mi.svg" viewBox="0 0 135.46667 135.46667"
inkscape:export-filename="C:\Users\syuilo\projects\misskey\assets\favicon\32.png" height="512"
inkscape:export-xdpi="6" width="512">
inkscape:export-ydpi="6">
<defs <defs
id="defs2"> id="defs2" />
<inkscape:path-effect
effect="simplify"
id="path-effect5115"
is_visible="true"
steps="1"
threshold="0.000408163"
smooth_angles="360"
helper_size="0"
simplify_individual_paths="false"
simplify_just_coalesce="false"
simplifyindividualpaths="false"
simplifyJustCoalesce="false" />
<inkscape:path-effect
effect="simplify"
id="path-effect5111"
is_visible="true"
steps="1"
threshold="0.000408163"
smooth_angles="360"
helper_size="0"
simplify_individual_paths="false"
simplify_just_coalesce="false"
simplifyindividualpaths="false"
simplifyJustCoalesce="false" />
<inkscape:path-effect
effect="simplify"
id="path-effect5104"
is_visible="true"
steps="1"
threshold="0.000408163"
smooth_angles="360"
helper_size="0"
simplify_individual_paths="false"
simplify_just_coalesce="false"
simplifyindividualpaths="false"
simplifyJustCoalesce="false" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4142136"
inkscape:cx="232.39583"
inkscape:cy="251.50613"
inkscape:document-units="px"
inkscape:current-layer="g4502"
showgrid="true"
units="px"
inkscape:snap-bbox="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="false"
inkscape:snap-smooth-nodes="true"
inkscape:snap-center="true"
inkscape:snap-page="true"
inkscape:window-width="1920"
inkscape:window-height="1027"
inkscape:window-x="-8"
inkscape:window-y="1072"
inkscape:window-maximized="1"
inkscape:snap-object-midpoints="true"
inkscape:snap-midpoints="true"
inkscape:object-paths="true"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
objecttolerance="1"
guidetolerance="1"
inkscape:snap-nodes="false"
inkscape:snap-others="false">
<inkscape:grid
type="xygrid"
id="grid4504"
spacingx="4.2333334"
spacingy="4.2333334"
empcolor="#ff3fff"
empopacity="0.25098039"
empspacing="4" />
</sodipodi:namedview>
<metadata <metadata
id="metadata5"> id="metadata5">
<rdf:RDF> <rdf:RDF>
@ -111,32 +20,30 @@
<dc:format>image/svg+xml</dc:format> <dc:format>image/svg+xml</dc:format>
<dc:type <dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title /> <dc:title></dc:title>
</cc:Work> </cc:Work>
</rdf:RDF> </rdf:RDF>
</metadata> </metadata>
<g <g
inkscape:label="レイヤー 1" transform="translate(-30.809093,-111.78601)"
inkscape:groupmode="layer" id="layer1">
id="layer1"
transform="translate(-30.809093,-111.78601)">
<g <g
id="g4502" transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)"
transform="matrix(1.096096,0,0,1.096096,-2.960633,-44.023579)"> id="g4502">
<g <g
style="fill:#000000;fill-opacity:1" id="g5125"
transform="translate(-1.3333333e-6,-1.3439941e-6)" transform="translate(-1.3333333e-6,-1.3439941e-6)"
id="g5125"> style="fill:#000000;fill-opacity:1">
<g <g
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)" aria-label="Mi"
id="text4489"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:141.03404236px;line-height:476.69509888px;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.28950602px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
aria-label="Mi"> id="text4489"
transform="matrix(0.91391326,0,0,0.91391326,7.9719907,17.595761)">
<path <path
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#000000;fill-opacity:1;stroke-width:1.09609616px" id="path5210"
d="M 62.474609 76.585938 C 54.999059 76.585938 47.878825 77.832365 41.115234 80.324219 C 29.011968 84.595952 19.044417 92.249798 11.212891 103.28516 C 3.7373405 113.96451 0 125.88934 0 139.06055 L 0 372.93945 C 0 390.02642 6.0510264 404.79858 18.154297 417.25781 C 30.613543 429.36108 45.387643 435.41406 62.474609 435.41406 C 79.917556 435.41406 94.689698 429.36108 106.79297 417.25781 C 119.25222 404.79858 125.48242 390.02642 125.48242 372.93945 L 125.48242 330.4082 C 125.61683 321.19698 135.10492 323.61391 139.90039 330.4082 C 148.8815 345.96215 167.92265 359.32062 190.0918 359.24414 C 212.26095 359.16778 230.67374 348.20715 240.28516 330.4082 C 243.92497 326.11557 254.18418 318.80145 255.23633 330.4082 L 255.23633 372.93945 C 255.23633 390.02642 261.28735 404.79858 273.39062 417.25781 C 285.84985 429.36108 300.62397 435.41406 317.71094 435.41406 C 335.15388 435.41406 349.92603 429.36108 362.0293 417.25781 C 374.48853 404.79858 380.71875 390.02642 380.71875 372.93945 L 380.71875 139.06055 C 380.71875 125.88934 376.80415 113.96451 368.97266 103.28516 C 361.49709 92.249798 351.70678 84.595952 339.60352 80.324219 C 332.48396 77.832365 325.3637 76.585938 318.24414 76.585938 C 299.02128 76.585938 282.82549 84.062587 269.6543 99.013672 C 262.53473 107.20121 258.79542 111.11761 258.43945 110.76172 C 258.43945 110.76172 207.67587 172.14495 206.25195 173.21289 C 204.82804 174.2808 200.11102 182.44531 190.0918 182.44531 C 180.07257 182.44531 175.89071 174.2808 174.4668 173.21289 C 173.04288 172.14495 122.2793 110.76172 122.2793 110.76172 C 121.21136 110.40575 117.29484 106.48923 110.53125 99.013672 C 97.716024 84.062587 81.697447 76.585938 62.474609 76.585938 z M 457.53516 76.585938 C 442.58406 76.585937 429.7692 81.926117 419.08984 92.605469 C 408.76646 102.92885 403.60547 115.56648 403.60547 130.51758 C 403.60547 145.46868 408.76646 158.28354 419.08984 168.96289 C 429.7692 179.28627 442.58406 184.44922 457.53516 184.44922 C 472.48625 184.44922 485.30112 179.28627 495.98047 168.96289 C 506.65982 158.28354 512 145.46868 512 130.51758 C 512 115.56648 506.65982 102.92885 495.98047 92.605469 C 485.30112 81.926117 472.48625 76.585938 457.53516 76.585938 z M 458.06836 195.12695 C 443.11726 195.12695 430.3024 200.46713 419.62305 211.14648 C 408.94369 221.82584 403.60547 234.6407 403.60547 249.5918 L 403.60547 381.48242 C 403.60547 396.43352 408.94369 409.24838 419.62305 419.92773 C 430.3024 430.25112 443.11726 435.41406 458.06836 435.41406 C 473.01946 435.41406 485.65709 430.25112 495.98047 419.92773 C 506.65982 409.24838 512 396.43352 512 381.48242 L 512 249.5918 C 512 234.6407 506.65982 221.82584 495.98047 211.14648 C 485.65709 200.46713 473.01946 195.12695 458.06836 195.12695 z "
transform="matrix(0.26412464,0,0,0.26412464,24.988264,136.28626)" transform="matrix(0.26412464,0,0,0.26412464,24.988264,136.28626)"
id="path5210" /> d="m 62.474609,76.585938 c -7.47555,0 -14.595784,1.246427 -21.359375,3.738281 C 29.011968,84.595952 19.044417,92.249798 11.212891,103.28516 3.7373405,113.96451 0,125.88934 0,139.06055 v 233.8789 c 0,17.08697 6.0510264,31.85913 18.154297,44.31836 12.459246,12.10327 27.233346,18.15625 44.320312,18.15625 17.442947,0 32.215089,-6.05298 44.318361,-18.15625 12.45925,-12.45923 18.68945,-27.23139 18.68945,-44.31836 V 330.4082 c 0.13441,-9.21122 9.6225,-6.79429 14.41797,0 8.98111,15.55395 28.02226,28.91242 50.19141,28.83594 22.16915,-0.0764 40.58194,-11.03699 50.19336,-28.83594 3.63981,-4.29263 13.89902,-11.60675 14.95117,0 v 42.53125 c 0,17.08697 6.05102,31.85913 18.15429,44.31836 12.45923,12.10327 27.23335,18.15625 44.32032,18.15625 17.44294,0 32.21509,-6.05298 44.31836,-18.15625 12.45923,-12.45923 18.68945,-27.23139 18.68945,-44.31836 v -233.8789 c 0,-13.17121 -3.9146,-25.09604 -11.74609,-35.77539 -7.47557,-11.035362 -17.26588,-18.689208 -29.36914,-22.960941 -7.11956,-2.491854 -14.23982,-3.738281 -21.35938,-3.738281 -19.22286,0 -35.41865,7.476649 -48.58984,22.427734 l -63.40235,74.199218 c -1.42391,1.06791 -6.14093,9.23242 -16.16015,9.23242 -10.01923,0 -14.20109,-8.16451 -15.625,-9.23242 L 110.53125,99.013672 C 97.716024,84.062587 81.697447,76.585938 62.474609,76.585938 Z m 395.060551,0 c -14.9511,-10e-7 -27.76596,5.340179 -38.44532,16.019531 -10.32338,10.323381 -15.48437,22.961011 -15.48437,37.912111 0,14.9511 5.16099,27.76596 15.48437,38.44531 10.67936,10.32338 23.49422,15.48633 38.44532,15.48633 14.95109,0 27.76596,-5.16295 38.44531,-15.48633 C 506.65982,158.28354 512,145.46868 512,130.51758 512,115.56648 506.65982,102.92885 495.98047,92.605469 485.30112,81.926117 472.48625,76.585938 457.53516,76.585938 Z m 0.5332,118.541012 c -14.9511,0 -27.76596,5.34018 -38.44531,16.01953 -10.67936,10.67936 -16.01758,23.49422 -16.01758,38.44532 v 131.89062 c 0,14.9511 5.33822,27.76596 16.01758,38.44531 10.67935,10.32339 23.49421,15.48633 38.44531,15.48633 14.9511,0 27.58873,-5.16294 37.91211,-15.48633 C 506.65982,409.24838 512,396.43352 512,381.48242 V 249.5918 c 0,-14.9511 -5.34018,-27.76596 -16.01953,-38.44532 -10.32338,-10.67935 -22.96101,-16.01953 -37.91211,-16.01953 z"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'OTADESIGN Rounded';-inkscape-font-specification:'OTADESIGN Rounded';fill:#000000;fill-opacity:1;stroke-width:1.09609616px" />
</g> </g>
</g> </g>
</g> </g>

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1,29 +0,0 @@
const mongo = require('mongodb');
const bcrypt = require('bcryptjs');
const User = require('../built/models/user').default;
const args = process.argv.slice(2);
const user = args[0];
const q = user.startsWith('@') ? {
username: user.split('@')[1],
host: user.split('@')[2] || null
} : { _id: new mongo.ObjectID(user) };
console.log(`Resetting password for ${user}...`);
const passwd = 'yo';
// Generate hash of password
const hash = bcrypt.hashSync(passwd);
User.update(q, {
$set: {
password: hash
}
}).then(() => {
console.log(`Password of ${user} is now '${passwd}'`);
}, e => {
console.error(e);
});

View File

@ -1,23 +0,0 @@
const mongo = require('mongodb');
const User = require('../built/models/user').default;
const args = process.argv.slice(2);
const user = args[0];
const q = user.startsWith('@') ? {
username: user.split('@')[1],
host: user.split('@')[2] || null
} : { _id: new mongo.ObjectID(user) };
console.log(`Suspending ${user}...`);
User.update(q, {
$set: {
isSuspended: true
}
}).then(() => {
console.log(`Suspended ${user}`);
}, e => {
console.error(e);
});

22
docs/backup.fr.md Normal file
View File

@ -0,0 +1,22 @@
Comment faire une sauvegarde de votre Misskey ?
==========================
Assurez-vous d'avoir installé **mongodb-tools**.
---
Dans votre terminal :
``` shell
$ mongodump --archive=db-backup -u <VotreNomdUtilisateur> -p <VotreMotDePasse>
```
Pour plus de détails, merci de consulter [la documentation de mongodump](https://docs.mongodb.com/manual/reference/program/mongodump/).
Restauration
-------
``` shell
$ mongorestore --archive=db-backup
```
Pour plus de détails, merci de consulter [la documentation de mongorestore](https://docs.mongodb.com/manual/reference/program/mongorestore/).

View File

@ -10,7 +10,7 @@ In your shell:
$ mongodump --archive=db-backup -u <YourUserName> -p <YourPassword> $ mongodump --archive=db-backup -u <YourUserName> -p <YourPassword>
``` ```
For details, plese see [mongodump docs](https://docs.mongodb.com/manual/reference/program/mongodump/). For details, please see [mongodump docs](https://docs.mongodb.com/manual/reference/program/mongodump/).
Restore Restore
------- -------

View File

@ -13,7 +13,7 @@ This guide describes how to install and setup Misskey with Docker.
2. `cd misskey` Move to misskey directory. 2. `cd misskey` Move to misskey directory.
3. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest) tag. 3. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest) tag.
*2.* Make configuration files *2.* Configure Misskey
---------------------------------------------------------------- ----------------------------------------------------------------
1. `cp .config/example.yml .config/default.yml` Copy the `.config/example.yml` and rename it to `default.yml`. 1. `cp .config/example.yml .config/default.yml` Copy the `.config/example.yml` and rename it to `default.yml`.
2. `cp .config/mongo_initdb_example.js .config/mongo_initdb.js` Copy the `.config/mongo_initdb_example.js` and rename it to `mongo_initdb.js`. 2. `cp .config/mongo_initdb_example.js .config/mongo_initdb.js` Copy the `.config/mongo_initdb_example.js` and rename it to `mongo_initdb.js`.
@ -31,12 +31,12 @@ Build misskey with the following:
*5.* That is it. *5.* That is it.
---------------------------------------------------------------- ----------------------------------------------------------------
Well done! Now, you have an environment that run to Misskey. Well done! Now you have an environment to run Misskey.
### Launch normally ### Launch normally
Just `docker-compose up -d`. GLHF! Just `docker-compose up -d`. GLHF!
### Way to Update to latest version of your Misskey ### How to update your Misskey server to the latest version
1. `git fetch` 1. `git fetch`
2. `git stash` 2. `git stash`
3. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` 3. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
@ -45,9 +45,9 @@ Just `docker-compose up -d`. GLHF!
6. Check [ChangeLog](../CHANGELOG.md) for migration information 6. Check [ChangeLog](../CHANGELOG.md) for migration information
7. `docker-compose stop && docker-compose up -d` 7. `docker-compose stop && docker-compose up -d`
### Way to execute cli command: ### How to execute [cli commands](manage.en.md):
`docker-compose run --rm web node cli/mark-admin @example` `docker-compose run --rm web node cli/mark-admin @example`
---------------------------------------------------------------- ----------------------------------------------------------------
If you have any questions or troubles, feel free to contact us! If you have any questions or trouble, feel free to contact us!

View File

@ -0,0 +1,70 @@
# Sample nginx configuration for Misskey
#
# 1. Replace example.tld to your domain
# 2. Copy to /etc/nginx/sites-available/ and then symlink from /etc/nginx/sites-ebabled/
# or copy to /etc/nginx/conf.d/
# For WebSocket
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
proxy_cache_path /tmp/nginx_cache levels=1:2 keys_zone=cache1:16m max_size=1g inactive=720m use_temp_path=off;
server {
listen 80;
listen [::]:80;
server_name example.tld;
# For SSL domain validation
root /var/www/html;
location /.well-known/acme-challenge/ { allow all; }
location /.well-known/pki-validation/ { allow all; }
location / { return 301 https://$server_name$request_uri; }
}
server {
listen 443 http2;
listen [::]:443 http2;
server_name example.tld;
ssl on;
ssl_session_cache shared:ssl_session_cache:10m;
# To use Let's Encrypt certificate
ssl_certificate /etc/letsencrypt/live/example.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.tld/privkey.pem;
# To use Debian/Ubuntu's self-signed certificate (For testing or before issuing a certificate)
#ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
#ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
# SSL protocol settings
ssl_protocols TLSv1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES128-SHA;
ssl_prefer_server_ciphers on;
# Change to your upload limit
client_max_body_size 80m;
# Proxy to Node
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_http_version 1.1;
proxy_redirect off;
# For WebSocket
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
# Cache settings
proxy_cache cache1;
proxy_cache_lock on;
proxy_cache_use_stale updating;
add_header X-Cache $upstream_cache_status;
}
}

View File

@ -8,28 +8,11 @@ coming soon
node cli/mark-admin (User-ID or Username) node cli/mark-admin (User-ID or Username)
``` ```
## Mark as 'verified' user
``` shell
node cli/mark-verified (User-ID or Username)
```
## Suspend users
``` shell
node cli/suspend (User-ID or Username)
```
e.g. e.g.
``` shell ``` shell
# Use id # By id
node cli/suspend 57d01a501fdf2d07be417afe node cli/mark-admin 57d01a501fdf2d07be417afe
# Use username # By username
node cli/suspend @syuilo node cli/suspend @syuilo
# Use username (remote)
node cli/suspend @syuilo@misskey.xyz
```
## Reset password
``` shell
node cli/reset-password (User-ID or Username)
``` ```

View File

@ -8,28 +8,11 @@ coming soon
node cli/mark-admin (ユーザーID または ユーザー名) node cli/mark-admin (ユーザーID または ユーザー名)
``` ```
## 'verified'ユーザーを設定する
``` shell
node cli/mark-verified (ユーザーID または ユーザー名)
```
## ユーザーを凍結する
``` shell
node cli/suspend (ユーザーID または ユーザー名)
```
例: 例:
``` shell ``` shell
# ユーザーID # ユーザーID
node cli/suspend 57d01a501fdf2d07be417afe node cli/mark-admin 57d01a501fdf2d07be417afe
# ユーザー名 # ユーザー名
node cli/suspend @syuilo node cli/mark-admin @syuilo
# ユーザー名 (リモート)
node cli/suspend @syuilo@misskey.xyz
```
## ユーザーのパスワードをリセットする
``` shell
node cli/reset-password (ユーザーID または ユーザー名)
``` ```

View File

@ -10,7 +10,7 @@ This guide describes how to install and setup Misskey.
*1.* Create Misskey user *1.* Create Misskey user
---------------------------------------------------------------- ----------------------------------------------------------------
Running misskey on root is not a good idea so we create a user for that. Running misskey as root is not a good idea so we create a user for that.
In debian for exemple : In debian for exemple :
``` ```
@ -32,7 +32,7 @@ Please install and setup these softwares:
*3.* Setup MongoDB *3.* Setup MongoDB
---------------------------------------------------------------- ----------------------------------------------------------------
In root : As root:
1. `mongo` Go to the mongo shell 1. `mongo` Go to the mongo shell
2. `use misskey` Use the misskey database 2. `use misskey` Use the misskey database
3. `db.users.save( {dummy:"dummy"} )` Write dummy data to initialize the db. 3. `db.users.save( {dummy:"dummy"} )` Write dummy data to initialize the db.
@ -47,17 +47,7 @@ In root :
4. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest) 4. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` Checkout to the [latest release](https://github.com/syuilo/misskey/releases/latest)
5. `npm install` Install misskey dependencies. 5. `npm install` Install misskey dependencies.
*(optional)* Generating VAPID keys *5.* Configure Misskey
----------------------------------------------------------------
If you want to enable ServiceWorker, you need to generate VAPID keys:
Unless you have set your global node_modules location elsewhere, you need to run this in root.
``` shell
npm install web-push -g
web-push generate-vapid-keys
```
*5.* Make configuration file
---------------------------------------------------------------- ----------------------------------------------------------------
1. `cp .config/example.yml .config/default.yml` Copy the `.config/example.yml` and rename it to `default.yml`. 1. `cp .config/example.yml .config/default.yml` Copy the `.config/example.yml` and rename it to `default.yml`.
2. Edit `default.yml` 2. Edit `default.yml`
@ -114,7 +104,7 @@ WantedBy=multi-user.target
You can check if the service is running with `systemctl status misskey`. You can check if the service is running with `systemctl status misskey`.
### Way to Update to latest version of your Misskey ### How to update your Misskey server to the latest version
1. `git fetch` 1. `git fetch`
2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` 2. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)`
3. `npm install` 3. `npm install`

View File

@ -47,16 +47,6 @@ En mode root :
4. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` Télécharge la [version la plus récente](https://github.com/syuilo/misskey/releases/latest) 4. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` Télécharge la [version la plus récente](https://github.com/syuilo/misskey/releases/latest)
5. `npm install` Installez les dépendances de misskey. 5. `npm install` Installez les dépendances de misskey.
*(optionnel)* Génération des clés VAPID
----------------------------------------------------------------
Si vous désirez activer ServiceWorker, vous devez générer les clés VAPID :
Unless you have set your global node_modules location elsewhere, vous devez lancer ceci en mode root.
``` shell
npm install web-push -g
web-push generate-vapid-keys
```
*5.* Création du fichier de configuration *5.* Création du fichier de configuration
---------------------------------------------------------------- ----------------------------------------------------------------
1. `cp .config/example.yml .config/default.yml` Copiez le fichier `.config/example.yml` et renommez-le `default.yml`. 1. `cp .config/example.yml .config/default.yml` Copiez le fichier `.config/example.yml` et renommez-le `default.yml`.

View File

@ -53,15 +53,6 @@ adduser --disabled-password --disabled-login misskey
4. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` [最新のリリース](https://github.com/syuilo/misskey/releases/latest)を確認 4. `git checkout $(git tag -l | grep -v 'rc[0-9]*$' | sort -V | tail -n 1)` [最新のリリース](https://github.com/syuilo/misskey/releases/latest)を確認
5. `npm install` Misskeyの依存パッケージをインストール 5. `npm install` Misskeyの依存パッケージをインストール
*(オプション)* VAPIDキーペアの生成
----------------------------------------------------------------
ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります:
``` shell
npm install web-push -g
web-push generate-vapid-keys
```
*5.* 設定ファイルを作成する *5.* 設定ファイルを作成する
---------------------------------------------------------------- ----------------------------------------------------------------
1. `cp .config/example.yml .config/default.yml` `.config/example.yml`をコピーし名前を`default.yml`にする。 1. `cp .config/example.yml .config/default.yml` `.config/example.yml`をコピーし名前を`default.yml`にする。

View File

@ -11,14 +11,12 @@ import tslint from 'gulp-tslint';
const cssnano = require('gulp-cssnano'); const cssnano = require('gulp-cssnano');
const stylus = require('gulp-stylus'); const stylus = require('gulp-stylus');
import * as uglifyComposer from 'gulp-uglify/composer'; import * as uglifyComposer from 'gulp-uglify/composer';
import pug = require('gulp-pug');
import * as rimraf from 'rimraf'; import * as rimraf from 'rimraf';
import chalk from 'chalk'; import chalk from 'chalk';
const imagemin = require('gulp-imagemin'); const imagemin = require('gulp-imagemin');
import * as rename from 'gulp-rename'; import * as rename from 'gulp-rename';
import * as mocha from 'gulp-mocha'; import * as mocha from 'gulp-mocha';
import * as replace from 'gulp-replace'; import * as replace from 'gulp-replace';
import * as htmlmin from 'gulp-htmlmin';
const uglifyes = require('uglify-es'); const uglifyes = require('uglify-es');
const locales = require('./locales'); const locales = require('./locales');
@ -34,8 +32,6 @@ if (isDebug) {
console.warn(chalk.yellow.bold(' built script will not be compressed.')); console.warn(chalk.yellow.bold(' built script will not be compressed.'));
} }
const constants = require('./src/const.json');
gulp.task('build', [ gulp.task('build', [
'build:ts', 'build:ts',
'build:copy', 'build:copy',
@ -109,7 +105,7 @@ gulp.task('default', ['build']);
gulp.task('build:client', [ gulp.task('build:client', [
'build:ts', 'build:ts',
'build:client:script', 'build:client:script',
'build:client:pug', 'build:client:styles',
'copy:client' 'copy:client'
]); ]);
@ -148,52 +144,6 @@ gulp.task('copy:client', [
.pipe(gulp.dest('./built/client/assets/')) .pipe(gulp.dest('./built/client/assets/'))
); );
gulp.task('build:client:pug', [
'copy:client',
'build:client:script',
'build:client:styles'
], () =>
gulp.src('./src/client/app/base.pug')
.pipe(pug({
locals: {
themeColor: constants.themeColor
}
}))
.pipe(htmlmin({
// 真理値属性の簡略化 e.g.
// <input value="foo" readonly="readonly"> to
// <input value="foo" readonly>
collapseBooleanAttributes: true,
// テキストの一部かもしれない空白も削除する e.g.
// <div> <p> foo </p> </div> to
// <div><p>foo</p></div>
collapseWhitespace: true,
// タグ間の改行を保持する
preserveLineBreaks: true,
// (できる場合は)属性のクォーテーション削除する e.g.
// <p class="foo-bar" id="moo" title="blah blah">foo</p> to
// <p class=foo-bar id=moo title="blah blah">foo</p>
removeAttributeQuotes: true,
// 省略可能なタグを省略する e.g.
// <html><p>yo</p></html> ro
// <p>yo</p>
removeOptionalTags: true,
// 属性の値がデフォルトと同じなら省略する e.g.
// <input type="text"> to
// <input>
removeRedundantAttributes: true,
// CSSも圧縮する
minifyCSS: true
}))
.pipe(gulp.dest('./built/client/app/'))
);
gulp.task('locales', () => gulp.task('locales', () =>
gulp.src('./locales/*.yml') gulp.src('./locales/*.yml')
.pipe(yaml({ schema: 'DEFAULT_SAFE_SCHEMA' })) .pipe(yaml({ schema: 'DEFAULT_SAFE_SCHEMA' }))

View File

@ -26,6 +26,7 @@ common:
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
b: "何かありましたか?" b: "何かありましたか?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。" my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
i-like-sushi: "私は(プリンよりむしろ)寿司が好き" i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "公式アカウント" verified-user: "公式アカウント"
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする" disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -116,13 +120,19 @@ common:
reduce-motion: "UIの動きを減らす" reduce-motion: "UIの動きを減らす"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
do-not-use-in-production: 'これは開発ビルドです。本番環境で使用しないでください。' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'やり直す' retry: "やり直す"
reversi: reversi:
drawn: "引き分け" drawn: "引き分け"
my-turn: "あなたのターンです" my-turn: "あなたのターンです"
@ -153,12 +163,12 @@ common:
polls: "アンケート" polls: "アンケート"
post-form: "投稿フォーム" post-form: "投稿フォーム"
server: "サーバー情報" server: "サーバー情報"
donation: "寄付のお願い"
nav: "ナビゲーション" nav: "ナビゲーション"
tips: "ヒント" tips: "ヒント"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "アプリの作成に失敗しました。再度お試しください。"
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
permission-ask: "このアプリは次の権限を要求しています:" permission-ask: "このアプリは次の権限を要求しています:"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "閲覧注意" sensitive: "閲覧注意"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "ユーザーを探す" search-user: "ユーザーを探す"
you: "あなた" you: "あなた"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "開発者" develop: "開発者"
feedback: "フィードバック" feedback: "フィードバック"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "詳細" detail: "詳細"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "お気に入り" favorite: "お気に入り"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "または" or: "または"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "接続中" connecting: "接続中"
reconnecting: "再接続中" reconnecting: "再接続中"
connected: "接続完了" connected: "接続完了"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。" title: "通知"
connected-to: "次のTwitterアカウントに接続されています" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "詳細..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "再接続する" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Twitterと接続する" auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する" disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "待機中" waiting: "待機中"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "確認中" fetching: "確認中"
no-broadcasts: "お知らせはありません" no-broadcasts: "お知らせはありません"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "今日:" today: "今日:"
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "寄付のお願い"
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "フォトストリーム" title: "フォトストリーム"
no-photos: "写真はありません" no-photos: "写真はありません"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
reposted-by: "{}がRenote"
location: "位置情報" location: "位置情報"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "アンケートを作成" create-poll: "アンケートを作成"
text-remain: "残り{}文字" text-remain: "残り{}文字"
recent-tags: "最近" recent-tags: "最近"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "公開範囲" visibility: "公開範囲"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "引用する..." quote: "引用する..."
cancel: "キャンセル" cancel: "キャンセル"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "しています..." reposting: "しています..."
success: "Renoteしました" success: "Renoteしました"
failure: "Renoteに失敗しました" failure: "Renoteに失敗しました"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "プロフィール" profile: "プロフィール"
notification: "通知" notification: "通知"
apps: "アプリ" apps: "アプリ"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "セキュリティ" security: "セキュリティ"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "ウィンドウの自動ポップアウト" auto-popout: "ウィンドウの自動ポップアウト"
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。" auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
advanced: "詳細設定" advanced: "詳細設定"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "円形のアイコンを使用" circle-icons: "円形のアイコンを使用"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "リプライ先を表示する"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "マップの自動展開" show-maps: "マップの自動展開"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。" enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
volume: "ボリューム" volume: "ボリューム"
test: "テスト" test: "テスト"
language: "言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。" cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:" authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
howtoinstall: "インストール方法はこちら" howtoinstall: "インストール方法はこちら"
token: "トークン"
scan: "次に、表示されているQRコードをスキャンします:" scan: "次に、表示されているQRコードをスキャンします:"
done: "お使いのデバイスに表示されているトークンを入力して完了します:" done: "お使いのデバイスに表示されているトークンを入力して完了します:"
submit: "完了" submit: "完了"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "メッセージ" title: "メッセージ"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっと見る" refresh: "もっと見る"
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返信" reply: "返信"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "言語"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "動作" behavior: "動作"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Twitterアカウントに接続する"
twitter-reconnect: "再接続する"
twitter-disconnect: "切断する"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey Update" update: "Misskey Update"
version: "バージョン:" version: "バージョン:"
latest-version: "最新のバージョン:" latest-version: "最新のバージョン:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "サインアウト" signout: "サインアウト"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "フォローされています" follows-you: "フォローされています"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "概要" overview: "概要"
timeline: "タイムライン" timeline: "タイムライン"
media: "メディア" media: "メディア"
is-suspended: "このユーザーは凍結されています。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "最近の投稿" recent-notes: "最近の投稿"
images: "画像" images: "画像"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

View File

@ -26,6 +26,7 @@ common:
close: "Schließen" close: "Schließen"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "Verstanden!" got-it: "Verstanden!"
customization-tips: customization-tips:
title: "Anpassung-Tipps" title: "Anpassung-Tipps"
@ -43,13 +44,13 @@ common:
unknown: "Unbekannt" unknown: "Unbekannt"
future: "Zukunft" future: "Zukunft"
just_now: "Gerade eben" just_now: "Gerade eben"
seconds_ago: "vor {0} Sekunde{0:n}" seconds_ago: "vor {} Sekunde(n)"
minutes_ago: "vor {0} Minuten" minutes_ago: "vor {} Minute(n)"
hours_ago: "vor {0} Stunden" hours_ago: "vor {} Stunde(n)"
days_ago: "vor {0} Tag{0:en}" days_ago: "vor {} Tag(en)"
weeks_ago: "vor {0} Woche{0:n}" weeks_ago: "vor {} Woche(n)"
months_ago: "vor {0} Monat{0:en}" months_ago: "vor {} Monat(en)"
years_ago: "vor {} Jahr{0:en}" years_ago: "vor {} Jahr(en)"
month-and-day: "{day}/{month}" month-and-day: "{day}/{month}"
trash: "Papierkorb" trash: "Papierkorb"
drive: "ドライブ" drive: "ドライブ"
@ -89,7 +90,9 @@ common:
followers-desc: "Nur für diejenigen sichtbar, die dir folgen" followers-desc: "Nur für diejenigen sichtbar, die dir folgen"
specified: "Direkt" specified: "Direkt"
specified-desc: "Nur für bestimmte Benutzer posten" specified-desc: "Nur für bestimmte Benutzer posten"
private: "Privat" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "Was machst du gerade?" a: "Was machst du gerade?"
b: "Was ist so passiert?" b: "Was ist so passiert?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "Dein Token wurde generiert. Du wirst jetzt abgemeldet." my-token-regenerated: "Dein Token wurde generiert. Du wirst jetzt abgemeldet."
i-like-sushi: "Ich bevorzuge Sushi anstelle von Pudding" i-like-sushi: "Ich bevorzuge Sushi anstelle von Pudding"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "Verifizierter Benutzer" verified-user: "Verifizierter Benutzer"
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする" disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -116,13 +120,19 @@ common:
reduce-motion: "Animationen der Benutzeroberfläche reduzieren" reduce-motion: "Animationen der Benutzeroberfläche reduzieren"
this-setting-is-this-device-only: "Nur auf diesem Gerät" this-setting-is-this-device-only: "Nur auf diesem Gerät"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
do-not-use-in-production: 'Dies ist eine Entwicklungsversion. Nicht in einer Produktionsumgebung verwenden.' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "Dies ist eine Entwicklungsversion. Nicht in einer Produktionsumgebung verwenden."
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'Erneut versuchen' retry: "Erneut versuchen"
reversi: reversi:
drawn: "Unentschieden" drawn: "Unentschieden"
my-turn: "Du bist am Zug" my-turn: "Du bist am Zug"
@ -153,12 +163,12 @@ common:
polls: "Umfrage" polls: "Umfrage"
post-form: "Beitragsform" post-form: "Beitragsform"
server: "Server-Info" server: "Server-Info"
donation: "Spenden"
nav: "Navigation" nav: "Navigation"
tips: "Tipps" tips: "Tipps"
hashtags: "Hashtags" hashtags: "Hashtags"
dev: "Fehler beim Erstellen der Applikation. Bitte versuche es erneut." dev: "Fehler beim Erstellen der Applikation. Bitte versuche es erneut."
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
permission-ask: "このアプリは次の権限を要求しています:" permission-ask: "このアプリは次の権限を要求しています:"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "Dieser Inhalt ist NSFW" sensitive: "Dieser Inhalt ist NSFW"
click-to-show: "Klicke zum den Inhalt anzusehen" click-to-show: "Klicke zum den Inhalt anzusehen"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "Thema" light-theme: "Thema"
dark-theme: "Thema während des Nachtmodus" dark-theme: "Thema während des Nachtmodus"
light-themes: "Helles Thema" light-themes: "Helles Thema"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "Basisthema" base-theme: "Basisthema"
base-theme-light: "Hell" base-theme-light: "Hell"
base-theme-dark: "Dunkel" base-theme-dark: "Dunkel"
find-more-theme: "その他のテーマを入手"
theme-name: "Name des Themas" theme-name: "Name des Themas"
preview-created-theme: "Vorschau" preview-created-theme: "Vorschau"
invalid-theme: "Thema ist ungültig" invalid-theme: "Thema ist ungültig"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "Einen Nutzer suchen" search-user: "Einen Nutzer suchen"
you: "Du" you: "Du"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "Entwickler" develop: "Entwickler"
feedback: "Feedback" feedback: "Feedback"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "詳細" detail: "詳細"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "Diese Notiz favorisieren" favorite: "Diese Notiz favorisieren"
unfavorite: "Aus Favoriten entfernen" unfavorite: "Aus Favoriten entfernen"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "Oder" or: "Oder"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "Verbindung wird hergestellt" connecting: "Verbindung wird hergestellt"
reconnecting: "Erneut verbinden" reconnecting: "Erneut verbinden"
connected: "Verbindung hergestellt" connected: "Verbindung hergestellt"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "Wenn du deinen Twitter-Account mit deinem Misskey-Account verbindest, siehst du deine Twitter Account-Informationen auf deinem Profil und du kannst dich mit Twitter einloggen." title: "通知"
connected-to: "Du bist mit diesem Twitter-Account verbunden" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "Mehr..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "Erneut verbinden" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Mit Twitter verbinden" auto-watch: "投稿の自動ウォッチ"
disconnect: "Trennen" auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "Warten" waiting: "Warten"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "Nur für diejenigen sichtbar, die dir folgen" followers-desc: "Nur für diejenigen sichtbar, die dir folgen"
specified: "Direkt" specified: "Direkt"
specified-desc: "Poste nur für bestimmte Benutzer" specified-desc: "Poste nur für bestimmte Benutzer"
private: "Privat" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "Laden" fetching: "Laden"
no-broadcasts: "Keine Broadcasts" no-broadcasts: "Keine Broadcasts"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "今日:" today: "今日:"
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "Spende"
text: "Um Misskey am Laufen zu halten geben wir Geld für Domain, Server usw. aus. Wir bekommen dafür kein Geld und würden uns freuen, wenn du spenden würdest. Wenn du interessiert bist, dann kontaktiere {}. Danke für deine Unterstützung!"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "Fotostream" title: "Fotostream"
no-photos: "Keine Fotos" no-photos: "Keine Fotos"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "Dieser Post ist privat" private: "Dieser Post ist privat"
deleted: "Dieser Beitrag wurde entfernt" deleted: "Dieser Beitrag wurde entfernt"
reposted-by: "Repostet von {}"
location: "Ort" location: "Ort"
renote: "Anmerkung" renote: "Anmerkung"
add-reaction: "Reaktion hinzufügen" add-reaction: "Reaktion hinzufügen"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "Eine Abstimmung erstellen" create-poll: "Eine Abstimmung erstellen"
text-remain: "{} Zeichen verbleibend" text-remain: "{} Zeichen verbleibend"
recent-tags: "最近" recent-tags: "最近"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "Sichtbarkeit" visibility: "Sichtbarkeit"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "Zitieren..." quote: "Zitieren..."
cancel: "Abbrechen" cancel: "Abbrechen"
renote: "Anmerkung" renote: "Anmerkung"
renote-home: "Renote (Home)"
reposting: "Weitersagen..." reposting: "Weitersagen..."
success: "Weitergesagt!" success: "Weitergesagt!"
failure: "Weitersagen fehlgeschlagen" failure: "Weitersagen fehlgeschlagen"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "Profil" profile: "Profil"
notification: "Mitteilungen" notification: "Mitteilungen"
apps: "In App öffnen" apps: "In App öffnen"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "Sicherheit" security: "Sicherheit"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "Automatische Pop-out Fenster" auto-popout: "Automatische Pop-out Fenster"
auto-popout-desc: "Pop-out ein offenes Fenster wenn möglich. Diese Einstellung wird im Browser gespeichert." auto-popout-desc: "Pop-out ein offenes Fenster wenn möglich. Diese Einstellung wird im Browser gespeichert."
advanced: "Erweiterte Einstellungen" advanced: "Erweiterte Einstellungen"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "Kreisförmige Icons" circle-icons: "Kreisförmige Icons"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "Zeige Antworten" show-reply-target: "Zeige Antworten"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "Karte anzeigen" show-maps: "Karte anzeigen"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "Ton" sound: "Ton"
enable-sounds: "Ton aktivieren" enable-sounds: "Ton aktivieren"
enable-sounds-desc: "Spiel einen Ton ab beim Erhalten eines Beitrags bzw. einer Nachricht. Diese Einstellung wird im Browser gespeichert." enable-sounds-desc: "Spiel einen Ton ab beim Erhalten eines Beitrags bzw. einer Nachricht. Diese Einstellung wird im Browser gespeichert."
volume: "Lautstärke" volume: "Lautstärke"
test: "Test" test: "Test"
language: "Sprache"
pick-language: "Sprache auswählen"
recommended: "Empfohlen"
auto: "Automatisch"
specify-language: "Sprache auswählen"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "Der Cache deines Benutzerkontos (Info, Beiträge, Antworten, Direktnachrichten, Einstellungen), die lokal im Browser gespeichert sind werden gelöscht.\nDu musst die Seite aktualisieren nachdem du aufgeräumt hast." cache-warn: "Der Cache deines Benutzerkontos (Info, Beiträge, Antworten, Direktnachrichten, Einstellungen), die lokal im Browser gespeichert sind werden gelöscht.\nDu musst die Seite aktualisieren nachdem du aufgeräumt hast."
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "Bitte Passwort eingeben" enter-password: "Bitte Passwort eingeben"
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:" authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
howtoinstall: "インストール方法はこちら" howtoinstall: "インストール方法はこちら"
token: "トークン"
scan: "次に、表示されているQRコードをスキャンします:" scan: "次に、表示されているQRコードをスキャンします:"
done: "お使いのデバイスに表示されているトークンを入力して完了します:" done: "お使いのデバイスに表示されているトークンを入力して完了します:"
submit: "完了" submit: "完了"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "Taskmanager" title: "Taskmanager"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "メッセージ" title: "メッセージ"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっと見る" refresh: "もっと見る"
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返信" reply: "返信"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "言語"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "推奨"
auto: "自動"
specify-language: "Sprache auswählen"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "動作" behavior: "動作"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Twitterアカウントに接続する"
twitter-reconnect: "再接続する"
twitter-disconnect: "切断する"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey Update" update: "Misskey Update"
version: "バージョン:" version: "バージョン:"
latest-version: "Neuste Version:" latest-version: "Neuste Version:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "サインアウト" signout: "サインアウト"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "フォローされています" follows-you: "フォローされています"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "概要" overview: "概要"
timeline: "タイムライン" timeline: "タイムライン"
media: "メディア" media: "メディア"
is-suspended: "このユーザーは凍結されています。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "最近の投稿" recent-notes: "最近の投稿"
images: "画像" images: "画像"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

View File

@ -8,7 +8,7 @@ common:
about: "Thank you for finding Misskey. Misskey is a <b>decentralized microblogging platform</b> born on Earth. Since it exists within the Fediverse (a universe where various social media platforms are organized), it is mutually linked with other social media platforms. Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet?" about: "Thank you for finding Misskey. Misskey is a <b>decentralized microblogging platform</b> born on Earth. Since it exists within the Fediverse (a universe where various social media platforms are organized), it is mutually linked with other social media platforms. Why don't you take a short break from the hustle and bustle of the city, and dive into a new Internet?"
intro: intro:
title: "What is Misskey?" title: "What is Misskey?"
about: "Misskey is a open-source <b>decentralized microblogging service</b>. Sophisticated fully customizable Ui, varieties of reaction for posts, free file storage providing integrated management system and other advancing functions are available. Also, network system called “Fediverse” enables us to communicate with users on other SNSs. Like, if you post something, then your posts will sent not only to Misskey but also mastodon. Just imagine that the planet is sending a microwave to other planet to communication." about: "Misskey is an open-source <b>decentralized microblogging service</b>. Sophisticated fully customizable UI, varieties of reactions for posts, free file storage providing an integrated management system and other advanced functions are available. In addition, Misskey connects to a network system called the “Fediverse” enables us to communicate with users on other SNSs. For example, when you post something it will be sent not only to Misskey but also Mastodon and Pleroma. Just imagine that the planet is sending a radio transmission to other planet to communicate."
features: "Features" features: "Features"
rich-contents: "Post" rich-contents: "Post"
rich-contents-desc: "Just post your idea, hot topics and anything you want to share. You may want to decorate your words, attach your favorite pictures, send files including movies and create a poll - those are the things you can do on Misskey!" rich-contents-desc: "Just post your idea, hot topics and anything you want to share. You may want to decorate your words, attach your favorite pictures, send files including movies and create a poll - those are the things you can do on Misskey!"
@ -16,9 +16,9 @@ common:
reaction-desc: "Easiest way to tell your emotions. Misskey allows you to add various type of reactions to others post. The emotional experience on Misskey will never be on other SNSs which only able to push “likes”." reaction-desc: "Easiest way to tell your emotions. Misskey allows you to add various type of reactions to others post. The emotional experience on Misskey will never be on other SNSs which only able to push “likes”."
ui: "Interface" ui: "Interface"
ui-desc: "No UI fits for everyone. Therefore, Misskey has a highly customizable UI for your taste. Make your original home by editing, adjusting layouts of timeline and placing selectable widgets you can easily customize." ui-desc: "No UI fits for everyone. Therefore, Misskey has a highly customizable UI for your taste. Make your original home by editing, adjusting layouts of timeline and placing selectable widgets you can easily customize."
drive: "Misskey Drive" drive: "Drive"
drive-desc: "Wanna post a picture you have already uploaded? Wish to organize, name and create a folder for your uploaded files? Misskey Drive is the best solution for you. Very easy to share your files online." drive-desc: "Wanna post a picture you have already uploaded? Wish to organize, name and create a folder for your uploaded files? Misskey Drive is the best solution for you. Very easy to share your files online."
outro: "Check further Misskey-unique features on your eyes! Feeling like this is not for you, try other instances as Misskey is a decentralized SNS so that you can easily find your mates. Then, GLHF!" outro: "Check Misskey-unique features by seeing them with your own eyes! If you feel like this instance is not for you, try other instances, as Misskey is a decentralized SNS, so that you can easily find your mates. Then, GLHF!"
adblock: adblock:
detected: "Please disable ad blocker." detected: "Please disable ad blocker."
warning: "Some features may be unavailable or cause malfunctions if ad blocking features are enabled. <strong>Misskey is not running ads</strong>." warning: "Some features may be unavailable or cause malfunctions if ad blocking features are enabled. <strong>Misskey is not running ads</strong>."
@ -26,10 +26,11 @@ common:
close: "Close" close: "Close"
do-not-copy-paste: "Please do not enter or paste the code here. Account may be compromised." do-not-copy-paste: "Please do not enter or paste the code here. Account may be compromised."
load-more: "Load more" load-more: "Load more"
enter-password: "Please enter the Password"
got-it: "Got it!" got-it: "Got it!"
customization-tips: customization-tips:
title: "Customization tips" title: "Customization tips"
paragraph: "<p>Home customization allows you to add/delete, drag and drop and rearrange widgets.</p><p>You can change the display by <strong><strong>right</strong> clicking</strong> on some widgets.</p><p>To delete a widget, drag and drop the widget onto <strong>the area labeled \"Trash\"</strong> in the header.</p><p>To finish the customization, click \"Finish\" on the upper right.</p>" paragraph: "<p>Home customization allows you to add/delete, drag and drop and rearrange widgets.</p><p>You can change the display by <strong><strong>right</strong> clicking</strong> on some widgets.</p><p>To delete a widget, drag and drop the widget onto <strong>the area labeled \"Trash\"</strong> in the header.</p><p>To finish the customization, click \"Done\" on the upper right.</p>"
gotit: "Got it!" gotit: "Got it!"
notification: notification:
file-uploaded: "File uploaded!" file-uploaded: "File uploaded!"
@ -89,7 +90,9 @@ common:
followers-desc: "Post to followers only" followers-desc: "Post to followers only"
specified: "Direct" specified: "Direct"
specified-desc: "Post to specified users only" specified-desc: "Post to specified users only"
private: "Private" local-public: "Public (Only local)"
local-home: "Home (Only local)"
local-followers: "Followers (Only local)"
note-placeholders: note-placeholders:
a: "What are you doing?" a: "What are you doing?"
b: "What's happening?" b: "What's happening?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "Your token has been regenerated, so you will be signed out." my-token-regenerated: "Your token has been regenerated, so you will be signed out."
i-like-sushi: "I prefer sushi rather than pudding" i-like-sushi: "I prefer sushi rather than pudding"
show-reversi-board-labels: "Show row and column labels in Reversi" show-reversi-board-labels: "Show row and column labels in Reversi"
use-contrast-reversi-stones: "Make the stone color clear in reversi" use-avatar-reversi-stones: "Use avatar as a stone in reversi"
verified-user: "Verified account" verified-user: "Verified account"
disable-animated-mfm: "Disable animated texts in a post" disable-animated-mfm: "Disable animated texts in a post"
suggest-recent-hashtags: "Suggest recently used hashtags within the post composition area"
always-show-nsfw: "Always show NSFW contents" always-show-nsfw: "Always show NSFW contents"
always-mark-nsfw: "Always mark posts with media attachments as NSFW" always-mark-nsfw: "Always mark posts with media attachments as NSFW"
show-full-acct: "Do not omit the hostname from the username" show-full-acct: "Do not omit the hostname from the username"
@ -116,13 +120,19 @@ common:
reduce-motion: "Reduce motion in UI" reduce-motion: "Reduce motion in UI"
this-setting-is-this-device-only: "Only for this device" this-setting-is-this-device-only: "Only for this device"
use-os-default-emojis: "Use the OS default Emojis" use-os-default-emojis: "Use the OS default Emojis"
do-not-use-in-production: 'As this is for development, do not use this in production.' line-width: "Line thickness"
is-remote-user: "This user information is copied." line-width-thin: "Thin"
is-remote-post: "This post information is a copy." line-width-normal: "Regular"
view-on-remote: "View it on remote" line-width-thick: "Thick"
do-not-use-in-production: "This is a development build. Do not use in production."
user-suspended: "This user has been suspended."
is-remote-user: "This user's information is mirrored."
is-remote-post: "These post contents are mirrored."
view-on-remote: "For completion, view it remotely."
renoted-by: "Renoted by {user}"
error: error:
title: 'Something happened :(' title: "Something happened :("
retry: 'Retry' retry: "Retry"
reversi: reversi:
drawn: "Draw" drawn: "Draw"
my-turn: "Your turn" my-turn: "Your turn"
@ -153,12 +163,12 @@ common:
polls: "Polls" polls: "Polls"
post-form: "Post form" post-form: "Post form"
server: "Server info" server: "Server info"
donation: "Request for donations"
nav: "Navigation" nav: "Navigation"
tips: "Tips" tips: "Tips"
hashtags: "Hashtags" hashtags: "Hashtags"
dev: "Failed to create the application. Please try again." dev: "Failed to create the application. Please try again."
ai-chan-kawaii: "Ai-chan kawaii!" ai-chan-kawaii: "Ai-chan kawaii!"
you: "You"
auth/views/form.vue: auth/views/form.vue:
share-access: "Would you allow <i>{name}</i> to access your account?" share-access: "Would you allow <i>{name}</i> to access your account?"
permission-ask: "This application requires the following permissions:" permission-ask: "This application requires the following permissions:"
@ -204,7 +214,7 @@ common/views/components/games/reversi/reversi.index.vue:
invitations: "Youve got an invitation!" invitations: "Youve got an invitation!"
my-games: "My game" my-games: "My game"
all-games: "All games" all-games: "All games"
enter-username: "Enter a username" enter-username: "Please enter username"
game-state: game-state:
ended: "Finished" ended: "Finished"
playing: "In Progress" playing: "In Progress"
@ -215,7 +225,7 @@ common/views/components/games/reversi/reversi.room.vue:
black-or-white: "Black/White" black-or-white: "Black/White"
black-is: "Black is {}" black-is: "Black is {}"
rules: "Rules" rules: "Rules"
is-llotheo: "The lesser side wins" is-llotheo: "The lesser one wins(Llotheo)"
looped-map: "Looped map" looped-map: "Looped map"
can-put-everywhere: "Can put everywhere" can-put-everywhere: "Can put everywhere"
settings-of-the-bot: "Bot settings" settings-of-the-bot: "Bot settings"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "NSFW" sensitive: "NSFW"
click-to-show: "Click to show" click-to-show: "Click to show"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "Theme"
light-theme: "Theme" light-theme: "Theme"
dark-theme: "Theme during dark mode" dark-theme: "Theme during dark mode"
light-themes: "Light theme" light-themes: "Light theme"
@ -263,13 +274,14 @@ common/views/components/theme.vue:
install: "Install" install: "Install"
installed: "\"{}\" has been installed" installed: "\"{}\" has been installed"
create-a-theme: "Create a theme" create-a-theme: "Create a theme"
save-created-theme: "Save a theme" save-created-theme: "Save theme"
primary-color: "Primary color" primary-color: "Primary color"
secondary-color: "Secondary color" secondary-color: "Secondary color"
text-color: "Text color" text-color: "Text color"
base-theme: "Base theme" base-theme: "Base theme"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "Find more themes"
theme-name: "Theme name" theme-name: "Theme name"
preview-created-theme: "Preview" preview-created-theme: "Preview"
invalid-theme: "Not valid theme" invalid-theme: "Not valid theme"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "Hide" hide: "Hide"
show: "See more" show: "See more"
chars: "{count} chars"
files: "{count} files"
poll: "Poll"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "Find a user" search-user: "Find a user"
you: "You" you: "You"
@ -320,14 +335,16 @@ common/views/components/nav.vue:
develop: "Developers" develop: "Developers"
feedback: "Feedback" feedback: "Feedback"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "Mention"
detail: "Details" detail: "Details"
copy-content: "Copy the contents"
copy-link: "Copy link" copy-link: "Copy link"
favorite: "Favorite this note" favorite: "Favorite this note"
unfavorite: "Unfavorite" unfavorite: "Unfavorite"
pin: "Pin to your profile" pin: "Pin to your profile"
unpin: "Unpin" unpin: "Unpin"
delete: "Delete" delete: "Delete"
delete-confirm: "Delete this post?" delete-confirm: "Are you sure you want to delete this post?"
remote: "Show original note" remote: "Show original note"
common/views/components/poll.vue: common/views/components/poll.vue:
vote-to: "Vote for '{}'" vote-to: "Vote for '{}'"
@ -362,7 +379,8 @@ common/views/components/signin.vue:
signin: "Sign in" signin: "Sign in"
or: "Or" or: "Or"
signin-with-twitter: "Log in with Twitter" signin-with-twitter: "Log in with Twitter"
signin-with-github: "Log in with GitHub" signin-with-github: "Sign in with GitHub"
signin-with-discord: "Sign in with Discord"
login-failed: "Log in failed. Make sure you have entered your correct username and password." login-failed: "Log in failed. Make sure you have entered your correct username and password."
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "Invitation code" invitation-code: "Invitation code"
@ -394,19 +412,31 @@ common/views/components/stream-indicator.vue:
connecting: "Connecting" connecting: "Connecting"
reconnecting: "Reconnecting" reconnecting: "Reconnecting"
connected: "Connected" connected: "Connected"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "Once you connect your Twitter account to your Misskey account, you will be able to see information about your Twitter account on your profile, and you will be able to sign-in using Twitter." title: "Notifications"
connected-to: "You are connected to this Twitter account" mark-as-read-all-notifications: "Mark all notifications as read"
detail: "Details..." mark-as-read-all-unread-notes: "Mark all posts as read"
reconnect: "Reconnect" mark-as-read-all-talk-messages: "Mark all conversations as read"
connect: "Link your Twitter account" auto-watch: "Automatically watch out for posts"
auto-watch-desc: "Automatically receive notifications about posts you react to, or respond to."
common/views/components/integration-settings.vue:
title: "Service cooperation"
connect: "Connect"
disconnect: "Disconnect" disconnect: "Disconnect"
connected-to: "You are connected to next account"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "Once you connect your GitHub account to your Misskey account, you will be able to see information about your GitHub account on your profile, and you will be able to sign-in via GitHub." description: "Once you connect your GitHub account to your Misskey account, you will be able to see information about your GitHub account on your profile, and you will be able to sign-in via GitHub."
connected-to: "You are connected to this GitHub account" connected-to: "You are connected to this GitHub account"
detail: "More..." detail: "More..."
reconnect: "Reconnect" reconnect: "Reconnect"
connect: "Connect to GitHub" connect: "Link your GitHub account"
disconnect: "Disconnect"
common/views/components/discord-setting.vue:
description: "Once you connect your Discord account to your Misskey account, you will be able to see information from your Discord account on your profile, and you will be able to sign-in using Discord."
connected-to: "You are connected to this Discord account"
detail: "Details…"
reconnect: "Reconnect"
connect: "Link your Discord account"
disconnect: "Disconnect" disconnect: "Disconnect"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "Waiting" waiting: "Waiting"
@ -418,31 +448,54 @@ common/views/components/visibility-chooser.vue:
followers-desc: "Post to Followers only" followers-desc: "Post to Followers only"
specified: "Direct" specified: "Direct"
specified-desc: "Post to specified users only" specified-desc: "Post to specified users only"
private: "Private" local-public: "Local (Public)"
local-public-desc: "Do not publish to remote"
local-home: "Home (Only local)"
local-followers: "Followers (Only local)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{} users mentioned" count: "{} users mentioned"
empty: "No popular hashtag trends" empty: "No popular hashtag trends"
common/views/components/language-settings.vue:
title: "Display Language"
pick-language: "Select a language"
recommended: "Recommended"
auto: "Auto"
specify-language: "Specify language"
info: "You need to reload the page for the changes to take effect."
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "Profile" title: "Profile"
name: "Name" name: "Name"
account: "Account" account: "Account"
location: "Location" location: "Location"
description: "About me" description: "About me"
language: "Language"
birthday: "Birthday" birthday: "Birthday"
avatar: "Avatar" avatar: "Icon"
banner: "Banner" banner: "Banner"
is-cat: "This account is a Cat" is-cat: "This account is a Cat"
is-bot: "This account is a Bot" is-bot: "This account is a Bot"
is-locked: "Follower requests require approval" is-locked: "Follower requests require approval"
careful-bot: "Follower requests from bots require approval" careful-bot: "Follower requests from bots require approval"
advanced: "Advanced" auto-accept-followed: "Automatically approve follows from the people you follow"
advanced: "Other"
privacy: "Privacy" privacy: "Privacy"
save: "Update profile" save: "Save"
saved: "Profile updated successfully" saved: "Profile updated successfully"
uploading: "Uploading" uploading: "Uploading"
upload-failed: "Failed to upload" upload-failed: "Failed to upload"
email: "Email settings"
email-address: "Email Address"
email-verified: "Your email has been verified."
email-not-verified: "Email address is not confirmed. Please check your inbox."
common/views/components/user-list-editor.vue:
users: "User"
rename: "Rename list"
delete: "Delete list"
remove-user: "Remove from this list"
delete-are-you-sure: "Delete list \"$1\"?"
deleted: "Deleted successfully"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "Fetching" fetching: "Checking"
no-broadcasts: "No announcements" no-broadcasts: "No announcements"
have-a-nice-day: "Have a nice day!" have-a-nice-day: "Have a nice day!"
next: "Next" next: "Next"
@ -451,11 +504,8 @@ common/views/widgets/calendar.vue:
month: "{}," month: "{},"
day: "{}" day: "{}"
today: "Today: " today: "Today: "
this-month: "This month: " this-month: "Month:"
this-year: "This year: " this-year: "Year:"
common/views/widgets/donation.vue:
title: "Request for donations"
text: "To keep Misskey up and running, there have to happen some expense for the domain name, the server and so on. Since our policy is not to display any advertisements, we count on your donations. If you're interested in helping, contact {}. Thank you for your contribution!"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "Photo stream" title: "Photo stream"
no-photos: "No photos" no-photos: "No photos"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "Several windows can be detached outside the browser." tips-line19: "Several windows can be detached outside the browser."
tips-line20: "The percentage of the calendar widget shows the percentage of time elapsed." tips-line20: "The percentage of the calendar widget shows the percentage of time elapsed."
tips-line21: "You can also use the API to develop bots." tips-line21: "You can also use the API to develop bots."
tips-line23: "Mayu is so cute with its eyebrows." tips-line23: "Ai-chan kawaii!"
tips-line24: "Misskey has been running since 2014." tips-line24: "Misskey has been running since 2014."
tips-line25: "In a browser compatible with notification features, you can receive notifications in case Misskey is not open" tips-line25: "In a browser compatible with notification features, you can receive notifications in case Misskey is not open"
common/views/pages/not-found.vue:
page-not-found: "The page has not been found"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "Signed in as {}" signed-in-as: "Signed in as {}"
following: "Following" following: "Following"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "Post is private" private: "Post is private"
deleted: "Post has been removed" deleted: "Post has been removed"
reposted-by: "Reposted by {}"
location: "Location" location: "Location"
renote: "Repost" renote: "Repost"
add-reaction: "Add a reaction" add-reaction: "Add a reaction"
undo-reaction: "Reverse reaction"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "Reposted by {}"
reply: "Reply" reply: "Reply"
renote: "Renote" renote: "Renote"
add-reaction: "Add a reaction" add-reaction: "Add a reaction"
undo-reaction: "Reverse reaction"
detail: "Details" detail: "Details"
private: "This post is private" private: "This post is private"
deleted: "This post has been deleted" deleted: "This post has been deleted"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "Create a poll" create-poll: "Create a poll"
text-remain: "{} characters remaining" text-remain: "{} characters remaining"
recent-tags: "Recent" recent-tags: "Recent"
local-only-message: "This post will only be published locally"
click-to-tagging: "Click to tagging" click-to-tagging: "Click to tagging"
visibility: "Visibility" visibility: "Visibility"
geolocation-alert: "Your device does not provide location services." geolocation-alert: "Your device does not provide location services."
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "Quote..." quote: "Quote..."
cancel: "Cancel" cancel: "Cancel"
renote: "Repost" renote: "Repost"
renote-home: "Renote (Home)"
reposting: "Reposting..." reposting: "Reposting..."
success: "Reposted!" success: "Reposted!"
failure: "Failed to Repost" failure: "Failed to Repost"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "Profile" profile: "Profile"
notification: "Notification" notification: "Notification"
apps: "Apps" apps: "Apps"
tags: "Hashtags"
mute-and-block: "Mute / Block" mute-and-block: "Mute / Block"
blocking: "Blocking" blocking: "Blocking"
security: "Security" security: "Security"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "Post visibility" note-visibility: "Post visibility"
default-note-visibility: "Default visibility" default-note-visibility: "Default visibility"
remember-note-visibility: "Remember post visibility" remember-note-visibility: "Remember post visibility"
web-search-engine: "Web search engine"
web-search-engine-desc: "Example: https://www.google.com/?#q={{query}}"
auto-popout: "Auto pop-out window" auto-popout: "Auto pop-out window"
auto-popout-desc: "If it's possible, pop-out display will be used instead of opening a new window. This setting is stored in your browser." auto-popout-desc: "If it's possible, pop-out display will be used instead of opening a new window. This setting is stored in your browser."
advanced: "Advanced settings" advanced: "Advanced settings"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "Use circle icons" circle-icons: "Use circle icons"
contrasted-acct: "Add contrast to username" contrasted-acct: "Add contrast to username"
post-form-on-timeline: "Display post form at the top of the timeline" post-form-on-timeline: "Display post form at the top of the timeline"
suggest-recent-hashtags: "Show recent popular hashtags on the post form"
show-clock-on-header: "Show clock on upper-right" show-clock-on-header: "Show clock on upper-right"
show-reply-target: "Display reply target" show-reply-target: "Display reply target"
timeline: "Timeline" timeline: "Timeline"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "Show renoted posts of mine in timelines" show-renoted-my-notes: "Show renoted posts of mine in timelines"
show-local-renotes: "Show renoted local posts in timelines" show-local-renotes: "Show renoted local posts in timelines"
show-maps: "Display a map to show the location" show-maps: "Display a map to show the location"
remain-deleted-note: "Continue to show deleted posts"
deck-column-align: "Deck column alignment" deck-column-align: "Deck column alignment"
deck-column-align-center: "Center" deck-column-align-center: "Center"
deck-column-align-left: "Left" deck-column-align-left: "Left"
deck-column-align-flexible: "Flexible"
deck-column-width: "Column width of the deck"
deck-column-width-narrow: "narrow"
deck-column-width-narrower: "somewhat narrow"
deck-column-width-normal: "Normal"
deck-column-width-wider: "somewhat wide"
deck-column-width-wide: "wide"
sound: "Sound" sound: "Sound"
enable-sounds: "Enable sound" enable-sounds: "Enable sound"
enable-sounds-desc: "Play a sound when you receive a post/message. This setting is stored in the browser." enable-sounds-desc: "Play a sound when you receive a post/message. This setting is stored in the browser."
volume: "Volume" volume: "Volume"
test: "Test" test: "Test"
language: "Language"
pick-language: "Select a language"
recommended: "Recommended"
auto: "Automatic"
specify-language: "Specify language"
language-desc: "You need to reload the page for the changes to take effect."
cache: "Cache" cache: "Cache"
clean-cache: "Clear cache" clean-cache: "Clear cache"
cache-warn: "The cache of account info/posts/replies/messages/settings stored in the browser will be deleted. You need to reload the page after cleaning up." cache-warn: "The cache of account info/posts/replies/messages/settings stored in the browser will be deleted. You need to reload the page after cleaning up."
cache-cleared: "Cache cleared" cache-cleared: "Cache cleared"
cache-cleared-desc: "Please reload the page." cache-cleared-desc: "Please reload the page."
auto-watch: "Automatic watch"
auto-watch-desc: "Receive notifications about the post/reply/reaction automatically."
about: "About Misskey" about: "About Misskey"
operator: "The admin of this instance" operator: "The admin of this instance"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "Enter the password" enter-password: "Enter the password"
authenticator: "First, you need to install Google Authenticator on your device:" authenticator: "First, you need to install Google Authenticator on your device:"
howtoinstall: "How to install" howtoinstall: "How to install"
token: "Token"
scan: "And then, scan the QR code:" scan: "And then, scan the QR code:"
done: "Please enter the token displayed on your device:" done: "Please enter the token displayed on your device:"
submit: "Submit" submit: "Submit"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "Enter the password" enter-password: "Enter the password"
console: console:
title: 'API console' title: "API console"
endpoint: 'Endpoint' endpoint: "Endpoint"
parameter: 'Parameters' parameter: "Parameters"
credential-info: "Parameter \"i\" is not required at this console." credential-info: "Parameter \"i\" is not required at this console."
send: 'Send' send: "Send"
sending: 'Sending' sending: "Sending"
response: 'Result' response: "Result"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "No linked applications" no-apps: "No linked applications"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -835,7 +892,7 @@ common/views/components/mute-and-block.vue:
no-blocked-users: "No blocked users" no-blocked-users: "No blocked users"
word-mute: "Word mute" word-mute: "Word mute"
muted-words: "Muted keywords" muted-words: "Muted keywords"
muted-words-description: "スペースで区切るとAND指定になり、改行で区切るとOR指定になります" muted-words-description: "Separating with spaces results in AND specifications, and delimiting with line breaks results in OR specifications"
save: "Save" save: "Save"
common/views/components/password-settings.vue: common/views/components/password-settings.vue:
reset: "Change password" reset: "Change password"
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "Enter the new password again" enter-new-password-again: "Enter the new password again"
not-match: "The new passwords do not match" not-match: "The new passwords do not match"
changed: "Password changed" changed: "Password changed"
failed: "Failed to change password"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "This post is private" private: "This post is private"
deleted: "This post has been deleted" deleted: "This post has been deleted"
media-count: "{} media attached" media-count: "{} media attached"
poll: "Poll" poll: "Poll"
desktop/views/components/settings.tags.vue:
title: "Tags"
query: "Query (optional)"
add: "Add"
save: "Save"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "Task Manager" title: "Task Manager"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "Dashboard" dashboard: "Dashboard"
instance: "Instance" instance: "Instance"
emoji: "Emoji" emoji: "Emoji"
moderators: "Moderators"
users: "Users" users: "Users"
update: "Update" federation: "Federation"
announcements: "Announcements" announcements: "Announcements"
hashtags: "Hashtags" hashtags: "Hashtags"
back-to-misskey: "Back to Misskey" back-to-misskey: "Back to Misskey"
@ -929,7 +993,9 @@ admin/views/instance.vue:
instance-name: "Instance name" instance-name: "Instance name"
instance-description: "Instance description" instance-description: "Instance description"
host: "Host" host: "Host"
logo-url: "Logo image URL"
banner-url: "Banner image URL" banner-url: "Banner image URL"
error-image-url: "Error image URL"
languages: "Language of this instance" languages: "Language of this instance"
languages-desc: "You can add more than one, separated by spaces." languages-desc: "You can add more than one, separated by spaces."
maintainer-config: "Administrator information" maintainer-config: "Administrator information"
@ -947,26 +1013,53 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Settings of connecting to Twitter" twitter-integration-config: "Settings of connecting to Twitter"
twitter-integration-info: "The callback URL is set on /api/tw/cb." twitter-integration-info: "The callback URL is set on {url}."
enable-twitter-integration: "Enable connection to Twitter" enable-twitter-integration: "Enable connection to Twitter"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer Secret" twitter-integration-consumer-secret: "Consumer Secret"
github-integration-config: "Setting of connecting to GitHub" github-integration-config: "Setting of connecting to GitHub"
github-integration-info: "The callback URL is set on /api/gh/cb." github-integration-info: "The callback URL is set on {url}."
enable-github-integration: "Enable connection to GitHub" enable-github-integration: "Enable connection to GitHub"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord Integration settings"
discord-integration-info: "The callback URL is set to {url}."
enable-discord-integration: "Enable Discord connection"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "Proxy account" proxy-account-config: "Proxy account"
proxy-account-info: "Proxy account can follow a remote user to deliver activities if no one in this instance follow him or her. When you add a remote user who is followed by nobody in this instance to your list, in order to get his or her data, proxy account follow him or her instead of your following." proxy-account-info: "Proxy account can follow a remote user to deliver activities if no one in this instance follow him or her. When you add a remote user who is followed by nobody in this instance to your list, in order to get his or her data, proxy account follow him or her instead of your following."
proxy-account-username: "Proxy account user name" proxy-account-username: "Proxy account user name"
proxy-account-username-desc: "Specify the user name of the account that is used as a proxy." proxy-account-username-desc: "Specify the user name of the account that is used as a proxy."
proxy-account-warn: "You must make an account having this username before this action." proxy-account-warn: "You must make an account having this username before this action."
max-note-text-length: "Maximum numbers of post characters" max-note-text-length: "Maximum numbers of post characters"
disable-registration: "Stop user registration" disable-registration: "Disable new user registration"
disable-local-timeline: "Make Local Timeline disabled" disable-local-timeline: "Disable the Local Timeline"
invite: "Invite" invite: "Invite"
save: "Save" save: "Save"
saved: "Saved" saved: "Saved"
user-recommendation-config: "Recommended users"
enable-external-user-recommendation: "Enable external user recommendations"
external-user-recommendation-engine: "Engine"
external-user-recommendation-engine-desc: "Example: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "Timeout"
external-user-recommendation-timeout-desc: "Number of milliseconds (ex. 300,000)"
email-config: "Email server settings"
email-config-info: "Used to confirm email and password reset etc."
enable-email: "Enable email delivery"
email: "Email Address"
smtp-secure: "Use implicit SSL/TLS in the SMTP connection"
smtp-secure-info: "Turn off STARTTLS when used that."
smtp-host: "SMTP Host"
smtp-port: "SMTP Port"
smtp-user: "SMTP User"
smtp-pass: "SMTP Password"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "Enable ServiceWorker"
serviceworker-info: "Must be enabled for push notifications."
vapid-publickey: "VAPID public key"
vapid-privatekey: "VAPID private key"
vapid-info: "If you want to enable ServiceWorker, you need to generate VAPID keys. Unless you have set your global node_modules location elsewhere, you need to run this as root:"
admin/views/charts.vue: admin/views/charts.vue:
title: "Chart" title: "Chart"
per-day: "per Day" per-day: "per Day"
@ -974,7 +1067,7 @@ admin/views/charts.vue:
federation: "Federation" federation: "Federation"
notes: "Posts" notes: "Posts"
users: "Users" users: "Users"
drive: "Drive" drive: "Media storage"
network: "Network" network: "Network"
charts: charts:
federation-instances: "The number of instances: increase/decrease" federation-instances: "The number of instances: increase/decrease"
@ -992,19 +1085,57 @@ admin/views/charts.vue:
network-requests: "Requests" network-requests: "Requests"
network-time: "Response time" network-time: "Response time"
network-usage: "Traffic" network-usage: "Traffic"
admin/views/drive.vue:
sort:
title: "Sort"
createdAtAsc: "Age - Oldest First"
createdAtDesc: "Age - Newest First"
sizeAsc: "Size - Smallest First"
sizeDesc: "Size - Largest First"
origin:
title: "Origin"
combined: "Local + Remote"
local: "Local"
remote: "Remote"
delete: "Delete"
deleted: "Deleted successfully"
mark-as-sensitive: "Mark as 'sensitive'"
unmark-as-sensitive: "Unmark as 'sensitive'"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "Suspend a user" operation: "Operations"
username-or-userid: "Username or user ID"
user-not-found: "User not found"
lookup: "Look up"
reset-password: "Reset password"
password-updated: "The password is now \"{password}\""
suspend: "Suspend" suspend: "Suspend"
suspended: "Successfully suspended." suspended: "Successfully suspended."
unsuspend-user: "Unsuspend users"
unsuspend: "Unsuspend" unsuspend: "Unsuspend"
unsuspended: "The user has successfully unsuspended." unsuspended: "The user has successfully unsuspended."
verify-user: "User account verification settings"
verify: "Verify account" verify: "Verify account"
verified: "The account is now being verified" verified: "The account is now being verified"
unverify-user: "User account unverification settings"
unverify: "Unverify account" unverify: "Unverify account"
unverified: "The account is now being unverified" unverified: "The account is now being unverified"
users:
title: "Users"
sort:
title: "Sort"
createdAtAsc: "Date Registered (Ascending)"
createdAtDesc: "Date Registered (Descending)"
updatedAtAsc: "Last Updated (Ascending)"
updatedAtDesc: "Last Updated (Descending)"
origin:
title: "Origin"
combined: "Local + Remote"
local: "Local"
remote: "Remote"
createdAt: "Created at"
updatedAt: "Updated at"
admin/views/moderators.vue:
add-moderator:
title: "Register Moderator"
add: "Register"
added: "Registered a Moderator."
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "Add emoji" title: "Add emoji"
@ -1022,7 +1153,7 @@ admin/views/emoji.vue:
remove: "Remove" remove: "Remove"
updated: "Updated" updated: "Updated"
remove-emoji: remove-emoji:
are-you-sure: "Delete \"%1$s\"?" are-you-sure: "Delete \"$1\"?"
removed: "Deleted" removed: "Deleted"
admin/views/announcements.vue: admin/views/announcements.vue:
announcements: "Announcements" announcements: "Announcements"
@ -1033,7 +1164,7 @@ admin/views/announcements.vue:
text: "Content" text: "Content"
saved: "Saved" saved: "Saved"
_remove: _remove:
are-you-sure: "Delete \"%1$s\"?" are-you-sure: "Delete \"$1\"?"
removed: "Deleted" removed: "Deleted"
admin/views/hashtags.vue: admin/views/hashtags.vue:
hided-tags: "Hidden Tags" hided-tags: "Hidden Tags"
@ -1101,6 +1232,7 @@ desktop/views/pages/user/user.header.vue:
posts: "Notes" posts: "Notes"
following: "Following" following: "Following"
followers: "Followers" followers: "Followers"
mention: "Mentions"
is-bot: "This account is a Bot" is-bot: "This account is a Bot"
years-old: "{age} years old" years-old: "{age} years old"
year: "/" year: "/"
@ -1110,6 +1242,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "Posts" default: "Posts"
with-replies: "Posts and replies" with-replies: "Posts and replies"
with-media: "Media" with-media: "Media"
my-posts: "My posts"
empty: "This user doesn't seem to have posted anything yet." empty: "This user doesn't seem to have posted anything yet."
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "Message" title: "Message"
@ -1182,14 +1315,12 @@ mobile/views/components/friends-maker.vue:
refresh: "See more" refresh: "See more"
close: "Close" close: "Close"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "Reposted by {}"
private: "This post is private" private: "This post is private"
deleted: "This post has been deleted" deleted: "This post has been deleted"
location: "Location" location: "Location"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "Reply" reply: "Reply"
reaction: "Reaction" reaction: "Reaction"
reposted-by: "Reposted by {}"
private: "This post is private" private: "This post is private"
deleted: "This post has been deleted" deleted: "This post has been deleted"
location: "Location" location: "Location"
@ -1294,11 +1425,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "Choose files" select-file: "Choose files"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "Signed in as {}" signed-in-as: "Signed in as {}"
lang: "Language"
lang-tip: "You will need to reload the page for the changes to take effect."
recommended: "Recommended"
auto: "Auto"
specify-language: "Select your language"
design: "Design and display" design: "Design and display"
dark-mode: "Dark Mode" dark-mode: "Dark Mode"
i-am-under-limited-internet: "I'm in limited bandwidth" i-am-under-limited-internet: "I'm in limited bandwidth"
@ -1315,23 +1441,16 @@ mobile/views/pages/settings.vue:
notification-position: "Notification style" notification-position: "Notification style"
notification-position-bottom: "Bottom" notification-position-bottom: "Bottom"
notification-position-top: "Top" notification-position-top: "Top"
theme: "Theme"
behavior: "Behavior" behavior: "Behavior"
fetch-on-scroll: "Endless loading on scroll" fetch-on-scroll: "Endless loading on scroll"
note-visibility: "Post visibility" note-visibility: "Post visibility"
default-note-visibility: "Default visibility" default-note-visibility: "Default visibility"
remember-note-visibility: "Remember post visibility" remember-note-visibility: "Remember post visibility"
web-search-engine: "Web search engine"
web-search-engine-desc: "Example: https://www.google.com/?#q={{query}}"
disable-via-mobile: "Don't mark the post as 'from mobile'" disable-via-mobile: "Don't mark the post as 'from mobile'"
load-raw-images: "Show attached images in original quality" load-raw-images: "Show attached images in original quality"
load-remote-media: "Show media from a remote server" load-remote-media: "Show media from a remote server"
twitter: "Twitter integration"
twitter-connect: "Connect to your Twitter account"
twitter-reconnect: "Reconnect"
twitter-disconnect: "Disconnect"
github: "GitHub Integration"
github-connect: "Connect to your GitHub account"
github-reconnect: "Reconnect"
github-disconnect: "Disconnect"
update: "Misskey Update" update: "Misskey Update"
version: "Current version:" version: "Current version:"
latest-version: "Latest version:" latest-version: "Latest version:"
@ -1345,7 +1464,6 @@ mobile/views/pages/settings.vue:
signout: "Sign out" signout: "Sign out"
sound: "Sounds" sound: "Sounds"
enable-sounds: "Enable sounds" enable-sounds: "Enable sounds"
mark-as-read-all-unread-notes: "Mark all posts as read"
password: "Password" password: "Password"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "Follows you" follows-you: "Follows you"
@ -1355,12 +1473,14 @@ mobile/views/pages/user.vue:
overview: "Overview" overview: "Overview"
timeline: "Timeline" timeline: "Timeline"
media: "Media" media: "Media"
is-suspended: "This account has been suspended."
mute: "Mute" mute: "Mute"
unmute: "Unmute" unmute: "Unmute"
block: "Block" block: "Block"
unblock: "Unblock" unblock: "Unblock"
years-old: "{age} years old" years-old: "{age} years old"
push-to-list: "Add to list"
select-list: "Select a list"
list-pushed: "Successfully added {user} to {list}."
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "Recent notes" recent-notes: "Recent notes"
images: "Images" images: "Images"
@ -1401,18 +1521,19 @@ deck:
deck/deck.tl-column.vue: deck/deck.tl-column.vue:
is-media-only: "Only media posts" is-media-only: "Only media posts"
is-media-view: "Media view" is-media-view: "Media view"
edit: "Option" edit: "Options"
deck/deck.user-column.vue: deck/deck.user-column.vue:
posts: "Posts" posts: "Posts"
following: "Following" following: "Following"
followers: "Followers" followers: "Followers"
mention: "Mentions"
images: "Images" images: "Images"
activity: "Activity" activity: "Activity"
timeline: "Timeline" timeline: "Timeline"
pinned-notes: "Pinned posts" pinned-notes: "Pinned posts"
push-to-a-list: "Add to list" push-to-a-list: "Add to list"
docs: docs:
edit-this-page-on-github: "Found a mistake or want to contribute for the documentation?" edit-this-page-on-github: "Found an error, or do you want to contribute to the documentation?"
edit-this-page-on-github-link: "Edit this page at GitHub!" edit-this-page-on-github-link: "Edit this page at GitHub!"
api: api:
entities: entities:

View File

@ -26,6 +26,7 @@ common:
close: "Cerrar" close: "Cerrar"
do-not-copy-paste: "Por favor no copies código aquí. Tu cuenta puede resultar comprometida." do-not-copy-paste: "Por favor no copies código aquí. Tu cuenta puede resultar comprometida."
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "¡Listo!" got-it: "¡Listo!"
customization-tips: customization-tips:
title: "Consejos de personalización" title: "Consejos de personalización"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "¿Qué haces?" a: "¿Qué haces?"
b: "¿Qué está pasando?" b: "¿Qué está pasando?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "Tu token se ha regenerado vas a ser desconectado." my-token-regenerated: "Tu token se ha regenerado vas a ser desconectado."
i-like-sushi: "Prefiero sushi a pudín" i-like-sushi: "Prefiero sushi a pudín"
show-reversi-board-labels: "Mostrar etiquetas de filas y columnas en Reversi" show-reversi-board-labels: "Mostrar etiquetas de filas y columnas en Reversi"
use-contrast-reversi-stones: "Hacer el color de la piedra claro en Reversi" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "Cuenta verificada" verified-user: "Cuenta verificada"
disable-animated-mfm: "Desactivar texto animado en una publicación" disable-animated-mfm: "Desactivar texto animado en una publicación"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -116,13 +120,19 @@ common:
reduce-motion: "UIの動きを減らす" reduce-motion: "UIの動きを減らす"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
do-not-use-in-production: 'Esto está en desarrollo, no usarlo para producción.' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "Esto está en desarrollo, no usarlo para producción."
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'やり直す' retry: "やり直す"
reversi: reversi:
drawn: "Empatado" drawn: "Empatado"
my-turn: "Mi turno" my-turn: "Mi turno"
@ -153,12 +163,12 @@ common:
polls: "Encuestas" polls: "Encuestas"
post-form: "Formulario" post-form: "Formulario"
server: "Información del servidor" server: "Información del servidor"
donation: "Donaciones"
nav: "Navegación" nav: "Navegación"
tips: "Consejos" tips: "Consejos"
hashtags: "Etiquetas" hashtags: "Etiquetas"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "アプリの作成に失敗しました。再度お試しください。"
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
permission-ask: "La aplicación requiere los siguientes permisos:" permission-ask: "La aplicación requiere los siguientes permisos:"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "閲覧注意" sensitive: "閲覧注意"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "Encuentra un usuario" search-user: "Encuentra un usuario"
you: "Tu" you: "Tu"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "Desarrolladores" develop: "Desarrolladores"
feedback: "Opiniones" feedback: "Opiniones"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "Detalles" detail: "Detalles"
copy-content: "内容をコピー"
copy-link: "Copiar enlace" copy-link: "Copiar enlace"
favorite: "Me gusta esta nota" favorite: "Me gusta esta nota"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "O" or: "O"
signin-with-twitter: "Ingresar con Twitter" signin-with-twitter: "Ingresar con Twitter"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "Autenticación fallida. Asegúrate de haber usado el nombre de usuario y contraseña correctos." login-failed: "Autenticación fallida. Asegúrate de haber usado el nombre de usuario y contraseña correctos."
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "Código de invitación" invitation-code: "Código de invitación"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "Conectando" connecting: "Conectando"
reconnecting: "Reconectando" reconnecting: "Reconectando"
connected: "Conectado" connected: "Conectado"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "Si comectas tu cuenta de Twitter con tu cuenta de Misskey podrás ver la información de tu cuemta de Twitter en tu perfil y además podrás entrar usando Twitter." title: "通知"
connected-to: "Estas comectado con las siguientes cuentas de Twitter" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "Detalles..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "Conectar de nuevo" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Conectate usando Twitter" auto-watch: "投稿の自動ウォッチ"
disconnect: "Desconectado" auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "Un momento" waiting: "Un momento"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "Piblica solo para tus seguidores" followers-desc: "Piblica solo para tus seguidores"
specified: "Directo" specified: "Directo"
specified-desc: "Publica solo para los seguidores que quieras" specified-desc: "Publica solo para los seguidores que quieras"
private: "Privada" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "Recuperando" fetching: "Recuperando"
no-broadcasts: "Sin emisión" no-broadcasts: "Sin emisión"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "Hoy:" today: "Hoy:"
this-month: "Este mes:" this-month: "Este mes:"
this-year: "Este año:" this-year: "Este año:"
common/views/widgets/donation.vue:
title: "Donaciones"
text: "Para mantener Misskey funcionando tenemos que pagar por el dominio, los costos de hospedaje y otros costos. Como no recibimos dinero de publicidad, contamos con el apoyo de todos ustedes. Si estás interesado en ayudar, contacta a {}. ¡Muchas gracias por tu contribución!"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "Galería de fotos" title: "Galería de fotos"
no-photos: "No hay fotos." no-photos: "No hay fotos."
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "Algunas ventanas pueden ser separadas fuera del navegador" tips-line19: "Algunas ventanas pueden ser separadas fuera del navegador"
tips-line20: "El porcentaje mostrando en el accesorio de calendario indica el porcentaje de tiempo transcurrido." tips-line20: "El porcentaje mostrando en el accesorio de calendario indica el porcentaje de tiempo transcurrido."
tips-line21: "También puedes usar la API para desarrollar tus propios bots." tips-line21: "También puedes usar la API para desarrollar tus propios bots."
tips-line23: "Mayu is tan bonito con sus cejas." tips-line23: "藍かわいいよ藍"
tips-line24: "Misskey inició en 2014." tips-line24: "Misskey inició en 2014."
tips-line25: "Puedes recibir notificaciones incluso si Misskey no está abierto en un navegador compatible." tips-line25: "Puedes recibir notificaciones incluso si Misskey no está abierto en un navegador compatible."
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "Autenticado como {}" signed-in-as: "Autenticado como {}"
following: "Siguiendo" following: "Siguiendo"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "Esta publicación es privada" private: "Esta publicación es privada"
deleted: "Esta publicación ha sido removida" deleted: "Esta publicación ha sido removida"
reposted-by: "Republicado por {}"
location: "Localización" location: "Localización"
renote: "Republicar" renote: "Republicar"
add-reaction: "Agregar una reacción" add-reaction: "Agregar una reacción"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "Crea una encuesta" create-poll: "Crea una encuesta"
text-remain: "quedan {} caracteres" text-remain: "quedan {} caracteres"
recent-tags: "Reciente" recent-tags: "Reciente"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "Click para etiquetar" click-to-tagging: "Click para etiquetar"
visibility: "Visibilidad" visibility: "Visibilidad"
geolocation-alert: "Tu dispositivo no tiene soporte de geolocalización." geolocation-alert: "Tu dispositivo no tiene soporte de geolocalización."
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "Cita..." quote: "Cita..."
cancel: "Cancelar" cancel: "Cancelar"
renote: "Volver a publicar" renote: "Volver a publicar"
renote-home: "Renote (Home)"
reposting: "Publicando de nuevo..." reposting: "Publicando de nuevo..."
success: "¡Publicado!" success: "¡Publicado!"
failure: "La publicación ha fallado" failure: "La publicación ha fallado"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "Perfil" profile: "Perfil"
notification: "Notificación" notification: "Notificación"
apps: "Aplicaciones" apps: "Aplicaciones"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "Seguridad" security: "Seguridad"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "Ventana emergente automática" auto-popout: "Ventana emergente automática"
auto-popout-desc: "Muestra una ventana emergente si es posible. Esta configuración depende del navegador." auto-popout-desc: "Muestra una ventana emergente si es posible. Esta configuración depende del navegador."
advanced: "Configuración avanzada" advanced: "Configuración avanzada"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "Usar iconos circulares" circle-icons: "Usar iconos circulares"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "Mostrar el formulario de las entradas encima de la línea de tiempo" post-form-on-timeline: "Mostrar el formulario de las entradas encima de la línea de tiempo"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "リプライ先を表示する"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "マップの自動展開" show-maps: "マップの自動展開"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。" enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
volume: "ボリューム" volume: "ボリューム"
test: "テスト" test: "テスト"
language: "言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。" cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "Escribe una contraseña" enter-password: "Escribe una contraseña"
authenticator: "Primero, necesitas instalar Google Authenticator en tu dispositivo:" authenticator: "Primero, necesitas instalar Google Authenticator en tu dispositivo:"
howtoinstall: "Cómo instalar" howtoinstall: "Cómo instalar"
token: "トークン"
scan: "Luego, escanea el código QR:" scan: "Luego, escanea el código QR:"
done: "Por favor ingresa el token mostrado en tu dispositivo:" done: "Por favor ingresa el token mostrado en tu dispositivo:"
submit: "Enviar" submit: "Enviar"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "No hay aplicaciones asociadas" no-apps: "No hay aplicaciones asociadas"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "メッセージ" title: "メッセージ"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっと見る" refresh: "もっと見る"
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返信" reply: "返信"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "言語"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "動作" behavior: "動作"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Twitterアカウントに接続する"
twitter-reconnect: "再接続する"
twitter-disconnect: "切断する"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey Update" update: "Misskey Update"
version: "バージョン:" version: "バージョン:"
latest-version: "最新のバージョン:" latest-version: "最新のバージョン:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "サインアウト" signout: "サインアウト"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "フォローされています" follows-you: "フォローされています"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "概要" overview: "概要"
timeline: "タイムライン" timeline: "タイムライン"
media: "メディア" media: "メディア"
is-suspended: "このユーザーは凍結されています。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "最近の投稿" recent-notes: "最近の投稿"
images: "画像" images: "画像"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@
const fs = require('fs'); const fs = require('fs');
const yaml = require('js-yaml'); const yaml = require('js-yaml');
const langs = ['de-DE', 'en-US', 'fr-FR', 'ja-JP', 'ja-KS', 'pl-PL', 'es-ES', 'nl-NL']; const langs = ['de-DE', 'en-US', 'fr-FR', 'ja-JP', 'ja-KS', 'pl-PL', 'es-ES', 'nl-NL', 'zh-CN', 'ko-KR'];
const loadLocale = lang => yaml.safeLoad(fs.readFileSync(`${__dirname}/${lang}.yml`, 'utf-8')); const loadLocale = lang => yaml.safeLoad(fs.readFileSync(`${__dirname}/${lang}.yml`, 'utf-8'));
const locales = langs.map(lang => ({ [lang]: loadLocale(lang) })); const locales = langs.map(lang => ({ [lang]: loadLocale(lang) }));

View File

@ -1,10 +1,10 @@
--- ---
meta: meta:
lang: "日本語" lang: "In Italiano"
divider: "" divider: ""
common: common:
misskey: "A ⭐ of fediverse" misskey: "A ⭐ of the fediverse"
about-title: "A ⭐ of fediverse." about-title: "A ⭐ of the fediverse."
about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。" about: "Misskeyを見つけていただき、ありがとうございます。Misskeyは、地球で生まれた<b>分散マイクロブログSNS</b>です。Fediverse(様々なSNSで構成される宇宙)の中に存在するため、他のSNSと相互に繋がっています。暫し都会の喧騒から離れて、新しいインターネットにダイブしてみませんか。"
intro: intro:
title: "Misskeyって" title: "Misskeyって"
@ -26,6 +26,7 @@ common:
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
b: "何かありましたか?" b: "何かありましたか?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。" my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
i-like-sushi: "私は(プリンよりむしろ)寿司が好き" i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "公式アカウント" verified-user: "公式アカウント"
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする" disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -116,13 +120,19 @@ common:
reduce-motion: "UIの動きを減らす" reduce-motion: "UIの動きを減らす"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
do-not-use-in-production: 'これは開発ビルドです。本番環境で使用しないでください。' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'やり直す' retry: "やり直す"
reversi: reversi:
drawn: "引き分け" drawn: "引き分け"
my-turn: "あなたのターンです" my-turn: "あなたのターンです"
@ -153,12 +163,12 @@ common:
polls: "アンケート" polls: "アンケート"
post-form: "投稿フォーム" post-form: "投稿フォーム"
server: "サーバー情報" server: "サーバー情報"
donation: "寄付のお願い"
nav: "ナビゲーション" nav: "ナビゲーション"
tips: "ヒント" tips: "ヒント"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "アプリの作成に失敗しました。再度お試しください。"
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
permission-ask: "このアプリは次の権限を要求しています:" permission-ask: "このアプリは次の権限を要求しています:"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "閲覧注意" sensitive: "閲覧注意"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "ユーザーを探す" search-user: "ユーザーを探す"
you: "あなた" you: "あなた"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "開発者" develop: "開発者"
feedback: "フィードバック" feedback: "フィードバック"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "詳細" detail: "詳細"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "お気に入り" favorite: "お気に入り"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "または" or: "または"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "接続中" connecting: "接続中"
reconnecting: "再接続中" reconnecting: "再接続中"
connected: "接続完了" connected: "接続完了"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。" title: "通知"
connected-to: "次のTwitterアカウントに接続されています" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "詳細..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "再接続する" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Twitterと接続する" auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する" disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "待機中" waiting: "待機中"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "確認中" fetching: "確認中"
no-broadcasts: "お知らせはありません" no-broadcasts: "お知らせはありません"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "今日:" today: "今日:"
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "寄付のお願い"
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "フォトストリーム" title: "フォトストリーム"
no-photos: "写真はありません" no-photos: "写真はありません"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
reposted-by: "{}がRenote"
location: "位置情報" location: "位置情報"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "アンケートを作成" create-poll: "アンケートを作成"
text-remain: "残り{}文字" text-remain: "残り{}文字"
recent-tags: "最近" recent-tags: "最近"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "公開範囲" visibility: "公開範囲"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "引用する..." quote: "引用する..."
cancel: "キャンセル" cancel: "キャンセル"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "しています..." reposting: "しています..."
success: "Renoteしました" success: "Renoteしました"
failure: "Renoteに失敗しました" failure: "Renoteに失敗しました"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "プロフィール" profile: "プロフィール"
notification: "通知" notification: "通知"
apps: "アプリ" apps: "アプリ"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "セキュリティ" security: "セキュリティ"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "ウィンドウの自動ポップアウト" auto-popout: "ウィンドウの自動ポップアウト"
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。" auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
advanced: "詳細設定" advanced: "詳細設定"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "円形のアイコンを使用" circle-icons: "円形のアイコンを使用"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "リプライ先を表示する"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "マップの自動展開" show-maps: "マップの自動展開"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。" enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
volume: "ボリューム" volume: "ボリューム"
test: "テスト" test: "テスト"
language: "言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。" cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:" authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
howtoinstall: "インストール方法はこちら" howtoinstall: "インストール方法はこちら"
token: "トークン"
scan: "次に、表示されているQRコードをスキャンします:" scan: "次に、表示されているQRコードをスキャンします:"
done: "お使いのデバイスに表示されているトークンを入力して完了します:" done: "お使いのデバイスに表示されているトークンを入力して完了します:"
submit: "完了" submit: "完了"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "メッセージ" title: "メッセージ"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっと見る" refresh: "もっと見る"
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返信" reply: "返信"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "言語"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "動作" behavior: "動作"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Twitterアカウントに接続する"
twitter-reconnect: "再接続する"
twitter-disconnect: "切断する"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey Update" update: "Misskey Update"
version: "バージョン:" version: "バージョン:"
latest-version: "最新のバージョン:" latest-version: "最新のバージョン:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "サインアウト" signout: "サインアウト"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "フォローされています" follows-you: "フォローされています"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "概要" overview: "概要"
timeline: "タイムライン" timeline: "タイムライン"
media: "メディア" media: "メディア"
is-suspended: "このユーザーは凍結されています。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "最近の投稿" recent-notes: "最近の投稿"
images: "画像" images: "画像"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

View File

@ -26,6 +26,7 @@ common:
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
@ -95,7 +96,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
@ -114,9 +117,10 @@ common:
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。" my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
i-like-sushi: "私は(プリンよりむしろ)寿司が好き" i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "公式アカウント" verified-user: "公式アカウント"
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする" disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -124,16 +128,21 @@ common:
reduce-motion: "UIの動きを減らす" reduce-motion: "UIの動きを減らす"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: 'これは開発ビルドです。本番環境で使用しないでください。' do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'やり直す' retry: "やり直す"
reversi: reversi:
drawn: "引き分け" drawn: "引き分け"
@ -166,13 +175,13 @@ common:
polls: "アンケート" polls: "アンケート"
post-form: "投稿フォーム" post-form: "投稿フォーム"
server: "サーバー情報" server: "サーバー情報"
donation: "寄付のお願い"
nav: "ナビゲーション" nav: "ナビゲーション"
tips: "ヒント" tips: "ヒント"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "アプリの作成に失敗しました。再度お試しください。"
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
@ -278,6 +287,7 @@ common/views/components/media-banner.vue:
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -294,6 +304,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -316,6 +327,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "ユーザーを探す" search-user: "ユーザーを探す"
@ -351,7 +365,9 @@ common/views/components/nav.vue:
feedback: "フィードバック" feedback: "フィードバック"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "詳細" detail: "詳細"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "お気に入り" favorite: "お気に入り"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -399,6 +415,7 @@ common/views/components/signin.vue:
or: "または" or: "または"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
@ -434,13 +451,19 @@ common/views/components/stream-indicator.vue:
reconnecting: "再接続中" reconnecting: "再接続中"
connected: "接続完了" connected: "接続完了"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。" title: "通知"
connected-to: "次のTwitterアカウントに接続されています" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "詳細..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "再接続する" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Twitterと接続する" auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する" disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
@ -450,6 +473,14 @@ common/views/components/github-setting.vue:
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "待機中" waiting: "待機中"
@ -461,18 +492,30 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -480,12 +523,25 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "確認中" fetching: "確認中"
@ -501,10 +557,6 @@ common/views/widgets/calendar.vue:
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "寄付のお願い"
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "フォトストリーム" title: "フォトストリーム"
no-photos: "写真はありません" no-photos: "写真はありません"
@ -548,10 +600,13 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -708,16 +763,16 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
reposted-by: "{}がRenote"
location: "位置情報" location: "位置情報"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -752,6 +807,7 @@ desktop/views/components/post-form.vue:
create-poll: "アンケートを作成" create-poll: "アンケートを作成"
text-remain: "残り{}文字" text-remain: "残り{}文字"
recent-tags: "最近" recent-tags: "最近"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "公開範囲" visibility: "公開範囲"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -772,6 +828,7 @@ desktop/views/components/renote-form.vue:
quote: "引用する..." quote: "引用する..."
cancel: "キャンセル" cancel: "キャンセル"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "しています..." reposting: "しています..."
success: "Renoteしました" success: "Renoteしました"
failure: "Renoteに失敗しました" failure: "Renoteに失敗しました"
@ -790,6 +847,7 @@ desktop/views/components/settings.vue:
profile: "プロフィール" profile: "プロフィール"
notification: "通知" notification: "通知"
apps: "アプリ" apps: "アプリ"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "セキュリティ" security: "セキュリティ"
@ -806,6 +864,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "ウィンドウの自動ポップアウト" auto-popout: "ウィンドウの自動ポップアウト"
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。" auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
advanced: "詳細設定" advanced: "詳細設定"
@ -826,7 +886,6 @@ desktop/views/components/settings.vue:
circle-icons: "円形のアイコンを使用" circle-icons: "円形のアイコンを使用"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "リプライ先を表示する"
timeline: "タイムライン" timeline: "タイムライン"
@ -834,9 +893,17 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "マップの自動展開" show-maps: "マップの自動展開"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
@ -844,22 +911,12 @@ desktop/views/components/settings.vue:
volume: "ボリューム" volume: "ボリューム"
test: "テスト" test: "テスト"
language: "言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。" cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
@ -902,6 +959,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:" authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
howtoinstall: "インストール方法はこちら" howtoinstall: "インストール方法はこちら"
token: "トークン"
scan: "次に、表示されているQRコードをスキャンします:" scan: "次に、表示されているQRコードをスキャンします:"
done: "お使いのデバイスに表示されているトークンを入力して完了します:" done: "お使いのデバイスに表示されているトークンを入力して完了します:"
submit: "完了" submit: "完了"
@ -917,13 +975,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
@ -951,6 +1009,7 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
@ -958,6 +1017,12 @@ desktop/views/components/sub-note-content.vue:
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
@ -1036,7 +1101,7 @@ admin/views/index.vue:
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター" moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -1056,6 +1121,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -1073,15 +1139,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -1093,6 +1164,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
@ -1120,19 +1213,53 @@ admin/views/charts.vue:
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue: admin/views/moderators.vue:
add-moderator: add-moderator:
@ -1252,6 +1379,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1262,6 +1390,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
@ -1351,7 +1480,6 @@ mobile/views/components/friends-maker.vue:
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1359,7 +1487,6 @@ mobile/views/components/note.vue:
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返信" reply: "返信"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1492,11 +1619,6 @@ mobile/views/pages/selectdrive.vue:
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "言語"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1513,23 +1635,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "動作" behavior: "動作"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Twitterアカウントに接続する"
twitter-reconnect: "再接続する"
twitter-disconnect: "切断する"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey Update" update: "Misskey Update"
version: "バージョン:" version: "バージョン:"
latest-version: "最新のバージョン:" latest-version: "最新のバージョン:"
@ -1543,7 +1658,6 @@ mobile/views/pages/settings.vue:
signout: "サインアウト" signout: "サインアウト"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
@ -1554,12 +1668,14 @@ mobile/views/pages/user.vue:
overview: "概要" overview: "概要"
timeline: "タイムライン" timeline: "タイムライン"
media: "メディア" media: "メディア"
is-suspended: "このユーザーは凍結されています。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "最近の投稿" recent-notes: "最近の投稿"
@ -1613,6 +1729,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

View File

@ -25,11 +25,12 @@ common:
application-authorization: "アプリの連携" application-authorization: "アプリの連携"
close: "さいなら" close: "さいなら"
do-not-copy-paste: "ここにコードを入力したり張り付けたりせんといてください。アカウントが不正利用されるかも分からん。知らんけど。" do-not-copy-paste: "ここにコードを入力したり張り付けたりせんといてください。アカウントが不正利用されるかも分からん。知らんけど。"
load-more: "もっと読み込む" load-more: "もっとあらへんのか!"
enter-password: "パスワードを入れてや"
got-it: "ほい" got-it: "ほい"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
paragraph: "<p>ホームのカスタマイズは、ウィジェットを追加/削除したり、ドラッグ&ドロップして並替えたりすることができます。</p><p>一部ウィジェットは<strong><strong>右</strong>クリック</strong>することで表示を変更することができます。</p><p>ウィジェットを削除するには、ヘッダーの<strong>「ゴミ箱」</strong>と書かれたエリアにウィジェットをドラッグ&ドロップします。</p><p>カスタマイズを終了するには、右上の「完了」をクリックします。</p>" paragraph: "<p>ホームのカスタマイズは、ウィジェットを増やしたりほかしたり、ドラッグドロップして並替えたりしていじれるで。</p><p>一部ウィジェットは<strong><strong>右</strong>クリック</strong>で表示もいじれるんや。</p><p>ほかしたいときはヘッダーの<strong>「ゴミ箱」</strong>にほうりこんでら。</p><p>「完了」押したらお終いやで。</p>"
gotit: "Got it!" gotit: "Got it!"
notification: notification:
file-uploaded: "ファイルがアップロードされたで" file-uploaded: "ファイルがアップロードされたで"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワー以外に見せんとって" followers-desc: "自分のフォロワー以外に見せんとって"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "今から言うユーザー以外に見せんとってや" specified-desc: "今から言うユーザー以外に見せんとってや"
private: "公開" local-public: "公開 (ローカルだけ)"
local-home: "ホーム (ローカルだけ)"
local-followers: "フォロワー (ローカルだけ)"
note-placeholders: note-placeholders:
a: "今なにしてん?" a: "今なにしてん?"
b: "何かあったんか?" b: "何かあったんか?"
@ -106,30 +109,37 @@ common:
my-token-regenerated: "あんさんのトークンが更新されたらしいわ。すまんがとりあえずサインアウトすんで。" my-token-regenerated: "あんさんのトークンが更新されたらしいわ。すまんがとりあえずサインアウトすんで。"
i-like-sushi: "寿司(のほうがプリンよりむしろ)ウマい、タコ焼きはあらへんけど。" i-like-sushi: "寿司(のほうがプリンよりむしろ)ウマい、タコ焼きはあらへんけど。"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示や!" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示や!"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストをつけんで!" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "アメちゃん付きアカウント" verified-user: "アメちゃん付きアカウント"
disable-animated-mfm: "投稿内のちょろちょろ動いてんのを止める" disable-animated-mfm: "投稿内のちょろちょろ動いてんのを止める"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "閲覧注意?見せたらあかん?そんなん知らんわ、見せろや!" always-show-nsfw: "閲覧注意?見せたらあかん?そんなん知らんわ、見せろや!"
always-mark-nsfw: "わからんからとりあえずメディアは見せたらあかん" always-mark-nsfw: "わからんからとりあえずメディアは見せたらあかん"
show-full-acct: "ユーザー名のホストも出したる" show-full-acct: "ユーザー名のホストも出したる"
show-via: "viaを表示する" show-via: "viaを見せる"
reduce-motion: "UI、動き過ぎや、静かにしてや" reduce-motion: "UI、動き過ぎや、静かにしてや"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OSにもとから入っとる絵文字使う"
do-not-use-in-production: '開発ビルドや。本番環境で使わんといて!知らんで!' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "開発ビルドや。本番環境で使わんといて!知らんで!"
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "ちゃんとした情報見せてや!" view-on-remote: "ちゃんとした情報見せてや!"
renoted-by: "{user}がRenote"
error: error:
title: '問題が起こったわ' title: "問題が起こったわ"
retry: 'もっぺん' retry: "もっぺん"
reversi: reversi:
drawn: "おあいこ" drawn: "おあいこ"
my-turn: "あんさんのターンや" my-turn: "あんさんのターンや"
opponent-turn: "相手のターンや" opponent-turn: "相手のターンや"
turn-of: "{name}のターンです" turn-of: "{name}のターン"
past-turn-of: "{name}のターン" past-turn-of: "{name}のターン"
won: "{name}の勝ち" won: "{name}の勝ちやで!"
black: "黒" black: "黒"
white: "白" white: "白"
total: "合計" total: "合計"
@ -153,14 +163,14 @@ common:
polls: "アンケート" polls: "アンケート"
post-form: "投稿フォーム" post-form: "投稿フォーム"
server: "サーバー情報" server: "サーバー情報"
donation: "寄付のお願い"
nav: "ナビゲーション" nav: "ナビゲーション"
tips: "ヒント" tips: "ヒント"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
dev: "アプリの作成あかんかったわ。もっぺんやってみて。" dev: "アプリの作成あかんかったわ。もっぺんやってみて。"
ai-chan-kawaii: "藍ちゃめっさべっぴんさんや" ai-chan-kawaii: "藍ちゃめっさべっぴんさんや"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "あんたのアカウントに<i>{name}</i>がアクセスしようとしてるで?ええか?"
permission-ask: "このアプリは次の権限を要求してんで:" permission-ask: "このアプリは次の権限を要求してんで:"
account-read: "アカウントの情報を見させてもらうで。" account-read: "アカウントの情報を見させてもらうで。"
account-write: "アカウントの情報を操作させてもらうで。" account-write: "アカウントの情報を操作させてもらうで。"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "見せたらあかん" sensitive: "見せたらあかん"
click-to-show: "押してみ、見せたるわ" click-to-show: "押してみ、見せたるわ"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "ナイトゲームちゃう時のテーマどないする?" light-theme: "ナイトゲームちゃう時のテーマどないする?"
dark-theme: "ナイトゲームの時のテーマどないする?" dark-theme: "ナイトゲームの時のテーマどないする?"
light-themes: "デイゲーム" light-themes: "デイゲーム"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "この色が背景や!" base-theme: "この色が背景や!"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "試してみる" preview-created-theme: "試してみる"
invalid-theme: "このテーマあかんわ、なんか間違うとる" invalid-theme: "このテーマあかんわ、なんか間違うとる"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "もうええわ" hide: "もうええわ"
show: "見たいやろ?" show: "見たいやろ?"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "ユーザーを探す" search-user: "ユーザーを探す"
you: "あんさん" you: "あんさん"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "開発者" develop: "開発者"
feedback: "フィードバック" feedback: "フィードバック"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "もっと" detail: "もっと"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "お気に入り" favorite: "お気に入り"
unfavorite: "お気に入りやめる" unfavorite: "お気に入りやめる"
@ -348,7 +365,7 @@ common/views/components/emoji-picker.vue:
custom-emoji: "カスタム絵文字" custom-emoji: "カスタム絵文字"
people: "人" people: "人"
animals-and-nature: "動物&自然" animals-and-nature: "動物&自然"
food-and-drink: "食べ物&飲み" food-and-drink: "食いもん&飲みもん"
activity: "アクティビティ" activity: "アクティビティ"
travel-and-places: "場所" travel-and-places: "場所"
objects: "物" objects: "物"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "それか" or: "それか"
signin-with-twitter: "Twitterでサインイン" signin-with-twitter: "Twitterでサインイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "なんかログインできんかったわ。ユーザー名とパスワードとかを確認してや。" login-failed: "なんかログインできんかったわ。ユーザー名とパスワードとかを確認してや。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,20 +412,32 @@ common/views/components/stream-indicator.vue:
connecting: "つないどるで" connecting: "つないどるで"
reconnecting: "つなぎ直すで" reconnecting: "つなぎ直すで"
connected: "つないだわ" connected: "つないだわ"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "あんさんがつことるTwitterアカウントをMisskeyアカウントに接続しとくと、あんさんのプロフィールにTwitterアカウント情報が表示されるようになったり、Twitterをつこた便利なサインインが使えるようになったりすんで。" title: "通知"
connected-to: "次のTwitterアカウントに接続されとるで" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "詳細..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "つなぎ直す" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Twitterと接続する" auto-watch: "投稿の自動ウォッチ"
disconnect: "さいならする" auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "つなげる"
disconnect: "接続をほかす"
connected-to: "このアカウントと繋がっとるで"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "あんたがつことるTwitterアカウントをMisskeyアカウントに接続しくと、あんさんのプロフィールにTwitterアカウント情報が表示されるようになったり、Twitterを使うた便利なサインインが使えるようになったりすんで。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されとるで"
detail: "詳細..." detail: "くわしく..."
reconnect: "再接続する" reconnect: "つなぎ直す"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "接続をほかす"
common/views/components/discord-setting.vue:
description: "あんたがつことるDiscordアカウントをMisskeyアカウントに接続しとくと、あんさんのプロフィールにDiscordアカウント情報が表示されるようになったり、Discordを使うた便利なサインインが使えるようになったりすんで。"
connected-to: "次のDiscordアカウントに接続されとるで"
detail: "くわしく..."
reconnect: "つなぎ直す"
connect: "Discordと接続する"
disconnect: "接続をほかす"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "待っとる" waiting: "待っとる"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワー以外に見せんとって" followers-desc: "自分のフォロワー以外に見せんとって"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "今から言うユーザー以外に見せんとってや" specified-desc: "今から言うユーザー以外に見せんとってや"
private: "公開" local-public: "公開 (ローカルだけ)"
local-public-desc: "リモートには見せへん"
local-home: "ホーム (ローカルだけ)"
local-followers: "フォロワー (ローカルだけ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "流行は自分で作るんや" empty: "流行は自分で作るんや"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語選んでや"
recommended: "これええで"
auto: "勝手にやる"
specify-language: "言語選びや"
info: "ページもっぺん読み込んだら反映したるで。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotやで" is-bot: "このアカウントはBotやで"
is-locked: "他人のフォローは許可してからや!" is-locked: "他人のフォローは許可してからや!"
careful-bot: "Botからのフォローだけは許可制や" careful-bot: "Botからのフォローだけは許可制や"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシーってなんや?オカンの年齢か?" privacy: "プライバシーってなんや?オカンの年齢か?"
save: "保存" save: "保存"
saved: "プロフィールを保存したで" saved: "プロフィールを保存したで"
uploading: "アップロードしとります" uploading: "アップロードしとります"
upload-failed: "これアップロードでけへんわ" upload-failed: "これアップロードでけへんわ"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "このメールアドレスOKや"
email-not-verified: "メールアドレスが確認されとらん。メールボックスもっぺん見てくれへん?"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "見てみるわ…" fetching: "見てみるわ…"
no-broadcasts: "お知らせはあらへんで" no-broadcasts: "お知らせはあらへんで"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "今日:" today: "今日:"
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "寄付のお願い"
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かるんや。Misskeyは広告を掲載したりせんから、収入を皆様からの寄付に頼ってますねん。もし興味があるなら、{}までご連絡よろしゅう頼んます。ご協力おおきに。"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "フォトストリーム" title: "フォトストリーム"
no-photos: "写真はあらへんで" no-photos: "写真はあらへんで"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができんで" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができんで"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示してんねん" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示してんねん"
tips-line21: "APIをつこてbotの開発なども行えるで" tips-line21: "APIをつこてbotの開発なども行えるで"
tips-line23: "ウチのタコちゃんかわええやろ…今の突っ込むところや!" tips-line23: "藍かわいいよ藍"
tips-line24: "Misskeyは2014年にサービスを開始したんよ" tips-line24: "Misskeyは2014年にサービスを開始したんよ"
tips-line25: "対応ブラウザやったらMisskeyを開いとらんでも通知を受け取れんで" tips-line25: "対応ブラウザやったらMisskeyを開いとらんでも通知を受け取れんで"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォローしとる" following: "フォローしとる"
@ -524,7 +576,7 @@ desktop/views/components/activity.vue:
title: "アクティビティ" title: "アクティビティ"
toggle: "表示変える" toggle: "表示変える"
desktop/views/components/calendar.vue: desktop/views/components/calendar.vue:
title: "{year}年 {month}月" title: "{year}年 {month} 月"
prev: "前の月" prev: "前の月"
next: "次の月" next: "次の月"
go: "クリックしてタイムリープ" go: "クリックしてタイムリープ"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "この投稿は見せられへんわ" private: "この投稿は見せられへんわ"
deleted: "この投稿なんか無くなってもうたわ" deleted: "この投稿なんか無くなってもうたわ"
reposted-by: "{}がRenote"
location: "ここおるで:" location: "ここおるで:"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返す" reply: "返す"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "もっと" detail: "もっと"
private: "この投稿は見せられへんわ" private: "この投稿は見せられへんわ"
deleted: "この投稿なんか無くなってもうたわ" deleted: "この投稿なんか無くなってもうたわ"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "アンケートを作成" create-poll: "アンケートを作成"
text-remain: "残り{}文字" text-remain: "残り{}文字"
recent-tags: "最近のタグ" recent-tags: "最近のタグ"
local-only-message: "この投稿はローカルだけ公開されるで"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "公開範囲" visibility: "公開範囲"
geolocation-alert: "あんさんのつことる端末は位置情報に対応しとらんみたいやわ、知らんけど。" geolocation-alert: "あんさんのつことる端末は位置情報に対応しとらんみたいやわ、知らんけど。"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "取ってくる……" quote: "取ってくる……"
cancel: "やめとくわ" cancel: "やめとくわ"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "やっとります..." reposting: "やっとります..."
success: "Renoteしたで" success: "Renoteしたで"
failure: "Renoteでけへん" failure: "Renoteでけへん"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "プロフィール" profile: "プロフィール"
notification: "通知" notification: "通知"
apps: "アプリ" apps: "アプリ"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "セキュリティ" security: "セキュリティ"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "もとからの公開範囲" default-note-visibility: "もとからの公開範囲"
remember-note-visibility: "投稿の公開範囲おぼえといて" remember-note-visibility: "投稿の公開範囲おぼえといて"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q?{{query}}"
auto-popout: "ウィンドウの自動ポップアウト" auto-popout: "ウィンドウの自動ポップアウト"
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトすんで。この設定はブラウザに記憶されんで。" auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトすんで。この設定はブラウザに記憶されんで。"
advanced: "もっと設定" advanced: "もっと設定"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "アイコンもタコ焼きも丸いやんな?" circle-icons: "アイコンもタコ焼きも丸いやんな?"
contrasted-acct: "ユーザー名ようわからんし見やすしといて" contrasted-acct: "ユーザー名ようわからんし見やすしといて"
post-form-on-timeline: "タイムラインの上の方で投稿できるようにせえへん?" post-form-on-timeline: "タイムラインの上の方で投稿できるようにせえへん?"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示すんで"
show-clock-on-header: "右上をカリヨン広場にする(時計表示)" show-clock-on-header: "右上をカリヨン広場にする(時計表示)"
show-reply-target: "どこにリプライするんや見せて" show-reply-target: "どこにリプライするんや見せて"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "わしのRenoteもタイムライン載せてくれや" show-renoted-my-notes: "わしのRenoteもタイムライン載せてくれや"
show-local-renotes: "ローカル投稿のRenoteも見たいんや" show-local-renotes: "ローカル投稿のRenoteも見たいんや"
show-maps: "地図勝手にバァーって開いてくれ" show-maps: "地図勝手にバァーって開いてくれ"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿も表示しっぱなしにする"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "真ん中" deck-column-align-center: "真ん中"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンド鳴らす" enable-sounds: "サウンド鳴らす"
enable-sounds-desc: "投稿やメッセージもろたとき、音鳴らしたるわ。大丈夫や、この設定はブラウザが覚えてくれとる。" enable-sounds-desc: "投稿やメッセージもろたとき、音鳴らしたるわ。大丈夫や、この設定はブラウザが覚えてくれとる。"
volume: "ボリューム" volume: "ボリューム"
test: "テスト" test: "テスト"
language: "言語"
pick-language: "言語選んでや"
recommended: "おすすめ"
auto: "自動"
specify-language: "言語選んでくれ"
language-desc: "変更はページの再度読み込み後に反映されんで。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "お掃除" clean-cache: "お掃除"
cache-warn: "お掃除するとな、ブラウザが覚えてくれとるアカウントのあれこれや書きかけの投稿・返信・メッセージや設定情報なんかのデータが全部飛んでいくんや。これやったらページ再読込しといてな。" cache-warn: "お掃除するとな、ブラウザが覚えてくれとるアカウントのあれこれや書きかけの投稿・返信・メッセージや設定情報なんかのデータが全部飛んでいくんや。これやったらページ再読込しといてな。"
cache-cleared: "キャッシュお掃除したで" cache-cleared: "キャッシュお掃除したで"
cache-cleared-desc: "もっぺんページ読みこみ直してくれや" cache-cleared-desc: "もっぺんページ読みこみ直してくれや"
auto-watch: "投稿勝手にウォッチしといてや"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を勝手に受け取るようにすんで。"
about: "Misskeyってなんや" about: "Misskeyってなんや"
operator: "このサーバー誰のや" operator: "このサーバー誰のや"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "パスワードを入れてや" enter-password: "パスワードを入れてや"
authenticator: "まず、Google Authenticatorとかのをつこてるデバイスにインストールしてや:" authenticator: "まず、Google Authenticatorとかのをつこてるデバイスにインストールしてや:"
howtoinstall: "インストール方法はここやで" howtoinstall: "インストール方法はここやで"
token: "トークン"
scan: "んで、ここに出とるQRコードをスキャンしてな:" scan: "んで、ここに出とるQRコードをスキャンしてな:"
done: "最後にデバイスに表示されとるトークンを入力してな:" done: "最後にデバイスに表示されとるトークンを入力してな:"
submit: "送信" submit: "送信"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入れてや" enter-password: "パスワードを入れてや"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは勝手に付くで。"
send: '送る' send: "送る"
sending: '応答待っとる' sending: "応答待っとる"
response: 'こんなん返ってきたわ' response: "こんなん返ってきたわ"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはあらへんで" no-apps: "連携しているアプリケーションはあらへんで"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -834,8 +891,8 @@ common/views/components/mute-and-block.vue:
no-muted-users: "ミュートしとるユーザーはおらんで" no-muted-users: "ミュートしとるユーザーはおらんで"
no-blocked-users: "ブロックしとるユーザーはおらんで" no-blocked-users: "ブロックしとるユーザーはおらんで"
word-mute: "ワードミュート" word-mute: "ワードミュート"
muted-words: "ミュートされたキーワード" muted-words: "ミュートしとるキーワード"
muted-words-description: "スペースで区切るとAND指定になり、改行で区切るとOR指定になります" muted-words-description: "スペースで区切るとAND指定、改行で区切るとOR指定"
save: "保存" save: "保存"
common/views/components/password-settings.vue: common/views/components/password-settings.vue:
reset: "パスワード変える" reset: "パスワード変える"
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もっぺん入れてや" enter-new-password-again: "もっぺん入れてや"
not-match: "パスワードがおうとらん" not-match: "パスワードがおうとらん"
changed: "パスワード変えたわ" changed: "パスワード変えたわ"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は見せられへんわ" private: "この投稿は見せられへんわ"
deleted: "この投稿なんか無くなってもうたわ" deleted: "この投稿なんか無くなってもうたわ"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "知っといてや" announcements: "知っといてや"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,43 +994,71 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できるで。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
maintainer-name: "管理者名" maintainer-name: "管理者名"
maintainer-email: "管理者の連絡先" maintainer-email: "管理者の連絡先"
drive-config: "ドライブの設定" drive-config: "ドライブの設定"
cache-remote-files: "リモートのファイルをキャッシュする" cache-remote-files: "リモートのファイルをキャッシュする"
cache-remote-files-desc: "この設定を無効にすると、リモートファイルをキャッシュせず直リンクるようになります。そのためサーバーのストレージを節約できますが、プライバシー設定で直リンクを無効にしているユーザーはファイルが見えなくなったり、サムネイルが生成されないので通信量が増加します。通常はこの設定をオンにしておくことをおすすめします。" cache-remote-files-desc: "この設定を無効にすると、リモートファイルをこっちで保管せずに直接リンクるようになるで。サーバーのストレージは軽くやろうけど、プライバシー設定で直リンクを向こうにしとるユーザーはファイルが見れへんし、サムネイルが無いから通信量が増えたりするから、普通はオンにしといてな。"
local-drive-capacity-mb: "ローカルユーザーひとりあたりのドライブ容量" local-drive-capacity-mb: "ローカルユーザーひとりあたりのドライブ容量"
remote-drive-capacity-mb: "リモートユーザーひとりあたりのドライブ容量" remote-drive-capacity-mb: "リモートユーザーひとりあたりのドライブ容量"
mb: "メガバイト単位" mb: "メガバイト単位"
recaptcha-config: "reCAPTCHAの設定" recaptcha-config: "reCAPTCHAの設定"
recaptcha-info: "reCAPTCHAを有効にする場合、reCAPTCHAトークンを取得する必要があります。https://www.google.com/recaptcha/intro/ にアクセスしてトークンを取得してください。" recaptcha-info: "reCAPTCHAを有効にするにはreCAPTCHAトークンが要るで。https://www.google.com/recaptcha/intro/ にアクセスしてトークンを取得して。"
enable-recaptcha: "reCAPTCHAを有効にする" enable-recaptcha: "reCAPTCHAを有効にする"
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定してや。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定してや。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を使えるようにする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定してや。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、代わりにフォローしてくれるアカウント。例えば、551に豚まんが無いときやったり、ユーザーがリモートユーザーをアカウントに入れたとき、リストに入れられたユーザーが誰からもフォローされてないと寂しいやん。寂しいし、アクティビティも配達されへんから、プロキシアカウントがフォローしてくれるで。ええやつやん…"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
proxy-account-username-desc: "プロキシとして使用するアカウントのユーザー名を指定してください。" proxy-account-username-desc: "プロキシとして使用するアカウントのユーザー名を指定して"
proxy-account-warn: "アカウントは自動で作られないため、そのユーザー名のアカウントを予め作成しておく必要があります。" proxy-account-warn: "アカウント作るんはあんたがやってや。あんたのおかんもMisskeyもやってくれへんで。"
max-note-text-length: "投稿の最大文字数" max-note-text-length: "投稿の最大文字数"
disable-registration: "ユーザー登録の受付を停止する" disable-registration: "ユーザー登録の受付を止める"
disable-local-timeline: "ローカルタイムラインを無効にする" disable-local-timeline: "ローカルタイムラインを使えんようにする"
invite: "招待" invite: "来てや"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存したで!"
user-recommendation-config: "このユーザーええで"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを使えるようにする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使うで。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つからへん!"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password} 」やで"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1093,14 +1223,15 @@ desktop/views/pages/user/user.profile.vue:
muted: "ミュートしとるで" muted: "ミュートしとるで"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロックする" block: "ブロックする"
unblock: "ブロック解除" unblock: "ブロックやめたる"
block-confirm: "このユーザーをブロックしますか?" block-confirm: "このユーザーをブロックしてええか?"
push-to-a-list: "リストに追加" push-to-a-list: "リストに追加"
list-pushed: "{user}を{list}に追加したで。" list-pushed: "{user}を{list}に追加したで。"
desktop/views/pages/user/user.header.vue: desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotや" is-bot: "このアカウントはBotや"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿しとらんようや。" empty: "このユーザーはまだ何も投稿しとらんようや。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "メッセージ" title: "メッセージ"
@ -1170,11 +1302,11 @@ mobile/views/components/media-video.vue:
sensitive: "ちょっと見せられへんわ" sensitive: "ちょっと見せられへんわ"
click-to-show: "押してみ、見せたるわ" click-to-show: "押してみ、見せたるわ"
common/views/components/follow-button.vue: common/views/components/follow-button.vue:
following: "フォロー" following: "フォローしとる"
follow: "フォロー" follow: "フォロー"
request-pending: "フォロー許可待ち" request-pending: "フォロー許してくれるん待っとる"
follow-processing: "フォロー処理" follow-processing: "フォロー処理やっとる‥"
follow-request: "フォロー申請" follow-request: "フォローさせてや!言うてみる"
mobile/views/components/friends-maker.vue: mobile/views/components/friends-maker.vue:
title: "おもろそうやな" title: "おもろそうやな"
empty: "おすすめのユーザーはおらん。" empty: "おすすめのユーザーはおらん。"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっとあるやろ!" refresh: "もっとあるやろ!"
close: "さいなら" close: "さいなら"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は見せられへんわ" private: "この投稿は見せられへんわ"
deleted: "この投稿なんか無くなってもうたわ" deleted: "この投稿なんか無くなってもうたわ"
location: "ここおるで:" location: "ここおるで:"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返す" reply: "返す"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は見せられへんわ" private: "この投稿は見せられへんわ"
deleted: "この投稿なんか無くなってもうたわ" deleted: "この投稿なんか無くなってもうたわ"
location: "ここおるで:" location: "ここおるで:"
@ -1262,7 +1392,7 @@ mobile/views/pages/home.vue:
mentions: "あんた宛て" mentions: "あんた宛て"
messages: "メッセージ" messages: "メッセージ"
mobile/views/pages/tag.vue: mobile/views/pages/tag.vue:
no-posts-found: "ハッシュタグ「{q}」が付けられた投稿は見つかりませんでした。" no-posts-found: "ハッシュタグ「{q}」が付けられた投稿はあらへんかった。"
mobile/views/pages/welcome.vue: mobile/views/pages/welcome.vue:
signup: "新規登録" signup: "新規登録"
mobile/views/pages/widgets.vue: mobile/views/pages/widgets.vue:
@ -1289,16 +1419,11 @@ mobile/views/pages/games/reversi.vue:
reversi: "リバーシ" reversi: "リバーシ"
mobile/views/pages/search.vue: mobile/views/pages/search.vue:
search: "探す" search: "探す"
not-found: "「{q}」に関する投稿は見つかりませんでした。" not-found: "ワイは「{q}」なんて投稿知らんわ、無いんちゃう?知らんけど。"
mobile/views/pages/selectdrive.vue: mobile/views/pages/selectdrive.vue:
select-file: "ファイル選んでや" select-file: "ファイル選んでや"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "あんたは橋の下で拾った{}や!" signed-in-as: "あんたは橋の下で拾った{}や!"
lang: "言語"
lang-tip: "ページもっぺん読み込んだら反映したるで。"
recommended: "これええで"
auto: "勝手にやる"
specify-language: "言語選びや"
design: "見た感じ" design: "見た感じ"
dark-mode: "ナイトゲームや!" dark-mode: "ナイトゲームや!"
i-am-under-limited-internet: "電波と阪神がザコいんや" i-am-under-limited-internet: "電波と阪神がザコいんや"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知どこ見せる?" notification-position: "通知どこ見せる?"
notification-position-bottom: "ミナミの方" notification-position-bottom: "ミナミの方"
notification-position-top: "キタの方" notification-position-top: "キタの方"
theme: "テーマ"
behavior: "動き" behavior: "動き"
fetch-on-scroll: "スクロールしたらもっと見せてや" fetch-on-scroll: "スクロールしたらもっと見せてや"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "もとからの公開範囲" default-note-visibility: "もとからの公開範囲"
remember-note-visibility: "投稿の公開範囲おぼえといて" remember-note-visibility: "投稿の公開範囲おぼえといて"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q?{{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグなんて要らんわ" disable-via-mobile: "「モバイルからの投稿」フラグなんて要らんわ"
load-raw-images: "添付された画像もべっぴんさんのままにしといてな" load-raw-images: "添付された画像もべっぴんさんのままにしといてな"
load-remote-media: "東京とか、リモートサーバーのメディアも見せてや" load-remote-media: "東京とか、リモートサーバーのメディアも見せてや"
twitter: "鳥さんとも連携や!"
twitter-connect: "鳥さん邪魔すんで"
twitter-reconnect: "もっぺん繋ぎ直すで"
twitter-disconnect: "邪魔するんやったら帰って"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "あんたのMisskeyいつのや" update: "あんたのMisskeyいつのや"
version: "バージョン:" version: "バージョン:"
latest-version: "いっちゃん新しいやつ:" latest-version: "いっちゃん新しいやつ:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "さいなら" signout: "さいなら"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンド鳴らす" enable-sounds: "サウンド鳴らす"
mark-as-read-all-unread-notes: "全部もう読んだわ"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "フォローされとるで" follows-you: "フォローされとるで"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "こんなやつ" overview: "こんなやつ"
timeline: "タイムライン" timeline: "タイムライン"
media: "メディア" media: "メディア"
is-suspended: "このユーザーはあかんわ。凍結されとる。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュートやめたる"
block: "ブロック" block: "ブロック"
unblock: "ブロックやめたる" unblock: "ブロックやめたる"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに入れたる"
select-list: "リスト選んでや"
list-pushed: "{user}を{list}に追加したで"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "最近儲かりまっか?" recent-notes: "最近儲かりまっか?"
images: "画像" images: "画像"
@ -1385,32 +1504,33 @@ deck:
hybrid: "ソーシャル" hybrid: "ソーシャル"
hashtag: "ハッシュタグ" hashtag: "ハッシュタグ"
global: "グローバル" global: "グローバル"
mentions: "あた宛て" mentions: "あた宛て"
direct: "ダイレクト投稿" direct: "ダイレクト投稿"
notifications: "通知" notifications: "通知"
list: "リスト" list: "リスト"
swap-left: "左に移動" swap-left: "左に移動や!"
swap-right: "右に移動" swap-right: "右に移動や!"
swap-up: "上に移動" swap-up: "上に移動や!"
swap-down: "下に移動" swap-down: "下に移動や!"
remove: "カラムを削除" remove: "カラムにさいなら"
add-column: "カラムを追加" add-column: "カラム増やす"
rename: "名前を変" rename: "名前を変えるで"
stack-left: "左に重ね" stack-left: "左に重ねんで!"
pop-right: "右に出す" pop-right: "右に出すで!"
deck/deck.tl-column.vue: deck/deck.tl-column.vue:
is-media-only: "メディア投稿のみ" is-media-only: "メディア投稿だけや"
is-media-view: "メディアビュー" is-media-view: "メディアビュー"
edit: "オプション" edit: "オプション"
deck/deck.user-column.vue: deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"
pinned-notes: "ピン留めされた投稿" pinned-notes: "ピン留めしはった投稿"
push-to-a-list: "リストに追加" push-to-a-list: "リストに入れたる"
docs: docs:
edit-this-page-on-github: "間違いや改善点を見つけましたか?" edit-this-page-on-github: "間違いや改善点を見つけましたか?"
edit-this-page-on-github-link: "このページをGitHubで編集" edit-this-page-on-github-link: "このページをGitHubで編集"

File diff suppressed because it is too large Load Diff

View File

@ -26,6 +26,7 @@ common:
close: "閉じる" close: "閉じる"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
b: "何かありましたか?" b: "何かありましたか?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "Je sleutel is gegenereerd; je wordt nu uitgelogd." my-token-regenerated: "Je sleutel is gegenereerd; je wordt nu uitgelogd."
i-like-sushi: "私は(プリンよりむしろ)寿司が好き" i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "公式アカウント" verified-user: "公式アカウント"
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする" disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -116,13 +120,19 @@ common:
reduce-motion: "UIの動きを減らす" reduce-motion: "UIの動きを減らす"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
do-not-use-in-production: 'これは開発ビルドです。本番環境で使用しないでください。' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'やり直す' retry: "やり直す"
reversi: reversi:
drawn: "引き分け" drawn: "引き分け"
my-turn: "あなたのターンです" my-turn: "あなたのターンです"
@ -153,12 +163,12 @@ common:
polls: "アンケート" polls: "アンケート"
post-form: "投稿フォーム" post-form: "投稿フォーム"
server: "サーバー情報" server: "サーバー情報"
donation: "寄付のお願い"
nav: "ナビゲーション" nav: "ナビゲーション"
tips: "ヒント" tips: "ヒント"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "アプリの作成に失敗しました。再度お試しください。"
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
permission-ask: "このアプリは次の権限を要求しています:" permission-ask: "このアプリは次の権限を要求しています:"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "閲覧注意" sensitive: "閲覧注意"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "Gebruiker zoeken" search-user: "Gebruiker zoeken"
you: "Jij" you: "Jij"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "Ontwikkelaars" develop: "Ontwikkelaars"
feedback: "Feedback" feedback: "Feedback"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "詳細" detail: "詳細"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "Deze notitie toevoegen aan favorieten" favorite: "Deze notitie toevoegen aan favorieten"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "または" or: "または"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "Bezig met verbinden" connecting: "Bezig met verbinden"
reconnecting: "Bezig met herverbinden" reconnecting: "Bezig met herverbinden"
connected: "Verbonden" connected: "Verbonden"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "Als je je Twitter-account verbindt met je Misskey-account, dan kun je je Twitter-accountinformatie terugzien op je profiel en kun je inloggen met Twitter." title: "通知"
connected-to: "Je bent verbonden met dit Twitter-account" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "Details..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "Opnieuw verbinden" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Koppel je Twitter-account" auto-watch: "投稿の自動ウォッチ"
disconnect: "Verbinding verbreken" auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "Bezig met wachten" waiting: "Bezig met wachten"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "Bezig met ophalen" fetching: "Bezig met ophalen"
no-broadcasts: "Geen uitzendingen" no-broadcasts: "Geen uitzendingen"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "今日:" today: "今日:"
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "Donatie"
text: "Om Misskey draaiende te houden, geven we geld uit aan onze domeinnaam, servers, enz. We maken hier geen winst op, dus we zouden het fijn vinden als je een donatie wilt doen. Neem in dat geval contact op via {}. Bedankt voor je bijdrage!"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "Fotostream" title: "Fotostream"
no-photos: "Geen foto's" no-photos: "Geen foto's"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "(dit bericht is privé)" private: "(dit bericht is privé)"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
reposted-by: "{}がRenote"
location: "Locatie" location: "Locatie"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -664,10 +716,11 @@ desktop/views/components/post-form.vue:
attach-media-from-local: "Media bijvoegen van je computer" attach-media-from-local: "Media bijvoegen van je computer"
attach-media-from-drive: "Media bijvoegen uit je Drive" attach-media-from-drive: "Media bijvoegen uit je Drive"
attach-cancel: "Bijlage annuleren" attach-cancel: "Bijlage annuleren"
insert-a-kao: "v(‘ω’)v" insert-a-kao: "v('ω')v"
create-poll: "Peiling creëren" create-poll: "Peiling creëren"
text-remain: "{} resterende tekens" text-remain: "{} resterende tekens"
recent-tags: "最近" recent-tags: "最近"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "公開範囲" visibility: "公開範囲"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "Citeren..." quote: "Citeren..."
cancel: "Annuleren" cancel: "Annuleren"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "Bezig met herplaatsen..." reposting: "Bezig met herplaatsen..."
success: "Hergeplaatst!" success: "Hergeplaatst!"
failure: "Renote mislukt" failure: "Renote mislukt"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "Profiel" profile: "Profiel"
notification: "Melding" notification: "Melding"
apps: "Apps" apps: "Apps"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "Beveiliging" security: "Beveiliging"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "Venster automatisch uitvouwen" auto-popout: "Venster automatisch uitvouwen"
auto-popout-desc: "Venster uitvouwen, indien mogelijk. Deze instelling wordt opgeslagen in je browser." auto-popout-desc: "Venster uitvouwen, indien mogelijk. Deze instelling wordt opgeslagen in je browser."
advanced: "Geavanceerde instellingen" advanced: "Geavanceerde instellingen"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "Ronde pictogrammen gebruiken" circle-icons: "Ronde pictogrammen gebruiken"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "Berichtformulier boven de tijdlijn tonen" post-form-on-timeline: "Berichtformulier boven de tijdlijn tonen"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "Antwoord-knop tonen" show-reply-target: "Antwoord-knop tonen"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "Mijn gerenote bericht tonen op de tijdlijn" show-renoted-my-notes: "Mijn gerenote bericht tonen op de tijdlijn"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "Kaart tonen" show-maps: "Kaart tonen"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "Geluid" sound: "Geluid"
enable-sounds: "Geluid inschakelen" enable-sounds: "Geluid inschakelen"
enable-sounds-desc: "Een geluid afspelen bij het ontvangen van een bericht. Deze instelling wordt opgeslagen in je browser." enable-sounds-desc: "Een geluid afspelen bij het ontvangen van een bericht. Deze instelling wordt opgeslagen in je browser."
volume: "Volume" volume: "Volume"
test: "Testen" test: "Testen"
language: "Taal"
pick-language: "Selecteer een taal"
recommended: "Aanbevolen"
auto: "Automatisch"
specify-language: "Taal opgeven"
language-desc: "Je moet de pagina herladen om de wijzigingen toe te passen."
cache: "Cache" cache: "Cache"
clean-cache: "Opschonen" clean-cache: "Opschonen"
cache-warn: "De cache van je accountinformatie/berichten/antwoorden/instellingen wordt verwijderd. Je moet de pagina herladen na het opschonen." cache-warn: "De cache van je accountinformatie/berichten/antwoorden/instellingen wordt verwijderd. Je moet de pagina herladen na het opschonen."
cache-cleared: "Cache opgeschoond" cache-cleared: "Cache opgeschoond"
cache-cleared-desc: "Herlaad de pagina." cache-cleared-desc: "Herlaad de pagina."
auto-watch: "Automatisch volgen"
auto-watch-desc: "Automatisch meldingen ontvangen over het bericht/antwoord."
about: "Over Misskey" about: "Over Misskey"
operator: "De administrator van deze instantie" operator: "De administrator van deze instantie"
update: "Misskey-update" update: "Misskey-update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "Voer het wachtwoord in" enter-password: "Voer het wachtwoord in"
authenticator: "Installeer eerst Google Authenticator op je apparaat:" authenticator: "Installeer eerst Google Authenticator op je apparaat:"
howtoinstall: "Hoe installeer ik dit?" howtoinstall: "Hoe installeer ik dit?"
token: "トークン"
scan: "Scan daarna de QR-code:" scan: "Scan daarna de QR-code:"
done: "Voer de op je apparaat getoonde sleutel in:" done: "Voer de op je apparaat getoonde sleutel in:"
submit: "Versturen" submit: "Versturen"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "Peilingen" poll: "Peilingen"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "Taakbeheer" title: "Taakbeheer"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "Berichten" default: "Berichten"
with-replies: "Berichten en antwoorden" with-replies: "Berichten en antwoorden"
with-media: "Media" with-media: "Media"
my-posts: "私の投稿"
empty: "Deze gebruiker heeft nog niks geplaatst." empty: "Deze gebruiker heeft nog niks geplaatst."
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "Gesprekken" title: "Gesprekken"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっと見る" refresh: "もっと見る"
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "Renote door {}"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "Beantwoorden" reply: "Beantwoorden"
reaction: "Reactie" reaction: "Reactie"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "Kies een bestand" select-file: "Kies een bestand"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "Ingelogd als {}" signed-in-as: "Ingelogd als {}"
lang: "Taal"
lang-tip: "Je moet de pagina herladen om de wijzigingen toe te passen."
recommended: "Aanbevolen"
auto: "Automatisch"
specify-language: "Taal opgeven"
design: "Ontwerp en weergave" design: "Ontwerp en weergave"
dark-mode: "Donkere modus" dark-mode: "Donkere modus"
i-am-under-limited-internet: "Ik heb beperkt internet" i-am-under-limited-internet: "Ik heb beperkt internet"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "Gedrag" behavior: "Gedrag"
fetch-on-scroll: "Ophalen bij scrollen" fetch-on-scroll: "Ophalen bij scrollen"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "Zonder 'mobiele berichten'" disable-via-mobile: "Zonder 'mobiele berichten'"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter-integratie"
twitter-connect: "Mijn Twitter-account verbinden"
twitter-reconnect: "Opnieuw verbinden"
twitter-disconnect: "Verbinding verbreken"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey-update" update: "Misskey-update"
version: "Huidige versie:" version: "Huidige versie:"
latest-version: "Nieuwste versie:" latest-version: "Nieuwste versie:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "Uitloggen" signout: "Uitloggen"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "Volgt jou" follows-you: "Volgt jou"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "Overzicht" overview: "Overzicht"
timeline: "Tijdlijn" timeline: "Tijdlijn"
media: "Media" media: "Media"
is-suspended: "Dit account is geschorst."
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "Recente notities" recent-notes: "Recente notities"
images: "Afbeeldingen" images: "Afbeeldingen"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

View File

@ -1,6 +1,6 @@
--- ---
meta: meta:
lang: "norsk" lang: "Norsk Bokmål"
divider: "" divider: ""
common: common:
misskey: "En ⭐ av fediverse" misskey: "En ⭐ av fediverse"
@ -26,6 +26,7 @@ common:
close: "Lukk" close: "Lukk"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。" do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。"
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "Skjønner!" got-it: "Skjønner!"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "カスタマイズのヒント"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "Privat" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
b: "何かありましたか?" b: "何かありましたか?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "Ditt synbol har blitt generert. Du vil nå bli utlogget." my-token-regenerated: "Ditt synbol har blitt generert. Du vil nå bli utlogget."
i-like-sushi: "私は(プリンよりむしろ)寿司が好き" i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "公式アカウント" verified-user: "公式アカウント"
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする" disable-animated-mfm: "投稿内の動きのあるテキストを無効にする"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -116,13 +120,19 @@ common:
reduce-motion: "UIの動きを減らす" reduce-motion: "UIの動きを減らす"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
do-not-use-in-production: 'これは開発ビルドです。本番環境で使用しないでください。' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'やり直す' retry: "やり直す"
reversi: reversi:
drawn: "引き分け" drawn: "引き分け"
my-turn: "あなたのターンです" my-turn: "あなたのターンです"
@ -153,12 +163,12 @@ common:
polls: "アンケート" polls: "アンケート"
post-form: "投稿フォーム" post-form: "投稿フォーム"
server: "サーバー情報" server: "サーバー情報"
donation: "寄付のお願い"
nav: "ナビゲーション" nav: "ナビゲーション"
tips: "Tips" tips: "Tips"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "アプリの作成に失敗しました。再度お試しください。"
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
permission-ask: "このアプリは次の権限を要求しています:" permission-ask: "このアプリは次の権限を要求しています:"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "Sensitivt innhold" sensitive: "Sensitivt innhold"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Mørk" base-theme-dark: "Mørk"
find-more-theme: "その他のテーマを入手"
theme-name: "Tema navn" theme-name: "Tema navn"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "Skjul" hide: "Skjul"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "ユーザーを探す" search-user: "ユーザーを探す"
you: "Du" you: "Du"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "Utviklere" develop: "Utviklere"
feedback: "フィードバック" feedback: "フィードバック"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "Detaljer" detail: "Detaljer"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "Merket som favoritt" favorite: "Merket som favoritt"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "Eller" or: "Eller"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "Tilkobler" connecting: "Tilkobler"
reconnecting: "Kobler til på nytt" reconnecting: "Kobler til på nytt"
connected: "Tilkoblet" connected: "Tilkoblet"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。" title: "通知"
connected-to: "次のTwitterアカウントに接続されています" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "Detaljer..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "Koble til på nytt" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Twitterと接続する" auto-watch: "投稿の自動ウォッチ"
disconnect: "Koble fra" auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "Venter" waiting: "Venter"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "Direkte" specified: "Direkte"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "Privat" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "Henter" fetching: "Henter"
no-broadcasts: "お知らせはありません" no-broadcasts: "お知らせはありません"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "I dag:" today: "I dag:"
this-month: "Denne måneden:" this-month: "Denne måneden:"
this-year: "Dette året:" this-year: "Dette året:"
common/views/widgets/donation.vue:
title: "寄付のお願い"
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "フォトストリーム" title: "フォトストリーム"
no-photos: "写真はありません" no-photos: "写真はありません"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
reposted-by: "{}がRenote"
location: "Lokasjon" location: "Lokasjon"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "アンケートを作成" create-poll: "アンケートを作成"
text-remain: "残り{}文字" text-remain: "残り{}文字"
recent-tags: "Nylig" recent-tags: "Nylig"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "Synlighet" visibility: "Synlighet"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "引用する..." quote: "引用する..."
cancel: "Avbryt" cancel: "Avbryt"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "しています..." reposting: "しています..."
success: "Renoteしました" success: "Renoteしました"
failure: "Renoteに失敗しました" failure: "Renoteに失敗しました"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "プロフィール" profile: "プロフィール"
notification: "Notifikasjon" notification: "Notifikasjon"
apps: "Apper" apps: "Apper"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "セキュリティ" security: "セキュリティ"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "ウィンドウの自動ポップアウト" auto-popout: "ウィンドウの自動ポップアウト"
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。" auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
advanced: "Avanserte innstillinger" advanced: "Avanserte innstillinger"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "円形のアイコンを使用" circle-icons: "円形のアイコンを使用"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "リプライ先を表示する"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "マップの自動展開" show-maps: "マップの自動展開"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "Lyd" sound: "Lyd"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。" enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
volume: "Volum" volume: "Volum"
test: "Test" test: "Test"
language: "Språk"
pick-language: "Velg språk"
recommended: "Anbefalt"
auto: "Automatisk"
specify-language: "Angi språk"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "Hurtiglager" cache: "Hurtiglager"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。" cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:" authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
howtoinstall: "インストール方法はこちら" howtoinstall: "インストール方法はこちら"
token: "トークン"
scan: "次に、表示されているQRコードをスキャンします:" scan: "次に、表示されているQRコードをスキャンします:"
done: "お使いのデバイスに表示されているトークンを入力して完了します:" done: "お使いのデバイスに表示されているトークンを入力して完了します:"
submit: "Send" submit: "Send"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "Innlegg" posts: "Innlegg"
following: "Følger" following: "Følger"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "Innlegg" default: "Innlegg"
with-replies: "Innlegg og svar" with-replies: "Innlegg og svar"
with-media: "Media" with-media: "Media"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "Melding" title: "Melding"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "Se mer" refresh: "Se mer"
close: "Lukk" close: "Lukk"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "Lokasjon" location: "Lokasjon"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "Svar" reply: "Svar"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "Lokasjon" location: "Lokasjon"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "Språk"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "Anbefalt"
auto: "Automatisk"
specify-language: "Angi språk"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "Bunn" notification-position-bottom: "Bunn"
notification-position-top: "Topp" notification-position-top: "Topp"
theme: "Utseende"
behavior: "Oppførsel" behavior: "Oppførsel"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Twitterアカウントに接続する"
twitter-reconnect: "Koble til på nytt"
twitter-disconnect: "Koble fra"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey Update" update: "Misskey Update"
version: "バージョン:" version: "バージョン:"
latest-version: "最新のバージョン:" latest-version: "最新のバージョン:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "サインアウト" signout: "サインアウト"
sound: "Lyder" sound: "Lyder"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "フォローされています" follows-you: "フォローされています"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "Oversikt" overview: "Oversikt"
timeline: "タイムライン" timeline: "タイムライン"
media: "Media" media: "Media"
is-suspended: "このユーザーは凍結されています。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "Nylige innlegg" recent-notes: "Nylige innlegg"
images: "Bilder" images: "Bilder"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

File diff suppressed because it is too large Load Diff

View File

@ -26,6 +26,7 @@ common:
close: "Fechar" close: "Fechar"
do-not-copy-paste: "Por favor, não digite ou copie o código aqui. A conta pode ser comprometida." do-not-copy-paste: "Por favor, não digite ou copie o código aqui. A conta pode ser comprometida."
load-more: "もっと読み込む" load-more: "もっと読み込む"
enter-password: "パスワードを入力してください"
got-it: "Entendi!" got-it: "Entendi!"
customization-tips: customization-tips:
title: "Dicas de personalização" title: "Dicas de personalização"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "O que está fazendo?" a: "O que está fazendo?"
b: "O que está acontecendo?" b: "O que está acontecendo?"
@ -106,9 +109,10 @@ common:
my-token-regenerated: "Seu token foi recriado, portanto você foi deslogado." my-token-regenerated: "Seu token foi recriado, portanto você foi deslogado."
i-like-sushi: "Eu prefiro sushi a pudim" i-like-sushi: "Eu prefiro sushi a pudim"
show-reversi-board-labels: "Mostrar etiquetas de colunas e linhas no Reversi" show-reversi-board-labels: "Mostrar etiquetas de colunas e linhas no Reversi"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "Conta verificada" verified-user: "Conta verificada"
disable-animated-mfm: "Desativar texto animado nas publicações" disable-animated-mfm: "Desativar texto animado nas publicações"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-show-nsfw: "常に閲覧注意のメディアを表示する" always-show-nsfw: "常に閲覧注意のメディアを表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-mark-nsfw: "常にメディアを閲覧注意として投稿"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
@ -116,13 +120,19 @@ common:
reduce-motion: "UIの動きを減らす" reduce-motion: "UIの動きを減らす"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "このデバイスのみ"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "OS標準の絵文字を使用"
do-not-use-in-production: 'これは開発ビルドです。本番環境で使用しないでください。' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "これは開発ビルドです。本番環境で使用しないでください。"
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "問題が発生しました"
retry: 'やり直す' retry: "やり直す"
reversi: reversi:
drawn: "Empatado" drawn: "Empatado"
my-turn: "Seu turno" my-turn: "Seu turno"
@ -153,12 +163,12 @@ common:
polls: "Enquetes" polls: "Enquetes"
post-form: "Formulário de publicação" post-form: "Formulário de publicação"
server: "Informações do servidor" server: "Informações do servidor"
donation: "Doações"
nav: "Navegação" nav: "Navegação"
tips: "Dicas" tips: "Dicas"
hashtags: "Hashtags" hashtags: "Hashtags"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "アプリの作成に失敗しました。再度お試しください。"
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "藍ちゃかわいい"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?"
permission-ask: "Este aplicativo precisa das seguintes permissões:" permission-ask: "Este aplicativo precisa das seguintes permissões:"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "閲覧注意" sensitive: "閲覧注意"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "ユーザーを探す" search-user: "ユーザーを探す"
you: "Você" you: "Você"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "開発者" develop: "開発者"
feedback: "フィードバック" feedback: "フィードバック"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "詳細" detail: "詳細"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "お気に入り" favorite: "お気に入り"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "または" or: "または"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "接続中" connecting: "接続中"
reconnecting: "再接続中" reconnecting: "再接続中"
connected: "接続完了" connected: "接続完了"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。" title: "通知"
connected-to: "次のTwitterアカウントに接続されています" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "詳細..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "再接続する" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Twitterと接続する" auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する" disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "待機中" waiting: "待機中"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "確認中" fetching: "確認中"
no-broadcasts: "お知らせはありません" no-broadcasts: "お知らせはありません"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "今日:" today: "今日:"
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "寄付のお願い"
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "フォトストリーム" title: "フォトストリーム"
no-photos: "写真はありません" no-photos: "写真はありません"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
reposted-by: "{}がRenote"
location: "位置情報" location: "位置情報"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "アンケートを作成" create-poll: "アンケートを作成"
text-remain: "残り{}文字" text-remain: "残り{}文字"
recent-tags: "最近" recent-tags: "最近"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "公開範囲" visibility: "公開範囲"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "引用する..." quote: "引用する..."
cancel: "キャンセル" cancel: "キャンセル"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "しています..." reposting: "しています..."
success: "Renoteしました" success: "Renoteしました"
failure: "Renoteに失敗しました" failure: "Renoteに失敗しました"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "プロフィール" profile: "プロフィール"
notification: "通知" notification: "通知"
apps: "アプリ" apps: "アプリ"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "セキュリティ" security: "セキュリティ"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "ウィンドウの自動ポップアウト" auto-popout: "ウィンドウの自動ポップアウト"
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。" auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
advanced: "詳細設定" advanced: "詳細設定"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "円形のアイコンを使用" circle-icons: "円形のアイコンを使用"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "リプライ先を表示する"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "マップの自動展開" show-maps: "マップの自動展開"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。" enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
volume: "ボリューム" volume: "ボリューム"
test: "テスト" test: "テスト"
language: "言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。" cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:" authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
howtoinstall: "インストール方法はこちら" howtoinstall: "インストール方法はこちら"
token: "トークン"
scan: "次に、表示されているQRコードをスキャンします:" scan: "次に、表示されているQRコードをスキャンします:"
done: "お使いのデバイスに表示されているトークンを入力して完了します:" done: "お使いのデバイスに表示されているトークンを入力して完了します:"
submit: "完了" submit: "完了"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "メッセージ" title: "メッセージ"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっと見る" refresh: "もっと見る"
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返信" reply: "返信"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "言語"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "動作" behavior: "動作"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Conectar à sua conta no Twitter"
twitter-reconnect: "Reconectar"
twitter-disconnect: "Desconectar"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Atualizar Misskey" update: "Atualizar Misskey"
version: "Versão atual;" version: "Versão atual;"
latest-version: "Última versão:" latest-version: "Última versão:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "Sair" signout: "Sair"
sound: "Sons" sound: "Sons"
enable-sounds: "Ativar sons" enable-sounds: "Ativar sons"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "Te segue" follows-you: "Te segue"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "概要" overview: "概要"
timeline: "Linha do tempo" timeline: "Linha do tempo"
media: "Mídia" media: "Mídia"
is-suspended: "Esta conta foi suspensa"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "Notas recentes" recent-notes: "Notas recentes"
images: "Imagens" images: "Imagens"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

View File

@ -7,73 +7,74 @@ common:
about-title: "Мы — ⭐ fediverse" about-title: "Мы — ⭐ fediverse"
about: "Спасибо, что нашли Misskey. Misskey — это <b>децентрализованная платформа для микроблоггинга</b> родом с планеты Земля. Поскольку она существует внутри Fediverse (вселенной различных социальных платформ), она связана с другими платформами. Отдохните от шума большого города — и познакомьтесь с новым интернетом." about: "Спасибо, что нашли Misskey. Misskey — это <b>децентрализованная платформа для микроблоггинга</b> родом с планеты Земля. Поскольку она существует внутри Fediverse (вселенной различных социальных платформ), она связана с другими платформами. Отдохните от шума большого города — и познакомьтесь с новым интернетом."
intro: intro:
title: "Misskeyって?" title: "Что такое Misskey?"
about: "Misskeyはオープンソースの<b>分散型マイクロブログSNS</b>です。リッチで高度にカスタマイズできるUI、投稿へのリアクション、ファイルを一元管理できるドライブなど、先進的な機能を揃えています。また、Fediverseと呼ばれるネットワークに接続できるため、他のSNSともやり取りできます。例えば、あなたが何か投稿すると、その投稿はMisskeyだけでなく他のSNSにも伝わります。ちょうどある惑星から他の惑星に電波を発信している様子をイメージしてください。" about: "Misskey - это <b>децентрализованный сервис микроблогинга</b> с открытым исходным кодом. Он имеет такие функции, как: навороченный, полностью настраиваемый пользовательский интерфейс, множество реакций на посты, бесплатное хранилище файлов с интегрированной системой управления и ещё куча передовых фишек. А ещё сетевая система под названием “Fediverse” позволяет нам общаться с пользователями других социальных сетей. Например, если ты что-нибудь запостишь, то твой пост будет отослан не только в Misskey, но ещё и mastodon. Просто представь, что планета посылает микроволны на другую планету для коммуникации."
features: "特徴" features: "Особенности"
rich-contents: "投稿" rich-contents: "Посты"
rich-contents-desc: "自分の考え、話題の出来事、皆と共有したいことについて発信してください。必要であれば、様々な構文を使って投稿を装飾したり、好きな画像、動画などのファイルやアンケートを添付することもできます。" rich-contents-desc: "Просто выложи свою идею, актуальные темы и всё, что тебе хочется показать миру. Ты можешь декорировать свои слова, прикреплять свои любимые картинки, отправлять файлы с фильмами и создать голосование - это те вещи, которые ты можешь сделать с помощью Misskey!"
reaction: "リアクション" reaction: "Реакции"
reaction-desc: "あなたの気持ちを伝える最も簡単な方法です。Misskeyは、他のユーザーの投稿に様々なリアクションを付けることができます。いちどMisskeyのリアクション機能を体験してしまうと、もう「いいね」の概念しか存在しないSNSには戻れなくなるかもしれません。" reaction-desc: "Самый лёгкий способ выразить свои эмоции. Misskey позволяет добавлять различные виды реакций к постам других людей. Эмоциональный опыт из Misskey никогда не появится в других социальных сетях, позволяющих только жать “лайки”."
ui: "インターフェース" ui: "Интерфейс"
ui-desc: "どのようなUIが使いやすいかは人それぞれです。だから、Misskeyは自由度の高いUIを持っています。レイアウトやデザインを調整したり、カスタマイズ可能な様々なウィジェットを配置したりして、自分だけのホームを作ってください。" ui-desc: "Нет такого интерфейса, понравившегося всем. Поэтому у Misskey имеется пользовательский интерфейс, широко настраиваемый под ваши вкусы. Создай себе уникальную домашнюю страницу редактируя, подстраивая оформление ленты и размещая виджеты, которые тоже можно кастомизировать."
drive: "ドライブ" drive: "Хранилище файлов"
drive-desc: "以前投稿したことのある画像をまた投稿したくなったことはありませんかもしくは、アップロードしたファイルをフォルダ分けして整理したくなったことはありませんかMisskeyの根幹に組み込まれたドライブ機能によってそれらが解決します。ファイルの共有も簡単です。" drive-desc: "Хотите запостить картинку, которую уже отправляли ранее? Хочется сортировать, переименовать и создать папку для ваших выложенных файлов? Тогда Misskey Drive - это лучшее решение для вас. Очень лёгкий способ делиться своими файлами онлайн."
outro: "他にもMisskeyにしかない機能はまだまだあるので、ぜひあなた自身の目で確かめてください。Misskeyは分散型SNSなので、このインスタンスが気に入らなければ他のインスタンスを試すこともできます。それでは、GLHF!" outro: "Попробуйте будущие, уникальные для Misskey функции своими глазами! Если чувствуете, что это не в вашем вкусе, то попробуйте другие инстанции, ведь Misskey - это децентрализованная социальная сеть, так что ты можешь с лёгкостью найти себе товарищей. И наконец, GLHF!"
adblock: adblock:
detected: "広告ブロッカーを無効にしてください" detected: "Пожалуйста, отключите блокировщик рекламы."
warning: "<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。" warning: "Некоторые функции перестанут быть доступными или будут работать неправильно, если включена блокировка рекламы. <strong>В Misskey нет рекламы</strong>."
application-authorization: "アプリの連携" application-authorization: "Авторизация приложений"
close: "閉じる" close: "Закрыть"
do-not-copy-paste: "ここにコードを入力したり張り付けたりしないでください。アカウントが不正利用される可能性があります。" do-not-copy-paste: "Пожалуйста, не вводите и не вставляйте сюда код. Аккаунту может угрожать опасность."
load-more: "もっと読み込む" load-more: "Загрузить больше"
enter-password: "Пожалуйста, введите ваш пароль"
got-it: "わかった" got-it: "わかった"
customization-tips: customization-tips:
title: "カスタマイズのヒント" title: "Советы по настройке"
paragraph: "<p>ホームのカスタマイズでは、ウィジェットを追加/削除したり、ドラッグ&ドロップして並べ替えたりすることができます。</p><p>一部のウィジェットは、<strong><strong>右</strong>クリック</strong>することで表示を変更することができます。</p><p>ウィジェットを削除するには、ヘッダーの<strong>「ゴミ箱」</strong>と書かれたエリアにウィジェットをドラッグ&ドロップします。</p><p>カスタマイズを終了するには、右上の「完了」をクリックします。</p>" paragraph: "<p>ホームのカスタマイズでは、ウィジェットを追加/削除したり、ドラッグ&ドロップして並べ替えたりすることができます。</p><p>一部のウィジェットは、<strong><strong>右</strong>クリック</strong>することで表示を変更することができます。</p><p>ウィジェットを削除するには、ヘッダーの<strong>「ゴミ箱」</strong>と書かれたエリアにウィジェットをドラッグ&ドロップします。</p><p>カスタマイズを終了するには、右上の「完了」をクリックします。</p>"
gotit: "Got it!" gotit: "Понятно!"
notification: notification:
file-uploaded: "ファイルがアップロードされました" file-uploaded: "Файл отправлен!"
message-from: "{}さんからメッセージ:" message-from: "Сообщение от {}:"
reversi-invited: "対局への招待があります" reversi-invited: "Приглашён в игру"
reversi-invited-by: "{}さんから" reversi-invited-by: "Был приглашён {}:"
notified-by: "{}さんから" notified-by: "{}さんから"
reply-from: "{}さんから返信:" reply-from: "Ответ от {}:"
quoted-by: "{}さんが引用:" quoted-by: "Цитировано {}:"
time: time:
unknown: "なぞのじかん" unknown: "неизвестно"
future: "未来" future: "сейчас"
just_now: "たった今" just_now: "сейчас"
seconds_ago: "{}秒前" seconds_ago: "{} секунд назад"
minutes_ago: "{}分前" minutes_ago: "{} минут назад"
hours_ago: "{}時間前" hours_ago: "{} часов назад"
days_ago: "{}日前" days_ago: "{} дней назад"
weeks_ago: "{}週間前" weeks_ago: "{} недель назад"
months_ago: "{}ヶ月前" months_ago: "{} месяцев назад"
years_ago: "{}年前" years_ago: "{} лет назад"
month-and-day: "{month}月 {day}日" month-and-day: "{day}.{month}"
trash: "ゴミ箱" trash: "Мусорное ведро"
drive: "ドライブ" drive: "Drive"
messaging: "トーク" messaging: "Чат"
weekday-short: weekday-short:
sunday: "" sunday: "Вс"
monday: "" monday: "Пн"
tuesday: "" tuesday: "Вт"
wednesday: "" wednesday: "Ср"
thursday: "" thursday: "Чт"
friday: "" friday: "Пт"
saturday: "" saturday: "Сб"
weekday: weekday:
sunday: "日曜日" sunday: "Воскресенье"
monday: "月曜日" monday: "Понедельник"
tuesday: "火曜日" tuesday: "Вторник"
wednesday: "水曜日" wednesday: "Среда"
thursday: "木曜日" thursday: "Четверг"
friday: "金曜日" friday: "Пятница"
saturday: "土曜日" saturday: "Суббота"
reactions: reactions:
like: "いいね" like: "Нравится"
love: "しゅき" love: "しゅき"
laugh: "" laugh: "Ха-Ха"
hmm: "ふぅ~む" hmm: "ふぅ~む"
surprise: "わお" surprise: "わお"
congrats: "おめでとう" congrats: "おめでとう"
@ -89,7 +90,9 @@ common:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
note-placeholders: note-placeholders:
a: "今どうしてる?" a: "今どうしてる?"
b: "何かありましたか?" b: "何かありましたか?"
@ -106,61 +109,68 @@ common:
my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。" my-token-regenerated: "あなたのトークンが更新されたのでサインアウトします。"
i-like-sushi: "私は(プリンよりむしろ)寿司が好き" i-like-sushi: "私は(プリンよりむしろ)寿司が好き"
show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示" show-reversi-board-labels: "リバーシのボードの行と列のラベルを表示"
use-contrast-reversi-stones: "リバーシのアイコンにコントラストを付ける" use-avatar-reversi-stones: "リバーシの石にアバターを使う"
verified-user: "公式アカウント" verified-user: "公式アカウント"
disable-animated-mfm: "投稿内の動きのあるテキストを無効にする" disable-animated-mfm: "Отключить анимированный текст в постах"
always-show-nsfw: "常に閲覧注意のメディアを表示する" suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
always-mark-nsfw: "常にメディアを閲覧注意として投稿" always-show-nsfw: "Всегда показывать NSFW контент"
always-mark-nsfw: "Всегда помечать посты с медиафайлами как NSFW"
show-full-acct: "ユーザー名のホストを省略しない" show-full-acct: "ユーザー名のホストを省略しない"
show-via: "viaを表示する" show-via: "показать через"
reduce-motion: "UIの動きを減らす" reduce-motion: "Уменьшить движение в интерфейсе"
this-setting-is-this-device-only: "このデバイスのみ" this-setting-is-this-device-only: "Только для этого устройства"
use-os-default-emojis: "OS標準の絵文字を使用" use-os-default-emojis: "Использовать стандартные Emoji из ОС"
do-not-use-in-production: 'これは開発ビルドです。本番環境で使用しないでください。' line-width: "線の太さ"
line-width-thin: "細い"
line-width-normal: "普通"
line-width-thick: "太い"
do-not-use-in-production: "Эта сборка для разработчиков. Не используйте в продакшне."
user-suspended: "このユーザーは凍結されています。"
is-remote-user: "このユーザー情報はコピーです。" is-remote-user: "このユーザー情報はコピーです。"
is-remote-post: "この投稿情報はコピーです。" is-remote-post: "この投稿情報はコピーです。"
view-on-remote: "正確な情報を見る" view-on-remote: "正確な情報を見る"
renoted-by: "{user}がRenote"
error: error:
title: '問題が発生しました' title: "Что-то пошло не так :("
retry: 'やり直す' retry: "Повторить"
reversi: reversi:
drawn: "引き分け" drawn: "Ничья"
my-turn: "あなたのターンです" my-turn: "Ваш ход"
opponent-turn: "相手のターンです" opponent-turn: "Ход оппонента"
turn-of: "{name}のターンです" turn-of: "Ход {name}"
past-turn-of: "{name}のターン" past-turn-of: "Ход {name}"
won: "{name}の勝ち" won: "{name} победил"
black: "" black: "Чёрный"
white: "" white: "Белый"
total: "合計" total: "Всего"
this-turn: "{count}ターン目" this-turn: "Ход {count}"
widgets: widgets:
analog-clock: "アナログ時計" analog-clock: "Аналоговые часы"
profile: "プロフィール" profile: "Профиль"
calendar: "カレンダー" calendar: "Календарь"
timemachine: "カレンダー(タイムマシン)" timemachine: "Календарь (машина времени)"
activity: "アクティビティ" activity: "Активность"
rss: "RSSリーダー" rss: "Ридер RSS"
memo: "付箋" memo: "Заметка"
trends: "トレンド" trends: "Популярное"
photo-stream: "フォトストリーム" photo-stream: "Фотопоток"
posts-monitor: "投稿チャート" posts-monitor: "投稿チャート"
slideshow: "スライドショー" slideshow: "Слайдшоу"
version: "バージョン" version: "Версия"
broadcast: "ブロードキャスト" broadcast: "ブロードキャスト"
notifications: "通知" notifications: "Уведомления"
users: "おすすめユーザー" users: "Рекомендованные пользователи"
polls: "アンケート" polls: "Голосования"
post-form: "投稿フォーム" post-form: "投稿フォーム"
server: "サーバー情報" server: "Информация о сервере"
donation: "寄付のお願い"
nav: "ナビゲーション" nav: "ナビゲーション"
tips: "ヒント" tips: "ヒント"
hashtags: "ハッシュタグ" hashtags: "Хэштеги"
dev: "アプリの作成に失敗しました。再度お試しください。" dev: "Не удалось создать приложение. Пожалуйста, попробуйте ещё раз."
ai-chan-kawaii: "藍ちゃかわいい" ai-chan-kawaii: "Ai-chan kawaii!"
you: "あなた"
auth/views/form.vue: auth/views/form.vue:
share-access: "<i>{name}</i>があなたのアカウントにアクセスすることを許可しますか?" share-access: "Вы разрешаете <i>{name}</i> получить доступ к вашему аккаунту?"
permission-ask: "このアプリは次の権限を要求しています:" permission-ask: "このアプリは次の権限を要求しています:"
account-read: "アカウントの情報を見る。" account-read: "アカウントの情報を見る。"
account-write: "アカウントの情報を操作する。" account-write: "アカウントの情報を操作する。"
@ -206,28 +216,28 @@ common/views/components/games/reversi/reversi.index.vue:
all-games: "みんなの対局" all-games: "みんなの対局"
enter-username: "ユーザー名を入力してください" enter-username: "ユーザー名を入力してください"
game-state: game-state:
ended: "終了" ended: "Завершено"
playing: "進行中" playing: "В процессе"
common/views/components/games/reversi/reversi.room.vue: common/views/components/games/reversi/reversi.room.vue:
settings-of-the-game: "ゲームの設定" settings-of-the-game: "Настройки игры"
choose-map: "マップを選択" choose-map: "マップを選択"
random: "ランダム" random: "Случайно"
black-or-white: "先手/後手" black-or-white: "Чёрные/Белые"
black-is: "{}が黒" black-is: "{} ходит чёрными"
rules: "ルール" rules: "Правила"
is-llotheo: "石の少ない方が勝ち(ロセオ)" is-llotheo: "石の少ない方が勝ち(ロセオ)"
looped-map: "ループマップ" looped-map: "ループマップ"
can-put-everywhere: "どこでも置けるモード" can-put-everywhere: "どこでも置けるモード"
settings-of-the-bot: "Botの設定" settings-of-the-bot: "Настройки бота"
this-game-is-started-soon: "ゲームは数秒後に開始されます" this-game-is-started-soon: "Игра вот-вот начнётся"
waiting-for-other: "相手の準備が完了するのを待っています" waiting-for-other: "Ожидание оппонента"
waiting-for-me: "あなたの準備が完了するのを待っています" waiting-for-me: "あなたの準備が完了するのを待っています"
waiting-for-both: "準備中" waiting-for-both: "準備中"
cancel: "キャンセル" cancel: "Отмена"
ready: "準備完了" ready: "Готов"
cancel-ready: "準備続行" cancel-ready: "準備続行"
common/views/components/connect-failed.vue: common/views/components/connect-failed.vue:
title: "サーバーに接続できません" title: "Невозможно подключиться к серверу"
description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。" description: "インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから{再度お試し}ください。"
thanks: "いつもMisskeyをご利用いただきありがとうございます。" thanks: "いつもMisskeyをご利用いただきありがとうございます。"
troubleshoot: "トラブルシュート" troubleshoot: "トラブルシュート"
@ -254,6 +264,7 @@ common/views/components/media-banner.vue:
sensitive: "閲覧注意" sensitive: "閲覧注意"
click-to-show: "クリックして表示" click-to-show: "クリックして表示"
common/views/components/theme.vue: common/views/components/theme.vue:
theme: "テーマ"
light-theme: "非ダークモード時に使用するテーマ" light-theme: "非ダークモード時に使用するテーマ"
dark-theme: "ダークモード時に使用するテーマ" dark-theme: "ダークモード時に使用するテーマ"
light-themes: "明るいテーマ" light-themes: "明るいテーマ"
@ -270,6 +281,7 @@ common/views/components/theme.vue:
base-theme: "ベーステーマ" base-theme: "ベーステーマ"
base-theme-light: "Light" base-theme-light: "Light"
base-theme-dark: "Dark" base-theme-dark: "Dark"
find-more-theme: "その他のテーマを入手"
theme-name: "テーマ名" theme-name: "テーマ名"
preview-created-theme: "プレビュー" preview-created-theme: "プレビュー"
invalid-theme: "テーマが正しくありません。" invalid-theme: "テーマが正しくありません。"
@ -291,6 +303,9 @@ common/views/components/theme.vue:
common/views/components/cw-button.vue: common/views/components/cw-button.vue:
hide: "隠す" hide: "隠す"
show: "もっと見る" show: "もっと見る"
chars: "{count}文字"
files: "{count}ファイル"
poll: "アンケート"
common/views/components/messaging.vue: common/views/components/messaging.vue:
search-user: "ユーザーを探す" search-user: "ユーザーを探す"
you: "あなた" you: "あなた"
@ -320,7 +335,9 @@ common/views/components/nav.vue:
develop: "開発者" develop: "開発者"
feedback: "フィードバック" feedback: "フィードバック"
common/views/components/note-menu.vue: common/views/components/note-menu.vue:
mention: "メンション"
detail: "詳細" detail: "詳細"
copy-content: "内容をコピー"
copy-link: "リンクをコピー" copy-link: "リンクをコピー"
favorite: "お気に入り" favorite: "お気に入り"
unfavorite: "お気に入り解除" unfavorite: "お気に入り解除"
@ -363,6 +380,7 @@ common/views/components/signin.vue:
or: "または" or: "または"
signin-with-twitter: "Twitterでログイン" signin-with-twitter: "Twitterでログイン"
signin-with-github: "GitHubでログイン" signin-with-github: "GitHubでログイン"
signin-with-discord: "Discordでログイン"
login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。" login-failed: "ログインできませんでした。ユーザー名とパスワードを確認してください。"
common/views/components/signup.vue: common/views/components/signup.vue:
invitation-code: "招待コード" invitation-code: "招待コード"
@ -394,13 +412,18 @@ common/views/components/stream-indicator.vue:
connecting: "接続中" connecting: "接続中"
reconnecting: "再接続中" reconnecting: "再接続中"
connected: "接続完了" connected: "接続完了"
common/views/components/twitter-setting.vue: common/views/components/notification-settings.vue:
description: "お使いのTwitterアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでTwitterアカウント情報が表示されるようになったり、Twitterを用いた便利なサインインを利用できるようになります。" title: "通知"
connected-to: "次のTwitterアカウントに接続されています" mark-as-read-all-notifications: "すべての通知を既読にする"
detail: "詳細..." mark-as-read-all-unread-notes: "すべての投稿を既読にする"
reconnect: "再接続する" mark-as-read-all-talk-messages: "すべてのトークを既読にする"
connect: "Twitterと接続する" auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
common/views/components/integration-settings.vue:
title: "サービス連携"
connect: "接続する"
disconnect: "切断する" disconnect: "切断する"
connected-to: "次のアカウントに接続されています"
common/views/components/github-setting.vue: common/views/components/github-setting.vue:
description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。" description: "お使いのGitHubアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでGitHubアカウント情報が表示されるようになったり、GitHubを用いた便利なサインインを利用できるようになります。"
connected-to: "次のGitHubアカウントに接続されています" connected-to: "次のGitHubアカウントに接続されています"
@ -408,6 +431,13 @@ common/views/components/github-setting.vue:
reconnect: "再接続する" reconnect: "再接続する"
connect: "GitHubと接続する" connect: "GitHubと接続する"
disconnect: "切断する" disconnect: "切断する"
common/views/components/discord-setting.vue:
description: "お使いのDiscordアカウントをお使いのMisskeyアカウントに接続しておくと、プロフィールでDiscordアカウント情報が表示されるようになったり、Discordを用いた便利なサインインを利用できるようになります。"
connected-to: "次のDiscordアカウントに接続されています"
detail: "詳細..."
reconnect: "再接続する"
connect: "Discordと接続する"
disconnect: "切断する"
common/views/components/uploader.vue: common/views/components/uploader.vue:
waiting: "待機中" waiting: "待機中"
common/views/components/visibility-chooser.vue: common/views/components/visibility-chooser.vue:
@ -418,16 +448,27 @@ common/views/components/visibility-chooser.vue:
followers-desc: "自分のフォロワーにのみ公開" followers-desc: "自分のフォロワーにのみ公開"
specified: "ダイレクト" specified: "ダイレクト"
specified-desc: "指定したユーザーにのみ公開" specified-desc: "指定したユーザーにのみ公開"
private: "公開" local-public: "公開 (ローカルのみ)"
local-public-desc: "リモートへは公開しない"
local-home: "ホーム (ローカルのみ)"
local-followers: "フォロワー (ローカルのみ)"
common/views/components/trends.vue: common/views/components/trends.vue:
count: "{}人が投稿" count: "{}人が投稿"
empty: "トレンドなし" empty: "トレンドなし"
common/views/components/language-settings.vue:
title: "表示言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
info: "変更はページの再度読み込み後に反映されます。"
common/views/components/profile-editor.vue: common/views/components/profile-editor.vue:
title: "プロフィール" title: "プロフィール"
name: "名前" name: "名前"
account: "アカウント" account: "アカウント"
location: "場所" location: "場所"
description: "自己紹介" description: "自己紹介"
language: "言語"
birthday: "誕生日" birthday: "誕生日"
avatar: "アイコン" avatar: "アイコン"
banner: "バナー" banner: "バナー"
@ -435,12 +476,24 @@ common/views/components/profile-editor.vue:
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
is-locked: "フォローを承認制にする" is-locked: "フォローを承認制にする"
careful-bot: "Botからのフォローだけ承認制にする" careful-bot: "Botからのフォローだけ承認制にする"
auto-accept-followed: "フォローしているユーザーからのフォローを自動承認する"
advanced: "その他" advanced: "その他"
privacy: "プライバシー" privacy: "プライバシー"
save: "保存" save: "保存"
saved: "プロフィールを保存しました" saved: "プロフィールを保存しました"
uploading: "アップロード中" uploading: "アップロード中"
upload-failed: "アップロードに失敗しました" upload-failed: "アップロードに失敗しました"
email: "メール設定"
email-address: "メールアドレス"
email-verified: "メールアドレスが確認されました"
email-not-verified: "メールアドレスが確認されていません。メールボックスをご確認ください。"
common/views/components/user-list-editor.vue:
users: "ユーザー"
rename: "リスト名を変更"
delete: "リストを削除"
remove-user: "このリストから削除"
delete-are-you-sure: "リスト「$1」を削除しますか"
deleted: "削除しました"
common/views/widgets/broadcast.vue: common/views/widgets/broadcast.vue:
fetching: "確認中" fetching: "確認中"
no-broadcasts: "お知らせはありません" no-broadcasts: "お知らせはありません"
@ -453,9 +506,6 @@ common/views/widgets/calendar.vue:
today: "今日:" today: "今日:"
this-month: "今月:" this-month: "今月:"
this-year: "今年:" this-year: "今年:"
common/views/widgets/donation.vue:
title: "寄付のお願い"
text: "Misskeyの運営にはドメイン、サーバー等のコストが掛かります。Misskeyは広告を掲載したりしないため、収入を皆様からの寄付に頼っています。もしご興味があれば、{}までご連絡ください。ご協力ありがとうございます。"
common/views/widgets/photo-stream.vue: common/views/widgets/photo-stream.vue:
title: "フォトストリーム" title: "フォトストリーム"
no-photos: "写真はありません" no-photos: "写真はありません"
@ -493,9 +543,11 @@ common/views/widgets/tips.vue:
tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます" tips-line19: "いくつかのウィンドウはブラウザの外に切り離すことができます"
tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています" tips-line20: "カレンダーウィジェットのパーセンテージは、経過の割合を示しています"
tips-line21: "APIを利用してbotの開発なども行えます" tips-line21: "APIを利用してbotの開発なども行えます"
tips-line23: "まゆかわいいよまゆ" tips-line23: "かわいいよ"
tips-line24: "Misskeyは2014年にサービスを開始しました" tips-line24: "Misskeyは2014年にサービスを開始しました"
tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます" tips-line25: "対応ブラウザではMisskeyを開いていなくても通知を受け取れます"
common/views/pages/not-found.vue:
page-not-found: "ページが見つかりませんでした"
common/views/pages/follow.vue: common/views/pages/follow.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
following: "フォロー中" following: "フォロー中"
@ -628,15 +680,15 @@ desktop/views/components/messaging-window.vue:
desktop/views/components/note-detail.vue: desktop/views/components/note-detail.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
reposted-by: "{}がRenote"
location: "位置情報" location: "位置情報"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
desktop/views/components/note.vue: desktop/views/components/note.vue:
reposted-by: "{}がRenote"
reply: "返信" reply: "返信"
renote: "Renote" renote: "Renote"
add-reaction: "リアクション" add-reaction: "リアクション"
undo-reaction: "リアクション解除"
detail: "詳細" detail: "詳細"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
@ -668,6 +720,7 @@ desktop/views/components/post-form.vue:
create-poll: "アンケートを作成" create-poll: "アンケートを作成"
text-remain: "残り{}文字" text-remain: "残り{}文字"
recent-tags: "最近" recent-tags: "最近"
local-only-message: "この投稿はローカルにのみ公開されます"
click-to-tagging: "クリックでタグ付け" click-to-tagging: "クリックでタグ付け"
visibility: "公開範囲" visibility: "公開範囲"
geolocation-alert: "お使いの端末は位置情報に対応していません" geolocation-alert: "お使いの端末は位置情報に対応していません"
@ -685,6 +738,7 @@ desktop/views/components/renote-form.vue:
quote: "引用する..." quote: "引用する..."
cancel: "キャンセル" cancel: "キャンセル"
renote: "Renote" renote: "Renote"
renote-home: "Renote (Home)"
reposting: "しています..." reposting: "しています..."
success: "Renoteしました" success: "Renoteしました"
failure: "Renoteに失敗しました" failure: "Renoteに失敗しました"
@ -699,6 +753,7 @@ desktop/views/components/settings.vue:
profile: "プロフィール" profile: "プロフィール"
notification: "通知" notification: "通知"
apps: "アプリ" apps: "アプリ"
tags: "ハッシュタグ"
mute-and-block: "ミュート/ブロック" mute-and-block: "ミュート/ブロック"
blocking: "ブロック" blocking: "ブロック"
security: "セキュリティ" security: "セキュリティ"
@ -714,6 +769,8 @@ desktop/views/components/settings.vue:
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
auto-popout: "ウィンドウの自動ポップアウト" auto-popout: "ウィンドウの自動ポップアウト"
auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。" auto-popout-desc: "ウィンドウが開かれるとき、ポップアウト(ブラウザ外に切り離す)可能なら自動でポップアウトします。この設定はブラウザに記憶されます。"
advanced: "詳細設定" advanced: "詳細設定"
@ -733,7 +790,6 @@ desktop/views/components/settings.vue:
circle-icons: "円形のアイコンを使用" circle-icons: "円形のアイコンを使用"
contrasted-acct: "ユーザー名にコントラストを付ける" contrasted-acct: "ユーザー名にコントラストを付ける"
post-form-on-timeline: "タイムライン上部に投稿フォームを表示する" post-form-on-timeline: "タイムライン上部に投稿フォームを表示する"
suggest-recent-hashtags: "最近のハッシュタグを投稿フォームに表示する"
show-clock-on-header: "右上に時計を表示する" show-clock-on-header: "右上に時計を表示する"
show-reply-target: "リプライ先を表示する" show-reply-target: "リプライ先を表示する"
timeline: "タイムライン" timeline: "タイムライン"
@ -741,27 +797,27 @@ desktop/views/components/settings.vue:
show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する" show-renoted-my-notes: "自分の投稿のRenoteをタイムラインに表示する"
show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する" show-local-renotes: "ローカルの投稿のRenoteをタイムラインに表示する"
show-maps: "マップの自動展開" show-maps: "マップの自動展開"
deck-column-align: "デッキのカラムの位置" remain-deleted-note: "削除された投稿を表示し続ける"
deck-column-align: "デッキのカラムの配置"
deck-column-align-center: "中央" deck-column-align-center: "中央"
deck-column-align-left: "左" deck-column-align-left: "左"
deck-column-align-flexible: "フレキシブル"
deck-column-width: "デッキのカラムの幅"
deck-column-width-narrow: "狭"
deck-column-width-narrower: "やや狭"
deck-column-width-normal: "普通"
deck-column-width-wider: "やや広"
deck-column-width-wide: "広"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。" enable-sounds-desc: "投稿やメッセージを送受信したときなどにサウンドを再生します。この設定はブラウザに記憶されます。"
volume: "ボリューム" volume: "ボリューム"
test: "テスト" test: "テスト"
language: "言語"
pick-language: "言語を選択"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
language-desc: "変更はページの再度読み込み後に反映されます。"
cache: "キャッシュ" cache: "キャッシュ"
clean-cache: "クリーンアップ" clean-cache: "クリーンアップ"
cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。" cache-warn: "クリーンアップを行うと、ブラウザに記憶されたアカウント情報のキャッシュ、書きかけの投稿・返信・メッセージ、およびその他のデータ(設定情報含む)が削除されます。クリーンアップを行った後はページを再度読み込みする必要があります。"
cache-cleared: "キャッシュを削除しました" cache-cleared: "キャッシュを削除しました"
cache-cleared-desc: "ページを再度読み込みしてください。" cache-cleared-desc: "ページを再度読み込みしてください。"
auto-watch: "投稿の自動ウォッチ"
auto-watch-desc: "リアクションしたり返信したりした投稿に関する通知を自動的に受け取るようにします。"
about: "Misskeyについて" about: "Misskeyについて"
operator: "このサーバーの運営者" operator: "このサーバーの運営者"
update: "Misskey Update" update: "Misskey Update"
@ -800,6 +856,7 @@ desktop/views/components/settings.2fa.vue:
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:" authenticator: "まず、Google Authenticatorをお使いのデバイスにインストールします:"
howtoinstall: "インストール方法はこちら" howtoinstall: "インストール方法はこちら"
token: "トークン"
scan: "次に、表示されているQRコードをスキャンします:" scan: "次に、表示されているQRコードをスキャンします:"
done: "お使いのデバイスに表示されているトークンを入力して完了します:" done: "お使いのデバイスに表示されているトークンを入力して完了します:"
submit: "完了" submit: "完了"
@ -814,13 +871,13 @@ common/views/components/api-settings.vue:
token: "Token:" token: "Token:"
enter-password: "パスワードを入力してください" enter-password: "パスワードを入力してください"
console: console:
title: 'APIコンソール' title: "APIコンソール"
endpoint: 'エンドポイント' endpoint: "エンドポイント"
parameter: 'パラメータ' parameter: "パラメータ"
credential-info: "「i」パラメータは自動で付与されます。" credential-info: "「i」パラメータは自動で付与されます。"
send: '送信' send: "送信"
sending: '応答待ち' sending: "応答待ち"
response: '結果' response: "結果"
desktop/views/components/settings.apps.vue: desktop/views/components/settings.apps.vue:
no-apps: "連携しているアプリケーションはありません" no-apps: "連携しているアプリケーションはありません"
common/views/components/drive-settings.vue: common/views/components/drive-settings.vue:
@ -844,11 +901,17 @@ common/views/components/password-settings.vue:
enter-new-password-again: "もう一度新しいパスワードを入力してください" enter-new-password-again: "もう一度新しいパスワードを入力してください"
not-match: "新しいパスワードが一致しません" not-match: "新しいパスワードが一致しません"
changed: "パスワードを変更しました" changed: "パスワードを変更しました"
failed: "パスワード変更に失敗しました"
desktop/views/components/sub-note-content.vue: desktop/views/components/sub-note-content.vue:
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
media-count: "{}つのメディア" media-count: "{}つのメディア"
poll: "アンケート" poll: "アンケート"
desktop/views/components/settings.tags.vue:
title: "タグ"
query: "クエリ (省略可)"
add: "追加"
save: "保存"
desktop/views/components/taskmanager.vue: desktop/views/components/taskmanager.vue:
title: "タスクマネージャ" title: "タスクマネージャ"
desktop/views/components/timeline.vue: desktop/views/components/timeline.vue:
@ -911,8 +974,9 @@ admin/views/index.vue:
dashboard: "ダッシュボード" dashboard: "ダッシュボード"
instance: "インスタンス" instance: "インスタンス"
emoji: "カスタム絵文字" emoji: "カスタム絵文字"
moderators: "モデレーター"
users: "ユーザー" users: "ユーザー"
update: "更新" federation: "連合"
announcements: "お知らせ" announcements: "お知らせ"
hashtags: "ハッシュタグ" hashtags: "ハッシュタグ"
back-to-misskey: "Misskeyに戻る" back-to-misskey: "Misskeyに戻る"
@ -930,6 +994,7 @@ admin/views/instance.vue:
instance-description: "インスタンスの紹介" instance-description: "インスタンスの紹介"
host: "ホスト" host: "ホスト"
banner-url: "バナー画像URL" banner-url: "バナー画像URL"
error-image-url: "エラー画像URL"
languages: "インスタンスの対象言語" languages: "インスタンスの対象言語"
languages-desc: "スペースで区切って複数設定できます。" languages-desc: "スペースで区切って複数設定できます。"
maintainer-config: "管理者情報" maintainer-config: "管理者情報"
@ -947,15 +1012,20 @@ admin/views/instance.vue:
recaptcha-site-key: "reCAPTCHA site key" recaptcha-site-key: "reCAPTCHA site key"
recaptcha-secret-key: "reCAPTCHA secret key" recaptcha-secret-key: "reCAPTCHA secret key"
twitter-integration-config: "Twitter連携の設定" twitter-integration-config: "Twitter連携の設定"
twitter-integration-info: "コールバックURLは /api/tw/cb に設定します。" twitter-integration-info: "コールバックURLは {url} に設定します。"
enable-twitter-integration: "Twitter連携を有効にする" enable-twitter-integration: "Twitter連携を有効にする"
twitter-integration-consumer-key: "Consumer key" twitter-integration-consumer-key: "Consumer key"
twitter-integration-consumer-secret: "Consumer secret" twitter-integration-consumer-secret: "Consumer secret"
github-integration-config: "GitHub連携の設定" github-integration-config: "GitHub連携の設定"
github-integration-info: "コールバックURLは /api/gh/cb に設定します。" github-integration-info: "コールバックURLは {url} に設定します。"
enable-github-integration: "GitHub連携を有効にする" enable-github-integration: "GitHub連携を有効にする"
github-integration-client-id: "Client ID" github-integration-client-id: "Client ID"
github-integration-client-secret: "Client secret" github-integration-client-secret: "Client Secret"
discord-integration-config: "Discord連携の設定"
discord-integration-info: "コールバックURLは {url} に設定します。"
enable-discord-integration: "Discord連携を有効にする"
discord-integration-client-id: "Client ID"
discord-integration-client-secret: "Client Secret"
proxy-account-config: "プロキシアカウントの設定" proxy-account-config: "プロキシアカウントの設定"
proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。" proxy-account-info: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxy-account-username: "プロキシアカウントのユーザー名" proxy-account-username: "プロキシアカウントのユーザー名"
@ -967,6 +1037,28 @@ admin/views/instance.vue:
invite: "招待" invite: "招待"
save: "保存" save: "保存"
saved: "保存しました" saved: "保存しました"
user-recommendation-config: "おすすめユーザー"
enable-external-user-recommendation: "外部ユーザーレコメンデーションを有効にする"
external-user-recommendation-engine: "エンジン"
external-user-recommendation-engine-desc: "例: https://vinayaka.distsn.org/cgi-bin/vinayaka-user-match-misskey-api.cgi?{{host}}+{{user}}+{{limit}}+{{offset}}"
external-user-recommendation-timeout: "タイムアウト"
external-user-recommendation-timeout-desc: "ミリ秒単位 (例: 300000)"
email-config: "メールサーバーの設定"
email-config-info: "メールアドレス確認やパスワードリセットの際に使われます。"
enable-email: "メール配信を有効にする"
email: "メールアドレス"
smtp-secure: "SMTP接続に暗黙的なSSL/TLSを使用する"
smtp-secure-info: "STARTTLS使用時はオフにします。"
smtp-host: "SMTPホスト"
smtp-port: "SMTPポート"
smtp-user: "SMTPユーザー"
smtp-pass: "SMTPパスワード"
serviceworker-config: "ServiceWorker"
enable-serviceworker: "ServiceWorkerを有効にする"
serviceworker-info: "プッシュ通知を行うには有効する必要があります。"
vapid-publickey: "VAPID公開鍵"
vapid-privatekey: "VAPID秘密鍵"
vapid-info: "ServiceWorkerを有効にする場合、VAPIDキーペアを生成する必要があります。シェルで次のようにします:"
admin/views/charts.vue: admin/views/charts.vue:
title: "チャート" title: "チャート"
per-day: "1日ごと" per-day: "1日ごと"
@ -992,19 +1084,57 @@ admin/views/charts.vue:
network-requests: "リクエスト" network-requests: "リクエスト"
network-time: "応答時間" network-time: "応答時間"
network-usage: "通信量" network-usage: "通信量"
admin/views/drive.vue:
sort:
title: "ソート"
createdAtAsc: "アップロード日時が古い順"
createdAtDesc: "アップロード日時が新しい順"
sizeAsc: "サイズが小さい順"
sizeDesc: "サイズが大きい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
delete: "削除"
deleted: "削除しました"
mark-as-sensitive: "閲覧注意に設定"
unmark-as-sensitive: "閲覧注意を解除"
admin/views/users.vue: admin/views/users.vue:
suspend-user: "ユーザーの凍結" operation: "操作"
username-or-userid: "ユーザー名またはユーザーID"
user-not-found: "ユーザーが見つかりません"
lookup: "照会"
reset-password: "パスワードをリセット"
password-updated: "パスワードは現在「{password}」です"
suspend: "凍結" suspend: "凍結"
suspended: "凍結しました" suspended: "凍結しました"
unsuspend-user: "ユーザーの凍結の解除"
unsuspend: "凍結の解除" unsuspend: "凍結の解除"
unsuspended: "凍結を解除しました" unsuspended: "凍結を解除しました"
verify-user: "ユーザーの公式アカウント設定"
verify: "公式アカウントにする" verify: "公式アカウントにする"
verified: "公式アカウントにしました" verified: "公式アカウントにしました"
unverify-user: "ユーザーの公式アカウント解除"
unverify: "公式アカウントを解除する" unverify: "公式アカウントを解除する"
unverified: "公式アカウントを解除しました" unverified: "公式アカウントを解除しました"
users:
title: "ユーザー"
sort:
title: "ソート"
createdAtAsc: "登録日時が古い順"
createdAtDesc: "登録日時が新しい順"
updatedAtAsc: "更新日時が古い順"
updatedAtDesc: "更新日時が新しい順"
origin:
title: "オリジン"
combined: "ローカル+リモート"
local: "ローカル"
remote: "リモート"
createdAt: "登録日時"
updatedAt: "更新日時"
admin/views/moderators.vue:
add-moderator:
title: "モデレーターの登録"
add: "登録"
added: "モデレーターを登録しました"
admin/views/emoji.vue: admin/views/emoji.vue:
add-emoji: add-emoji:
title: "絵文字の登録" title: "絵文字の登録"
@ -1101,6 +1231,7 @@ desktop/views/pages/user/user.header.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
is-bot: "このアカウントはBotです" is-bot: "このアカウントはBotです"
years-old: "{age}歳" years-old: "{age}歳"
year: "年" year: "年"
@ -1110,6 +1241,7 @@ desktop/views/pages/user/user.timeline.vue:
default: "投稿" default: "投稿"
with-replies: "投稿と返信" with-replies: "投稿と返信"
with-media: "メディア" with-media: "メディア"
my-posts: "私の投稿"
empty: "このユーザーはまだ何も投稿していないようです。" empty: "このユーザーはまだ何も投稿していないようです。"
desktop/views/widgets/messaging.vue: desktop/views/widgets/messaging.vue:
title: "メッセージ" title: "メッセージ"
@ -1182,14 +1314,12 @@ mobile/views/components/friends-maker.vue:
refresh: "もっと見る" refresh: "もっと見る"
close: "閉じる" close: "閉じる"
mobile/views/components/note.vue: mobile/views/components/note.vue:
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
mobile/views/components/note-detail.vue: mobile/views/components/note-detail.vue:
reply: "返信" reply: "返信"
reaction: "リアクション" reaction: "リアクション"
reposted-by: "{}がRenote"
private: "この投稿は非公開です" private: "この投稿は非公開です"
deleted: "この投稿は削除されました" deleted: "この投稿は削除されました"
location: "位置情報" location: "位置情報"
@ -1294,11 +1424,6 @@ mobile/views/pages/selectdrive.vue:
select-file: "ファイルを選択" select-file: "ファイルを選択"
mobile/views/pages/settings.vue: mobile/views/pages/settings.vue:
signed-in-as: "{}としてサインイン中" signed-in-as: "{}としてサインイン中"
lang: "言語"
lang-tip: "変更はページの再読み込み後に反映されます。"
recommended: "推奨"
auto: "自動"
specify-language: "言語を指定"
design: "デザインと表示" design: "デザインと表示"
dark-mode: "ダークモード" dark-mode: "ダークモード"
i-am-under-limited-internet: "私は通信を制限されている" i-am-under-limited-internet: "私は通信を制限されている"
@ -1315,23 +1440,16 @@ mobile/views/pages/settings.vue:
notification-position: "通知の表示" notification-position: "通知の表示"
notification-position-bottom: "下" notification-position-bottom: "下"
notification-position-top: "上" notification-position-top: "上"
theme: "テーマ"
behavior: "動作" behavior: "動作"
fetch-on-scroll: "スクロールで自動読み込み" fetch-on-scroll: "スクロールで自動読み込み"
note-visibility: "投稿の公開範囲" note-visibility: "投稿の公開範囲"
default-note-visibility: "デフォルトの公開範囲" default-note-visibility: "デフォルトの公開範囲"
remember-note-visibility: "投稿の公開範囲を記憶する" remember-note-visibility: "投稿の公開範囲を記憶する"
web-search-engine: "ウェブ検索エンジン"
web-search-engine-desc: "例: https://www.google.com/?#q={{query}}"
disable-via-mobile: "「モバイルからの投稿」フラグを付けない" disable-via-mobile: "「モバイルからの投稿」フラグを付けない"
load-raw-images: "添付された画像を高画質で表示する" load-raw-images: "添付された画像を高画質で表示する"
load-remote-media: "リモートサーバーのメディアを表示する" load-remote-media: "リモートサーバーのメディアを表示する"
twitter: "Twitter連携"
twitter-connect: "Twitterアカウントに接続する"
twitter-reconnect: "再接続する"
twitter-disconnect: "切断する"
github: "GitHub連携"
github-connect: "GitHubアカウントに接続する"
github-reconnect: "再接続する"
github-disconnect: "切断する"
update: "Misskey Update" update: "Misskey Update"
version: "バージョン:" version: "バージョン:"
latest-version: "最新のバージョン:" latest-version: "最新のバージョン:"
@ -1345,7 +1463,6 @@ mobile/views/pages/settings.vue:
signout: "サインアウト" signout: "サインアウト"
sound: "サウンド" sound: "サウンド"
enable-sounds: "サウンドを有効にする" enable-sounds: "サウンドを有効にする"
mark-as-read-all-unread-notes: "すべての投稿を既読にする"
password: "パスワード" password: "パスワード"
mobile/views/pages/user.vue: mobile/views/pages/user.vue:
follows-you: "フォローされています" follows-you: "フォローされています"
@ -1355,12 +1472,14 @@ mobile/views/pages/user.vue:
overview: "概要" overview: "概要"
timeline: "タイムライン" timeline: "タイムライン"
media: "メディア" media: "メディア"
is-suspended: "このユーザーは凍結されています。"
mute: "ミュート" mute: "ミュート"
unmute: "ミュート解除" unmute: "ミュート解除"
block: "ブロック" block: "ブロック"
unblock: "ブロック解除" unblock: "ブロック解除"
years-old: "{age}歳" years-old: "{age}歳"
push-to-list: "リストに追加"
select-list: "リストを選択してください"
list-pushed: "{user}を{list}に追加しました"
mobile/views/pages/user/home.vue: mobile/views/pages/user/home.vue:
recent-notes: "最近の投稿" recent-notes: "最近の投稿"
images: "画像" images: "画像"
@ -1406,6 +1525,7 @@ deck/deck.user-column.vue:
posts: "投稿" posts: "投稿"
following: "フォロー" following: "フォロー"
followers: "フォロワー" followers: "フォロワー"
mention: "メンション"
images: "画像" images: "画像"
activity: "アクティビティ" activity: "アクティビティ"
timeline: "タイムライン" timeline: "タイムライン"

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,8 @@
{ {
"name": "misskey", "name": "misskey",
"author": "syuilo <i@syuilo.com>", "author": "syuilo <i@syuilo.com>",
"version": "10.51.1", "version": "10.74.0",
"clientVersion": "2.0.11802", "clientVersion": "2.0.13345",
"codename": "nighthike", "codename": "nighthike",
"main": "./built/index.js", "main": "./built/index.js",
"private": true, "private": true,
@ -20,24 +20,23 @@
"format": "gulp format" "format": "gulp format"
}, },
"dependencies": { "dependencies": {
"@fortawesome/fontawesome-svg-core": "1.2.8", "@fortawesome/fontawesome-svg-core": "1.2.12",
"@fortawesome/free-brands-svg-icons": "5.5.0", "@fortawesome/free-brands-svg-icons": "5.6.3",
"@fortawesome/free-regular-svg-icons": "5.5.0", "@fortawesome/free-regular-svg-icons": "5.5.0",
"@fortawesome/free-solid-svg-icons": "5.5.0", "@fortawesome/free-solid-svg-icons": "5.6.3",
"@fortawesome/vue-fontawesome": "0.1.2", "@fortawesome/vue-fontawesome": "0.1.2",
"@koa/cors": "2.2.2", "@koa/cors": "2.2.3",
"@prezzemolo/rap": "0.1.2", "@prezzemolo/rap": "0.1.2",
"@prezzemolo/zip": "0.0.3", "@prezzemolo/zip": "0.0.3",
"@types/bcryptjs": "2.4.2", "@types/bcryptjs": "2.4.2",
"@types/chai-http": "3.0.5", "@types/chai-http": "3.0.5",
"@types/dateformat": "1.0.1", "@types/dateformat": "3.0.0",
"@types/debug": "0.0.31", "@types/debug": "0.0.31",
"@types/deep-equal": "1.0.1", "@types/deep-equal": "1.0.1",
"@types/double-ended-queue": "2.1.0", "@types/double-ended-queue": "2.1.0",
"@types/elasticsearch": "5.0.28", "@types/elasticsearch": "5.0.30",
"@types/file-type": "5.2.1", "@types/file-type": "10.6.0",
"@types/gulp": "3.8.36", "@types/gulp": "3.8.36",
"@types/gulp-htmlmin": "1.3.32",
"@types/gulp-mocha": "0.0.32", "@types/gulp-mocha": "0.0.32",
"@types/gulp-rename": "0.0.33", "@types/gulp-rename": "0.0.33",
"@types/gulp-replace": "0.0.31", "@types/gulp-replace": "0.0.31",
@ -45,15 +44,16 @@
"@types/gulp-util": "3.0.34", "@types/gulp-util": "3.0.34",
"@types/is-root": "1.0.0", "@types/is-root": "1.0.0",
"@types/is-url": "1.2.28", "@types/is-url": "1.2.28",
"@types/js-yaml": "3.11.2", "@types/js-yaml": "3.11.4",
"@types/koa": "2.0.46", "@types/katex": "0.5.0",
"@types/koa-bodyparser": "5.0.1", "@types/koa": "2.0.48",
"@types/koa-bodyparser": "5.0.2",
"@types/koa-compress": "2.0.8", "@types/koa-compress": "2.0.8",
"@types/koa-favicon": "2.0.19", "@types/koa-favicon": "2.0.19",
"@types/koa-logger": "3.1.1", "@types/koa-logger": "3.1.1",
"@types/koa-mount": "3.0.1", "@types/koa-mount": "3.0.1",
"@types/koa-multer": "1.0.0", "@types/koa-multer": "1.0.0",
"@types/koa-router": "7.0.33", "@types/koa-router": "7.0.35",
"@types/koa-send": "4.1.1", "@types/koa-send": "4.1.1",
"@types/koa-views": "2.0.3", "@types/koa-views": "2.0.3",
"@types/koa__cors": "2.2.3", "@types/koa__cors": "2.2.3",
@ -62,31 +62,33 @@
"@types/mocha": "5.2.5", "@types/mocha": "5.2.5",
"@types/mongodb": "3.1.14", "@types/mongodb": "3.1.14",
"@types/ms": "0.7.30", "@types/ms": "0.7.30",
"@types/node": "10.12.2", "@types/node": "10.12.18",
"@types/nodemailer": "4.6.5",
"@types/oauth": "0.9.1", "@types/oauth": "0.9.1",
"@types/parsimmon": "1.10.0",
"@types/portscanner": "2.1.0", "@types/portscanner": "2.1.0",
"@types/pug": "2.0.4", "@types/pug": "2.0.4",
"@types/qrcode": "1.3.0", "@types/qrcode": "1.3.0",
"@types/ratelimiter": "2.1.28", "@types/ratelimiter": "2.1.28",
"@types/redis": "2.8.7", "@types/redis": "2.8.10",
"@types/request": "2.48.1", "@types/request": "2.48.1",
"@types/request-promise-native": "1.0.15", "@types/request-promise-native": "1.0.15",
"@types/rimraf": "2.0.2", "@types/rimraf": "2.0.2",
"@types/seedrandom": "2.4.27", "@types/seedrandom": "2.4.27",
"@types/sharp": "0.21.0", "@types/sharp": "0.21.0",
"@types/showdown": "1.7.5", "@types/showdown": "1.9.0",
"@types/speakeasy": "2.0.3", "@types/speakeasy": "2.0.3",
"@types/systeminformation": "3.23.0", "@types/systeminformation": "3.23.1",
"@types/tinycolor2": "1.4.1", "@types/tinycolor2": "1.4.1",
"@types/tmp": "0.0.33", "@types/tmp": "0.0.33",
"@types/uuid": "3.4.4", "@types/uuid": "3.4.4",
"@types/webpack": "4.4.18", "@types/webpack": "4.4.21",
"@types/webpack-stream": "3.2.10", "@types/webpack-stream": "3.2.10",
"@types/websocket": "0.0.40", "@types/websocket": "0.0.40",
"@types/ws": "6.0.1", "@types/ws": "6.0.1",
"animejs": "2.2.0", "animejs": "2.2.0",
"apexcharts": "2.2.0", "apexcharts": "2.5.1",
"autobind-decorator": "2.2.1", "autobind-decorator": "2.4.0",
"autosize": "4.0.2", "autosize": "4.0.2",
"autwh": "0.1.0", "autwh": "0.1.0",
"bcryptjs": "2.4.3", "bcryptjs": "2.4.3",
@ -104,43 +106,43 @@
"debug": "4.1.0", "debug": "4.1.0",
"deep-equal": "1.0.1", "deep-equal": "1.0.1",
"deepcopy": "0.6.3", "deepcopy": "0.6.3",
"diskusage": "0.2.5", "diskusage": "1.0.0",
"double-ended-queue": "2.1.0-0", "double-ended-queue": "2.1.0-0",
"elasticsearch": "15.2.0", "elasticsearch": "15.2.0",
"emojilib": "2.3.0", "emojilib": "2.4.0",
"escape-regexp": "0.0.1", "escape-regexp": "0.0.1",
"eslint": "5.8.0", "eslint": "5.11.1",
"eslint-plugin-vue": "4.7.1", "eslint-plugin-vue": "5.0.0",
"eventemitter3": "3.1.0", "eventemitter3": "3.1.0",
"feed": "2.0.2",
"file-loader": "2.0.0", "file-loader": "2.0.0",
"file-type": "10.4.0", "file-type": "10.7.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",
"gulp-htmlmin": "5.0.1",
"gulp-imagemin": "4.1.0", "gulp-imagemin": "4.1.0",
"gulp-mocha": "6.0.0", "gulp-mocha": "6.0.0",
"gulp-pug": "4.0.1",
"gulp-rename": "1.4.0", "gulp-rename": "1.4.0",
"gulp-replace": "1.0.0", "gulp-replace": "1.0.0",
"gulp-sourcemaps": "2.6.4", "gulp-sourcemaps": "2.6.4",
"gulp-stylus": "2.7.0", "gulp-stylus": "2.7.0",
"gulp-tslint": "8.1.3", "gulp-tslint": "8.1.3",
"gulp-typescript": "4.0.2", "gulp-typescript": "5.0.0",
"gulp-uglify": "3.0.1", "gulp-uglify": "3.0.1",
"gulp-util": "3.0.8", "gulp-util": "3.0.8",
"gulp-yaml": "2.0.2", "gulp-yaml": "2.0.2",
"hard-source-webpack-plugin": "0.12.0", "hard-source-webpack-plugin": "0.13.1",
"html-minifier": "3.5.21", "html-minifier": "3.5.21",
"http-signature": "1.2.0", "http-signature": "1.2.0",
"insert-text-at-cursor": "0.1.1", "insert-text-at-cursor": "0.1.1",
"is-root": "2.0.0", "is-root": "2.0.0",
"is-url": "1.2.4", "is-url": "1.2.4",
"js-yaml": "3.12.0", "js-yaml": "3.12.0",
"jsdom": "13.0.0", "jsdom": "13.1.0",
"json5": "2.1.0", "json5": "2.1.0",
"json5-loader": "1.0.1", "json5-loader": "1.0.1",
"koa": "2.6.1", "katex": "0.10.0",
"koa": "2.6.2",
"koa-bodyparser": "4.2.1", "koa-bodyparser": "4.2.1",
"koa-compress": "3.0.0", "koa-compress": "3.0.0",
"koa-favicon": "2.0.1", "koa-favicon": "2.0.1",
@ -152,25 +154,30 @@
"koa-send": "5.0.0", "koa-send": "5.0.0",
"koa-slow": "2.1.0", "koa-slow": "2.1.0",
"koa-views": "6.1.4", "koa-views": "6.1.4",
"loader-utils": "1.1.0", "langmap": "0.0.16",
"minio": "7.0.1", "loader-utils": "1.2.3",
"lookup-dns-cache": "2.1.0",
"minio": "7.0.2",
"mkdirp": "0.5.1", "mkdirp": "0.5.1",
"mocha": "5.2.0", "mocha": "5.2.0",
"moji": "0.5.1", "moji": "0.5.1",
"moment": "2.22.2", "moment": "2.23.0",
"mongodb": "3.1.8", "mongodb": "3.1.10",
"monk": "6.0.6", "monk": "6.0.6",
"ms": "2.1.1", "ms": "2.1.1",
"nan": "2.11.1", "nan": "2.12.1",
"nested-property": "0.0.7", "nested-property": "0.0.7",
"nodemailer": "5.0.0",
"nprogress": "0.2.0", "nprogress": "0.2.0",
"object-assign-deep": "0.4.0", "object-assign-deep": "0.4.0",
"on-build-webpack": "0.1.0", "on-build-webpack": "0.1.0",
"os-utils": "0.0.14", "os-utils": "0.0.14",
"parse5": "5.1.0", "parse5": "5.1.0",
"parsimmon": "1.12.0",
"portscanner": "2.2.0", "portscanner": "2.2.0",
"postcss-loader": "3.0.0", "postcss-loader": "3.0.0",
"progress-bar-webpack-plugin": "1.11.0", "progress-bar-webpack-plugin": "1.11.0",
"promise-any": "0.2.0",
"promise-limit": "2.7.0", "promise-limit": "2.7.0",
"promise-sequential": "1.1.1", "promise-sequential": "1.1.1",
"pug": "2.0.3", "pug": "2.0.3",
@ -188,8 +195,8 @@
"rndstr": "1.0.0", "rndstr": "1.0.0",
"s-age": "1.1.2", "s-age": "1.1.2",
"seedrandom": "2.4.4", "seedrandom": "2.4.4",
"sharp": "0.21.0", "sharp": "0.21.1",
"showdown": "1.8.7", "showdown": "1.9.0",
"showdown-highlightjs-extension": "0.1.2", "showdown-highlightjs-extension": "0.1.2",
"speakeasy": "2.0.0", "speakeasy": "2.0.0",
"stringz": "1.0.0", "stringz": "1.0.0",
@ -197,43 +204,45 @@
"stylus": "0.54.5", "stylus": "0.54.5",
"stylus-loader": "3.0.2", "stylus-loader": "3.0.2",
"summaly": "2.2.0", "summaly": "2.2.0",
"systeminformation": "3.47.0", "systeminformation": "3.52.2",
"syuilo-password-strength": "0.0.1", "syuilo-password-strength": "0.0.1",
"terser-webpack-plugin": "1.1.0", "terser-webpack-plugin": "1.1.0",
"textarea-caret": "3.1.0", "textarea-caret": "3.1.0",
"tinycolor2": "1.4.1", "tinycolor2": "1.4.1",
"tmp": "0.0.33", "tmp": "0.0.33",
"ts-loader": "5.3.0", "ts-loader": "5.3.1",
"ts-node": "7.0.1", "ts-node": "7.0.1",
"tslint": "5.10.0", "tslint": "5.12.0",
"typescript": "3.1.6", "tslint-sonarts": "1.8.0",
"typescript-eslint-parser": "20.1.1", "typescript": "3.2.2",
"typescript-eslint-parser": "21.0.2",
"uglify-es": "3.3.9", "uglify-es": "3.3.9",
"url-loader": "1.1.2", "url-loader": "1.1.2",
"uuid": "3.3.2", "uuid": "3.3.2",
"v-animate-css": "0.0.2", "v-animate-css": "0.0.3",
"vue": "2.5.17", "vue": "2.5.17",
"vue-color": "2.7.0", "vue-color": "2.7.0",
"vue-content-loading": "1.5.3", "vue-content-loading": "1.5.3",
"vue-cropperjs": "2.2.2", "vue-cropperjs": "3.0.0",
"vue-i18n": "8.3.1", "vue-i18n": "8.6.0",
"vue-js-modal": "1.3.26", "vue-js-modal": "1.3.28",
"vue-loader": "15.4.2", "vue-loader": "15.4.2",
"vue-marquee-text-component": "1.1.0", "vue-marquee-text-component": "1.1.1",
"vue-router": "3.0.1", "vue-router": "3.0.2",
"vue-sequential-entrance": "1.1.3",
"vue-style-loader": "4.1.2", "vue-style-loader": "4.1.2",
"vue-svg-inline-loader": "1.2.1", "vue-svg-inline-loader": "1.2.7",
"vue-template-compiler": "2.5.17", "vue-template-compiler": "2.5.17",
"vuedraggable": "2.16.0", "vuedraggable": "2.17.0",
"vuewordcloud": "18.7.11", "vuewordcloud": "18.7.11",
"vuex": "3.0.1", "vuex": "3.0.1",
"vuex-persistedstate": "2.5.4", "vuex-persistedstate": "2.5.4",
"web-push": "3.3.3", "web-push": "3.3.3",
"webfinger.js": "2.6.6", "webfinger.js": "2.7.0",
"webpack": "4.25.1", "webpack": "4.28.3",
"webpack-cli": "3.1.2", "webpack-cli": "3.1.2",
"websocket": "1.0.28", "websocket": "1.0.28",
"ws": "6.1.0", "ws": "6.1.2",
"xev": "2.0.1" "xev": "2.0.1"
} }
} }

View File

@ -61,11 +61,12 @@ export default abstract class Chart<T> {
constructor(name: string, grouped = false) { constructor(name: string, grouped = false) {
this.collection = db.get<Log<T>>(`chart.${name}`); this.collection = db.get<Log<T>>(`chart.${name}`);
if (grouped) { const keys = {
this.collection.createIndex({ span: -1, date: -1, group: -1 }, { unique: true }); span: -1,
} else { date: -1
this.collection.createIndex({ span: -1, date: -1 }, { unique: true }); } as { [key: string]: 1 | -1; };
} if (grouped) keys.group = -1;
this.collection.createIndex(keys, { unique: true });
} }
@autobind @autobind
@ -73,14 +74,14 @@ export default abstract class Chart<T> {
const query: Obj = {}; const query: Obj = {};
const dive = (x: Obj, path: string) => { const dive = (x: Obj, path: string) => {
Object.entries(x).forEach(([k, v]) => { for (const [k, v] of Object.entries(x)) {
const p = path ? `${path}.${k}` : k; const p = path ? `${path}.${k}` : k;
if (typeof v === 'number') { if (typeof v === 'number') {
query[p] = v; query[p] = v;
} else { } else {
dive(v, p); dive(v, p);
} }
}); }
}; };
dive(x, path); dive(x, path);
@ -333,14 +334,14 @@ export default abstract class Chart<T> {
* にする * にする
*/ */
const dive = (x: Obj, path?: string) => { const dive = (x: Obj, path?: string) => {
Object.entries(x).forEach(([k, v]) => { for (const [k, v] of Object.entries(x)) {
const p = path ? `${path}.${k}` : k; const p = path ? `${path}.${k}` : k;
if (typeof v == 'object') { if (typeof v == 'object') {
dive(v, p); dive(v, p);
} else { } else {
nestedProperty.set(res, p, chart.map(s => nestedProperty.get(s, p))); nestedProperty.set(res, p, chart.map(s => nestedProperty.get(s, p)));
} }
}); }
}; };
dive(chart[0]); dive(chart[0]);

View File

@ -9,6 +9,7 @@ import './style.styl';
import init from '../init'; import init from '../init';
import Index from './views/index.vue'; import Index from './views/index.vue';
import NotFound from '../common/views/pages/not-found.vue';
init(launch => { init(launch => {
document.title = 'Admin'; document.title = 'Admin';
@ -19,6 +20,7 @@ init(launch => {
base: '/admin/', base: '/admin/',
routes: [ routes: [
{ path: '/', component: Index }, { path: '/', component: Index },
{ path: '*', component: NotFound }
] ]
}); });

View File

@ -9,7 +9,7 @@
<ui-textarea v-model="announcement.text"> <ui-textarea v-model="announcement.text">
<span>{{ $t('text') }}</span> <span>{{ $t('text') }}</span>
</ui-textarea> </ui-textarea>
<ui-horizon-group> <ui-horizon-group class="fit-bottom">
<ui-button @click="save()"><fa :icon="['far', 'save']"/> {{ $t('save') }}</ui-button> <ui-button @click="save()"><fa :icon="['far', 'save']"/> {{ $t('save') }}</ui-button>
<ui-button @click="remove(i)"><fa :icon="['far', 'trash-alt']"/> {{ $t('remove') }}</ui-button> <ui-button @click="remove(i)"><fa :icon="['far', 'trash-alt']"/> {{ $t('remove') }}</ui-button>
</ui-horizon-group> </ui-horizon-group>
@ -48,15 +48,15 @@ export default Vue.extend({
}, },
remove(i) { remove(i) {
this.$root.alert({ this.$root.dialog({
type: 'warning', type: 'warning',
text: this.$t('_remove.are-you-sure').replace('$1', this.announcements.find((_, j) => j == i).title), text: this.$t('_remove.are-you-sure').replace('$1', this.announcements.find((_, j) => j == i).title),
showCancelButton: true showCancelButton: true
}).then(res => { }).then(({ canceled }) => {
if (!res) return; if (canceled) return;
this.announcements = this.announcements.filter((_, j) => j !== i); this.announcements = this.announcements.filter((_, j) => j !== i);
this.save(true); this.save(true);
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('_remove.removed') text: this.$t('_remove.removed')
}); });
@ -68,13 +68,13 @@ export default Vue.extend({
broadcasts: this.announcements broadcasts: this.announcements
}).then(() => { }).then(() => {
if (!silent) { if (!silent) {
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('saved') text: this.$t('saved')
}); });
} }
}).catch(e => { }).catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e text: e
}); });

View File

@ -56,7 +56,9 @@ export default Vue.extend({
}, },
onLogs(logs) { onLogs(logs) {
logs.reverse().forEach(log => this.onLog(log)); for (const log of logs.reverse()) {
this.onLog(log)
}
} }
} }
}); });
@ -67,7 +69,7 @@ export default Vue.extend({
display block display block
padding 12px 16px 16px 16px padding 12px 16px 16px 16px
height 250px height 250px
overflow hidden overflow auto
box-shadow 0 2px 4px rgba(0, 0, 0, 0.1) box-shadow 0 2px 4px rgba(0, 0, 0, 0.1)
background var(--adminDashboardCardBg) background var(--adminDashboardCardBg)
border-radius 8px border-radius 8px

View File

@ -132,7 +132,9 @@ export default Vue.extend({
}, },
onStatsLog(statsLog) { onStatsLog(statsLog) {
statsLog.reverse().forEach(stats => this.onStats(stats)); for (const stats of statsLog.reverse()) {
this.onStats(stats);
}
} }
} }
}); });

View File

@ -8,13 +8,19 @@
<p>{{ $t('@.ai-chan-kawaii') }}</p> <p>{{ $t('@.ai-chan-kawaii') }}</p>
</header> </header>
<marquee-text v-if="instances.length > 0" class="instances" :repeat="10" :duration="60">
<span v-for="instance in instances" class="instance">
<b :style="{ background: instance.bg }">{{ instance.host }}</b>{{ instance.notesCount | number }} / {{ instance.usersCount | number }}
</span>
</marquee-text>
<div v-if="stats" class="stats"> <div v-if="stats" class="stats">
<div> <div>
<div> <div>
<div><fa icon="user"/></div> <div><fa icon="user"/></div>
<div> <div>
<span>{{ $t('accounts') }}</span> <span>{{ $t('accounts') }}</span>
<b class="primary">{{ stats.originalUsersCount | number }}</b> <b>{{ stats.originalUsersCount | number }}</b>
</div> </div>
</div> </div>
<div> <div>
@ -27,7 +33,7 @@
<div><fa icon="pencil-alt"/></div> <div><fa icon="pencil-alt"/></div>
<div> <div>
<span>{{ $t('notes') }}</span> <span>{{ $t('notes') }}</span>
<b class="primary">{{ stats.originalNotesCount | number }}</b> <b>{{ stats.originalNotesCount | number }}</b>
</div> </div>
</div> </div>
<div> <div>
@ -84,6 +90,8 @@ import XCpuMemory from "./cpu-memory.vue";
import XCharts from "./charts.vue"; import XCharts from "./charts.vue";
import XApLog from "./ap-log.vue"; import XApLog from "./ap-log.vue";
import { faDatabase } from '@fortawesome/free-solid-svg-icons'; import { faDatabase } from '@fortawesome/free-solid-svg-icons';
import MarqueeText from 'vue-marquee-text-component';
import randomColor from 'randomcolor';
export default Vue.extend({ export default Vue.extend({
i18n: i18n('admin/views/dashboard.vue'), i18n: i18n('admin/views/dashboard.vue'),
@ -91,7 +99,8 @@ export default Vue.extend({
components: { components: {
XCpuMemory, XCpuMemory,
XCharts, XCharts,
XApLog XApLog,
MarqueeText
}, },
data() { data() {
@ -99,6 +108,8 @@ export default Vue.extend({
stats: null, stats: null,
connection: null, connection: null,
meta: null, meta: null,
instances: [],
clock: null,
faDatabase faDatabase
}; };
}, },
@ -106,22 +117,40 @@ export default Vue.extend({
created() { created() {
this.connection = this.$root.stream.useSharedConnection('serverStats'); this.connection = this.$root.stream.useSharedConnection('serverStats');
this.updateStats();
this.clock = setInterval(this.updateStats, 1000);
this.$root.getMeta().then(meta => { this.$root.getMeta().then(meta => {
this.meta = meta; this.meta = meta;
}); });
this.$root.api('stats').then(stats => { this.$root.api('instances', {
this.stats = stats; sort: '+notes'
}).then(instances => {
for (const i of instances) {
i.bg = randomColor({
seed: i.host,
luminosity: 'dark'
});
}
this.instances = instances;
}); });
}, },
beforeDestroy() { beforeDestroy() {
this.connection.dispose(); this.connection.dispose();
clearInterval(this.clock);
}, },
methods: { methods: {
setChartSrc(src) { setChartSrc(src) {
this.$refs.charts.setSrc(src); this.$refs.charts.setSrc(src);
},
updateStats() {
this.$root.api('stats', {}, false, true).then(stats => {
this.stats = stats;
});
} }
} }
}); });
@ -136,7 +165,6 @@ export default Vue.extend({
> header > header
display flex display flex
margin-bottom 16px
padding-bottom 16px padding-bottom 16px
border-bottom solid 1px var(--adminDashboardHeaderBorder) border-bottom solid 1px var(--adminDashboardHeaderBorder)
color var(--adminDashboardHeaderFg) color var(--adminDashboardHeaderFg)
@ -161,6 +189,20 @@ export default Vue.extend({
margin-left auto margin-left auto
margin-right 0 margin-right 0
> .instances
padding 16px
color var(--adminDashboardHeaderFg)
font-size 13px
>>> .instance
margin 0 10px
> b
padding 2px 6px
margin-right 4px
border-radius 4px
color #fff
> .stats > .stats
display flex display flex
justify-content space-between justify-content space-between
@ -201,9 +243,6 @@ export default Vue.extend({
> b > b
display block display block
&.primary
color var(--primary)
> div:last-child > div:last-child
display flex display flex
padding 6px 16px padding 6px 16px

View File

@ -0,0 +1,189 @@
<template>
<div class="pwnqwyet">
<ui-card>
<div slot="title"><fa :icon="faCloud"/> {{ $t('@.drive') }}</div>
<section class="fit-top">
<ui-horizon-group inputs>
<ui-select v-model="sort">
<span slot="label">{{ $t('sort.title') }}</span>
<option value="-createdAt">{{ $t('sort.createdAtAsc') }}</option>
<option value="+createdAt">{{ $t('sort.createdAtDesc') }}</option>
<option value="-size">{{ $t('sort.sizeAsc') }}</option>
<option value="+size">{{ $t('sort.sizeDesc') }}</option>
</ui-select>
<ui-select v-model="origin">
<span slot="label">{{ $t('origin.title') }}</span>
<option value="combined">{{ $t('origin.combined') }}</option>
<option value="local">{{ $t('origin.local') }}</option>
<option value="remote">{{ $t('origin.remote') }}</option>
</ui-select>
</ui-horizon-group>
<sequential-entrance animation="entranceFromTop" delay="25">
<div class="kidvdlkg" v-for="file in files">
<div @click="file._open = !file._open">
<div>
<div class="thumbnail" :style="thumbnail(file)"></div>
</div>
<div>
<header>
<b>{{ file.name }}</b>
<span class="username">@{{ file.user | acct }}</span>
</header>
<div>
<div>
<span style="margin-right:16px;">{{ file.type }}</span>
<span>{{ file.datasize | bytes }}</span>
</div>
<div><mk-time :time="file.createdAt" mode="detail"/></div>
</div>
</div>
</div>
<div v-show="file._open">
<ui-input readonly :value="file.url"></ui-input>
<ui-horizon-group>
<ui-button @click="toggleSensitive(file)" v-if="file.isSensitive"><fa :icon="faEye"/> {{ $t('unmark-as-sensitive') }}</ui-button>
<ui-button @click="toggleSensitive(file)" v-else><fa :icon="faEyeSlash"/> {{ $t('mark-as-sensitive') }}</ui-button>
<ui-button @click="del(file)"><fa :icon="faTrashAlt"/> {{ $t('delete') }}</ui-button>
</ui-horizon-group>
</div>
</div>
</sequential-entrance>
<ui-button v-if="existMore" @click="fetch">{{ $t('@.load-more') }}</ui-button>
</section>
</ui-card>
</div>
</template>
<script lang="ts">
import Vue from 'vue';
import i18n from '../../i18n';
import { faCloud } from '@fortawesome/free-solid-svg-icons';
import { faTrashAlt, faEye, faEyeSlash } from '@fortawesome/free-regular-svg-icons';
export default Vue.extend({
i18n: i18n('admin/views/drive.vue'),
data() {
return {
sort: '+createdAt',
origin: 'combined',
limit: 10,
offset: 0,
files: [],
existMore: false,
faCloud, faTrashAlt, faEye, faEyeSlash
};
},
watch: {
sort() {
this.files = [];
this.offset = 0;
this.fetch();
},
origin() {
this.files = [];
this.offset = 0;
this.fetch();
}
},
mounted() {
this.fetch();
},
methods: {
fetch() {
this.$root.api('admin/drive/files', {
origin: this.origin,
sort: this.sort,
offset: this.offset,
limit: this.limit + 1
}).then(files => {
if (files.length == this.limit + 1) {
files.pop();
this.existMore = true;
} else {
this.existMore = false;
}
for (const x of files) {
x._open = false;
}
this.files = this.files.concat(files);
this.offset += this.limit;
});
},
thumbnail(file: any): any {
return {
'background-color': file.properties.avgColor && file.properties.avgColor.length == 3 ? `rgb(${file.properties.avgColor.join(',')})` : 'transparent',
'background-image': `url(${file.thumbnailUrl})`
};
},
async del(file: any) {
const process = async () => {
await this.$root.api('drive/files/delete', { fileId: file.id });
this.$root.dialog({
type: 'success',
text: this.$t('deleted')
});
};
await process().catch(e => {
this.$root.dialog({
type: 'error',
text: e.toString()
});
});
},
toggleSensitive(file: any) {
this.$root.api('drive/files/update', {
fileId: file.id,
isSensitive: !file.isSensitive
});
file.isSensitive = !file.isSensitive;
},
}
});
</script>
<style lang="stylus" scoped>
.pwnqwyet
@media (min-width 500px)
padding 16px
.kidvdlkg
padding 16px 0
border-top solid 1px var(--faceDivider)
> div:first-child
display flex
cursor pointer
> div:nth-child(1)
> .thumbnail
display block
width 64px
height 64px
background-size cover
background-position center center
> div:nth-child(2)
flex 1
padding-left 16px
@media (max-width 500px)
font-size 14px
> header
word-break break-word
> .username
margin-left 8px
opacity 0.7
</style>

View File

@ -24,24 +24,28 @@
<ui-card> <ui-card>
<div slot="title"><fa :icon="faGrin"/> {{ $t('emojis.title') }}</div> <div slot="title"><fa :icon="faGrin"/> {{ $t('emojis.title') }}</div>
<section v-for="emoji in emojis"> <section v-for="emoji in emojis" class="oryfrbft">
<img :src="emoji.url" :alt="emoji.name" style="width: 64px;"/> <div>
<ui-horizon-group inputs> <img :src="emoji.url" :alt="emoji.name" style="width: 64px;"/>
<ui-input v-model="emoji.name"> </div>
<span>{{ $t('add-emoji.name') }}</span> <div>
<ui-horizon-group>
<ui-input v-model="emoji.name">
<span>{{ $t('add-emoji.name') }}</span>
</ui-input>
<ui-input v-model="emoji.aliases">
<span>{{ $t('add-emoji.aliases') }}</span>
</ui-input>
</ui-horizon-group>
<ui-input v-model="emoji.url">
<i slot="icon"><fa icon="link"/></i>
<span>{{ $t('add-emoji.url') }}</span>
</ui-input> </ui-input>
<ui-input v-model="emoji.aliases"> <ui-horizon-group class="fit-bottom">
<span>{{ $t('add-emoji.aliases') }}</span> <ui-button @click="updateEmoji(emoji)"><fa :icon="['far', 'save']"/> {{ $t('emojis.update') }}</ui-button>
</ui-input> <ui-button @click="removeEmoji(emoji)"><fa :icon="['far', 'trash-alt']"/> {{ $t('emojis.remove') }}</ui-button>
</ui-horizon-group> </ui-horizon-group>
<ui-input v-model="emoji.url"> </div>
<i slot="icon"><fa icon="link"/></i>
<span>{{ $t('add-emoji.url') }}</span>
</ui-input>
<ui-horizon-group>
<ui-button @click="updateEmoji(emoji)"><fa :icon="['far', 'save']"/> {{ $t('emojis.update') }}</ui-button>
<ui-button @click="removeEmoji(emoji)"><fa :icon="['far', 'trash-alt']"/> {{ $t('emojis.remove') }}</ui-button>
</ui-horizon-group>
</section> </section>
</ui-card> </ui-card>
</div> </div>
@ -75,13 +79,13 @@ export default Vue.extend({
url: this.url, url: this.url,
aliases: this.aliases.split(' ').filter(x => x.length > 0) aliases: this.aliases.split(' ').filter(x => x.length > 0)
}).then(() => { }).then(() => {
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('add-emoji.added') text: this.$t('add-emoji.added')
}); });
this.fetchEmojis(); this.fetchEmojis();
}).catch(e => { }).catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e text: e
}); });
@ -91,7 +95,9 @@ export default Vue.extend({
fetchEmojis() { fetchEmojis() {
this.$root.api('admin/emoji/list').then(emojis => { this.$root.api('admin/emoji/list').then(emojis => {
emojis.reverse(); emojis.reverse();
emojis.forEach(e => e.aliases = (e.aliases || []).join(' ')); for (const e of emojis) {
e.aliases = (e.aliases || []).join(' ');
}
this.emojis = emojis; this.emojis = emojis;
}); });
}, },
@ -103,12 +109,12 @@ export default Vue.extend({
url: emoji.url, url: emoji.url,
aliases: emoji.aliases.split(' ').filter(x => x.length > 0) aliases: emoji.aliases.split(' ').filter(x => x.length > 0)
}).then(() => { }).then(() => {
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('updated') text: this.$t('updated')
}); });
}).catch(e => { }).catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e text: e
}); });
@ -116,23 +122,23 @@ export default Vue.extend({
}, },
removeEmoji(emoji) { removeEmoji(emoji) {
this.$root.alert({ this.$root.dialog({
type: 'warning', type: 'warning',
text: this.$t('remove-emoji.are-you-sure').replace('$1', emoji.name), text: this.$t('remove-emoji.are-you-sure').replace('$1', emoji.name),
showCancelButton: true showCancelButton: true
}).then(res => { }).then(({ canceled }) => {
if (!res) return; if (canceled) return;
this.$root.api('admin/emoji/remove', { this.$root.api('admin/emoji/remove', {
id: emoji.id id: emoji.id
}).then(() => { }).then(() => {
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('remove-emoji.removed') text: this.$t('remove-emoji.removed')
}); });
this.fetchEmojis(); this.fetchEmojis();
}).catch(e => { }).catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e text: e
}); });
@ -148,4 +154,21 @@ export default Vue.extend({
@media (min-width 500px) @media (min-width 500px)
padding 16px padding 16px
.oryfrbft
@media (min-width 500px)
display flex
> div:first-child
@media (max-width 500px)
padding-bottom 16px
> img
vertical-align bottom
> div:last-child
flex 1
@media (min-width 500px)
padding-left 16px
</style> </style>

View File

@ -15,19 +15,18 @@
</div> </div>
<div class="me"> <div class="me">
<img class="avatar" :src="$store.state.i.avatarUrl" alt="avatar"/> <img class="avatar" :src="$store.state.i.avatarUrl" alt="avatar"/>
<p class="name">{{ $store.state.i | userName }}</p> <p class="name"><mk-user-name :user="$store.state.i"/></p>
</div> </div>
<ul> <ul>
<li @click="nav('dashboard')" :class="{ active: page == 'dashboard' }"><fa icon="home" fixed-width/>{{ $t('dashboard') }}</li> <li @click="nav('dashboard')" :class="{ active: page == 'dashboard' }"><fa icon="home" fixed-width/>{{ $t('dashboard') }}</li>
<li @click="nav('instance')" :class="{ active: page == 'instance' }"><fa icon="cog" fixed-width/>{{ $t('instance') }}</li> <li @click="nav('instance')" :class="{ active: page == 'instance' }"><fa icon="cog" fixed-width/>{{ $t('instance') }}</li>
<li @click="nav('moderators')" :class="{ active: page == 'moderators' }"><fa :icon="faHeadset" fixed-width/>{{ $t('moderators') }}</li> <li @click="nav('moderators')" :class="{ active: page == 'moderators' }"><fa :icon="faHeadset" fixed-width/>{{ $t('moderators') }}</li>
<li @click="nav('users')" :class="{ active: page == 'users' }"><fa icon="users" fixed-width/>{{ $t('users') }}</li> <li @click="nav('users')" :class="{ active: page == 'users' }"><fa icon="users" fixed-width/>{{ $t('users') }}</li>
<li @click="nav('drive')" :class="{ active: page == 'drive' }"><fa icon="cloud" fixed-width/>{{ $t('@.drive') }}</li>
<!-- <li @click="nav('federation')" :class="{ active: page == 'federation' }"><fa :icon="faShareAlt" fixed-width/>{{ $t('federation') }}</li> -->
<li @click="nav('emoji')" :class="{ active: page == 'emoji' }"><fa :icon="faGrin" fixed-width/>{{ $t('emoji') }}</li> <li @click="nav('emoji')" :class="{ active: page == 'emoji' }"><fa :icon="faGrin" fixed-width/>{{ $t('emoji') }}</li>
<li @click="nav('announcements')" :class="{ active: page == 'announcements' }"><fa icon="broadcast-tower" fixed-width/>{{ $t('announcements') }}</li> <li @click="nav('announcements')" :class="{ active: page == 'announcements' }"><fa icon="broadcast-tower" fixed-width/>{{ $t('announcements') }}</li>
<li @click="nav('hashtags')" :class="{ active: page == 'hashtags' }"><fa icon="hashtag" fixed-width/>{{ $t('hashtags') }}</li> <li @click="nav('hashtags')" :class="{ active: page == 'hashtags' }"><fa icon="hashtag" fixed-width/>{{ $t('hashtags') }}</li>
<!-- <li @click="nav('drive')" :class="{ active: page == 'drive' }"><fa icon="cloud" fixed-width/>{{ $t('@.drive') }}</li> -->
<!-- <li @click="nav('update')" :class="{ active: page == 'update' }">{{ $t('update') }}</li> -->
</ul> </ul>
<div class="back-to-misskey"> <div class="back-to-misskey">
<a href="/"><fa :icon="faArrowLeft"/> {{ $t('back-to-misskey') }}</a> <a href="/"><fa :icon="faArrowLeft"/> {{ $t('back-to-misskey') }}</a>
@ -37,9 +36,6 @@
</div> </div>
</nav> </nav>
<main> <main>
<marquee-text v-if="instances.length > 0" class="instances" :repeat="10" :duration="20">
<span v-for="instance in instances" class="instance"><b :style="{ background: instance.bg }">{{ instance.host }}</b>{{ instance.notesCount | number }}</span>
</marquee-text>
<div class="page"> <div class="page">
<div v-if="page == 'dashboard'"><x-dashboard/></div> <div v-if="page == 'dashboard'"><x-dashboard/></div>
<div v-if="page == 'instance'"><x-instance/></div> <div v-if="page == 'instance'"><x-instance/></div>
@ -48,7 +44,7 @@
<div v-if="page == 'emoji'"><x-emoji/></div> <div v-if="page == 'emoji'"><x-emoji/></div>
<div v-if="page == 'announcements'"><x-announcements/></div> <div v-if="page == 'announcements'"><x-announcements/></div>
<div v-if="page == 'hashtags'"><x-hashtags/></div> <div v-if="page == 'hashtags'"><x-hashtags/></div>
<div v-if="page == 'drive'"></div> <div v-if="page == 'drive'"><x-drive/></div>
<div v-if="page == 'update'"></div> <div v-if="page == 'update'"></div>
</div> </div>
</main> </main>
@ -66,10 +62,9 @@ import XEmoji from "./emoji.vue";
import XAnnouncements from "./announcements.vue"; import XAnnouncements from "./announcements.vue";
import XHashtags from "./hashtags.vue"; import XHashtags from "./hashtags.vue";
import XUsers from "./users.vue"; import XUsers from "./users.vue";
import { faHeadset, faArrowLeft } from '@fortawesome/free-solid-svg-icons'; import XDrive from "./drive.vue";
import { faHeadset, faArrowLeft, faShareAlt } from '@fortawesome/free-solid-svg-icons';
import { faGrin } from '@fortawesome/free-regular-svg-icons'; import { faGrin } from '@fortawesome/free-regular-svg-icons';
import MarqueeText from 'vue-marquee-text-component';
import randomColor from 'randomcolor';
// Detect the user agent // Detect the user agent
const ua = navigator.userAgent.toLowerCase(); const ua = navigator.userAgent.toLowerCase();
@ -85,7 +80,7 @@ export default Vue.extend({
XAnnouncements, XAnnouncements,
XHashtags, XHashtags,
XUsers, XUsers,
MarqueeText XDrive,
}, },
provide: { provide: {
isMobile isMobile
@ -96,25 +91,12 @@ export default Vue.extend({
version, version,
isMobile, isMobile,
navOpend: !isMobile, navOpend: !isMobile,
instances: [],
faGrin, faGrin,
faArrowLeft, faArrowLeft,
faHeadset faHeadset,
faShareAlt
}; };
}, },
created() {
this.$root.api('instances', {
sort: '+notes'
}).then(instances => {
instances.forEach(i => {
i.bg = randomColor({
seed: i.host,
luminosity: 'dark'
});
});
this.instances = instances;
});
},
methods: { methods: {
nav(page: string) { nav(page: string) {
this.page = page; this.page = page;
@ -285,22 +267,8 @@ export default Vue.extend({
width 100% width 100%
padding 0 0 0 250px padding 0 0 0 250px
> .instances
padding 8px
background rgba(0, 0, 0, 0.7)
color #fff
font-size 14px
>>> .instance
margin 0 10px
> b
padding 0px 6px
margin-right 4px
border-radius 4px
> .page > .page
max-width 1300px max-width 1150px
&.isMobile &.isMobile
> main > main

View File

@ -6,17 +6,23 @@
<ui-input :value="host" readonly>{{ $t('host') }}</ui-input> <ui-input :value="host" readonly>{{ $t('host') }}</ui-input>
<ui-input v-model="name">{{ $t('instance-name') }}</ui-input> <ui-input v-model="name">{{ $t('instance-name') }}</ui-input>
<ui-textarea v-model="description">{{ $t('instance-description') }}</ui-textarea> <ui-textarea v-model="description">{{ $t('instance-description') }}</ui-textarea>
<ui-input v-model="mascotImageUrl"><i slot="icon"><fa icon="link"/></i>{{ $t('logo-url') }}</ui-input>
<ui-input v-model="bannerUrl"><i slot="icon"><fa icon="link"/></i>{{ $t('banner-url') }}</ui-input> <ui-input v-model="bannerUrl"><i slot="icon"><fa icon="link"/></i>{{ $t('banner-url') }}</ui-input>
<ui-input v-model="errorImageUrl"><i slot="icon"><fa icon="link"/></i>{{ $t('error-image-url') }}</ui-input>
<ui-input v-model="languages"><i slot="icon"><fa icon="language"/></i>{{ $t('languages') }}<span slot="desc">{{ $t('languages-desc') }}</span></ui-input> <ui-input v-model="languages"><i slot="icon"><fa icon="language"/></i>{{ $t('languages') }}<span slot="desc">{{ $t('languages-desc') }}</span></ui-input>
</section> </section>
<section class="fit-bottom"> <section class="fit-bottom">
<header><fa :icon="faHeadset"/> {{ $t('maintainer-config') }}</header> <header><fa :icon="faHeadset"/> {{ $t('maintainer-config') }}</header>
<ui-input v-model="maintainerName">{{ $t('maintainer-name') }}</ui-input> <ui-input v-model="maintainerName">{{ $t('maintainer-name') }}</ui-input>
<ui-input v-model="maintainerEmail" type="email"><i slot="icon"><fa :icon="['far', 'envelope']"/></i>{{ $t('maintainer-email') }}</ui-input> <ui-input v-model="maintainerEmail" type="email"><i slot="icon"><fa :icon="farEnvelope"/></i>{{ $t('maintainer-email') }}</ui-input>
</section> </section>
<section class="fit-top fit-bottom"> <section class="fit-top fit-bottom">
<ui-input v-model="maxNoteTextLength">{{ $t('max-note-text-length') }}</ui-input> <ui-input v-model="maxNoteTextLength">{{ $t('max-note-text-length') }}</ui-input>
</section> </section>
<section>
<ui-switch v-model="disableRegistration">{{ $t('disable-registration') }}</ui-switch>
<ui-switch v-model="disableLocalTimeline">{{ $t('disable-local-timeline') }}</ui-switch>
</section>
<section class="fit-bottom"> <section class="fit-bottom">
<header><fa icon="cloud"/> {{ $t('drive-config') }}</header> <header><fa icon="cloud"/> {{ $t('drive-config') }}</header>
<ui-switch v-model="cacheRemoteFiles">{{ $t('cache-remote-files') }}<span slot="desc">{{ $t('cache-remote-files-desc') }}</span></ui-switch> <ui-switch v-model="cacheRemoteFiles">{{ $t('cache-remote-files') }}<span slot="desc">{{ $t('cache-remote-files-desc') }}</span></ui-switch>
@ -27,8 +33,10 @@
<header><fa :icon="faShieldAlt"/> {{ $t('recaptcha-config') }}</header> <header><fa :icon="faShieldAlt"/> {{ $t('recaptcha-config') }}</header>
<ui-switch v-model="enableRecaptcha">{{ $t('enable-recaptcha') }}</ui-switch> <ui-switch v-model="enableRecaptcha">{{ $t('enable-recaptcha') }}</ui-switch>
<ui-info>{{ $t('recaptcha-info') }}</ui-info> <ui-info>{{ $t('recaptcha-info') }}</ui-info>
<ui-input v-model="recaptchaSiteKey" :disabled="!enableRecaptcha"><i slot="icon"><fa icon="key"/></i>{{ $t('recaptcha-site-key') }}</ui-input> <ui-horizon-group inputs>
<ui-input v-model="recaptchaSecretKey" :disabled="!enableRecaptcha"><i slot="icon"><fa icon="key"/></i>{{ $t('recaptcha-secret-key') }}</ui-input> <ui-input v-model="recaptchaSiteKey" :disabled="!enableRecaptcha"><i slot="icon"><fa icon="key"/></i>{{ $t('recaptcha-site-key') }}</ui-input>
<ui-input v-model="recaptchaSecretKey" :disabled="!enableRecaptcha"><i slot="icon"><fa icon="key"/></i>{{ $t('recaptcha-secret-key') }}</ui-input>
</ui-horizon-group>
</section> </section>
<section> <section>
<header><fa :icon="faGhost"/> {{ $t('proxy-account-config') }}</header> <header><fa :icon="faGhost"/> {{ $t('proxy-account-config') }}</header>
@ -37,10 +45,37 @@
<ui-info warn>{{ $t('proxy-account-warn') }}</ui-info> <ui-info warn>{{ $t('proxy-account-warn') }}</ui-info>
</section> </section>
<section> <section>
<ui-switch v-model="disableRegistration">{{ $t('disable-registration') }}</ui-switch> <header><fa :icon="farEnvelope"/> {{ $t('email-config') }}</header>
<ui-switch v-model="enableEmail">{{ $t('enable-email') }}<span slot="desc">{{ $t('email-config-info') }}</span></ui-switch>
<ui-input v-model="email" type="email" :disabled="!enableEmail">{{ $t('email') }}</ui-input>
<ui-horizon-group inputs>
<ui-input v-model="smtpHost" :disabled="!enableEmail">{{ $t('smtp-host') }}</ui-input>
<ui-input v-model="smtpPort" type="number" :disabled="!enableEmail">{{ $t('smtp-port') }}</ui-input>
</ui-horizon-group>
<ui-horizon-group inputs>
<ui-input v-model="smtpUser" :disabled="!enableEmail">{{ $t('smtp-user') }}</ui-input>
<ui-input v-model="smtpPass" :disabled="!enableEmail">{{ $t('smtp-pass') }}</ui-input>
</ui-horizon-group>
<ui-switch v-model="smtpSecure" :disabled="!enableEmail">{{ $t('smtp-secure') }}<span slot="desc">{{ $t('smtp-secure-info') }}</span></ui-switch>
</section> </section>
<section> <section>
<ui-switch v-model="disableLocalTimeline">{{ $t('disable-local-timeline') }}</ui-switch> <header><fa :icon="faBolt"/> {{ $t('serviceworker-config') }}</header>
<ui-switch v-model="enableServiceWorker">{{ $t('enable-serviceworker') }}<span slot="desc">{{ $t('serviceworker-info') }}</span></ui-switch>
<ui-info>{{ $t('vapid-info') }}<br><code>npm i web-push -g<br>web-push generate-vapid-keys</code></ui-info>
<ui-horizon-group inputs class="fit-bottom">
<ui-input v-model="swPublicKey" :disabled="!enableServiceWorker"><i slot="icon"><fa icon="key"/></i>{{ $t('vapid-publickey') }}</ui-input>
<ui-input v-model="swPrivateKey" :disabled="!enableServiceWorker"><i slot="icon"><fa icon="key"/></i>{{ $t('vapid-privatekey') }}</ui-input>
</ui-horizon-group>
</section>
<section>
<header>summaly Proxy</header>
<ui-input v-model="summalyProxy">URL</ui-input>
</section>
<section>
<header><fa :icon="faUserPlus"/> {{ $t('user-recommendation-config') }}</header>
<ui-switch v-model="enableExternalUserRecommendation">{{ $t('enable-external-user-recommendation') }}</ui-switch>
<ui-input v-model="externalUserRecommendationEngine" :disabled="!enableExternalUserRecommendation">{{ $t('external-user-recommendation-engine') }}<span slot="desc">{{ $t('external-user-recommendation-engine-desc') }}</span></ui-input>
<ui-input v-model="externalUserRecommendationTimeout" type="number" :disabled="!enableExternalUserRecommendation">{{ $t('external-user-recommendation-timeout') }}<span slot="suffix">ms</span><span slot="desc">{{ $t('external-user-recommendation-timeout-desc') }}</span></ui-input>
</section> </section>
<section> <section>
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button> <ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
@ -59,9 +94,11 @@
<div slot="title"><fa :icon="['fab', 'twitter']"/> {{ $t('twitter-integration-config') }}</div> <div slot="title"><fa :icon="['fab', 'twitter']"/> {{ $t('twitter-integration-config') }}</div>
<section> <section>
<ui-switch v-model="enableTwitterIntegration">{{ $t('enable-twitter-integration') }}</ui-switch> <ui-switch v-model="enableTwitterIntegration">{{ $t('enable-twitter-integration') }}</ui-switch>
<ui-info>{{ $t('twitter-integration-info') }}</ui-info> <ui-horizon-group>
<ui-input v-model="twitterConsumerKey" :disabled="!enableTwitterIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('twitter-integration-consumer-key') }}</ui-input> <ui-input v-model="twitterConsumerKey" :disabled="!enableTwitterIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('twitter-integration-consumer-key') }}</ui-input>
<ui-input v-model="twitterConsumerSecret" :disabled="!enableTwitterIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('twitter-integration-consumer-secret') }}</ui-input> <ui-input v-model="twitterConsumerSecret" :disabled="!enableTwitterIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('twitter-integration-consumer-secret') }}</ui-input>
</ui-horizon-group>
<ui-info>{{ $t('twitter-integration-info', { url: `${url}/api/tw/cb` }) }}</ui-info>
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button> <ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
</section> </section>
</ui-card> </ui-card>
@ -70,9 +107,24 @@
<div slot="title"><fa :icon="['fab', 'github']"/> {{ $t('github-integration-config') }}</div> <div slot="title"><fa :icon="['fab', 'github']"/> {{ $t('github-integration-config') }}</div>
<section> <section>
<ui-switch v-model="enableGithubIntegration">{{ $t('enable-github-integration') }}</ui-switch> <ui-switch v-model="enableGithubIntegration">{{ $t('enable-github-integration') }}</ui-switch>
<ui-info>{{ $t('github-integration-info') }}</ui-info> <ui-horizon-group>
<ui-input v-model="githubClientId" :disabled="!enableGithubIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('github-integration-client-id') }}</ui-input> <ui-input v-model="githubClientId" :disabled="!enableGithubIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('github-integration-client-id') }}</ui-input>
<ui-input v-model="githubClientSecret" :disabled="!enableGithubIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('github-integration-client-secret') }}</ui-input> <ui-input v-model="githubClientSecret" :disabled="!enableGithubIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('github-integration-client-secret') }}</ui-input>
</ui-horizon-group>
<ui-info>{{ $t('github-integration-info', { url: `${url}/api/gh/cb` }) }}</ui-info>
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
</section>
</ui-card>
<ui-card>
<div slot="title"><fa :icon="['fab', 'discord']"/> {{ $t('discord-integration-config') }}</div>
<section>
<ui-switch v-model="enableDiscordIntegration">{{ $t('enable-discord-integration') }}</ui-switch>
<ui-horizon-group>
<ui-input v-model="discordClientId" :disabled="!enableDiscordIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('discord-integration-client-id') }}</ui-input>
<ui-input v-model="discordClientSecret" :disabled="!enableDiscordIntegration"><i slot="icon"><fa icon="key"/></i>{{ $t('discord-integration-client-secret') }}</ui-input>
</ui-horizon-group>
<ui-info>{{ $t('discord-integration-info', { url: `${url}/api/dc/cb` }) }}</ui-info>
<ui-button @click="updateMeta">{{ $t('save') }}</ui-button> <ui-button @click="updateMeta">{{ $t('save') }}</ui-button>
</section> </section>
</ui-card> </ui-card>
@ -82,21 +134,25 @@
<script lang="ts"> <script lang="ts">
import Vue from 'vue'; import Vue from 'vue';
import i18n from '../../i18n'; import i18n from '../../i18n';
import { host } from '../../config'; import { url, host } from '../../config';
import { toUnicode } from 'punycode'; import { toUnicode } from 'punycode';
import { faHeadset, faShieldAlt, faGhost } from '@fortawesome/free-solid-svg-icons'; import { faHeadset, faShieldAlt, faGhost, faUserPlus, faBolt } from '@fortawesome/free-solid-svg-icons';
import { faEnvelope as farEnvelope } from '@fortawesome/free-regular-svg-icons';
export default Vue.extend({ export default Vue.extend({
i18n: i18n('admin/views/instance.vue'), i18n: i18n('admin/views/instance.vue'),
data() { data() {
return { return {
url,
host: toUnicode(host), host: toUnicode(host),
maintainerName: null, maintainerName: null,
maintainerEmail: null, maintainerEmail: null,
disableRegistration: false, disableRegistration: false,
disableLocalTimeline: false, disableLocalTimeline: false,
mascotImageUrl: null,
bannerUrl: null, bannerUrl: null,
errorImageUrl: null,
name: null, name: null,
description: null, description: null,
languages: null, languages: null,
@ -113,9 +169,26 @@ export default Vue.extend({
enableGithubIntegration: false, enableGithubIntegration: false,
githubClientId: null, githubClientId: null,
githubClientSecret: null, githubClientSecret: null,
enableDiscordIntegration: false,
discordClientId: null,
discordClientSecret: null,
proxyAccount: null, proxyAccount: null,
inviteCode: null, inviteCode: null,
faHeadset, faShieldAlt, faGhost enableExternalUserRecommendation: false,
externalUserRecommendationEngine: null,
externalUserRecommendationTimeout: null,
summalyProxy: null,
enableEmail: false,
email: null,
smtpSecure: false,
smtpHost: null,
smtpPort: null,
smtpUser: null,
smtpPass: null,
enableServiceWorker: false,
swPublicKey: null,
swPrivateKey: null,
faHeadset, faShieldAlt, faGhost, faUserPlus, farEnvelope, faBolt
}; };
}, },
@ -123,7 +196,11 @@ export default Vue.extend({
this.$root.getMeta().then(meta => { this.$root.getMeta().then(meta => {
this.maintainerName = meta.maintainer.name; this.maintainerName = meta.maintainer.name;
this.maintainerEmail = meta.maintainer.email; this.maintainerEmail = meta.maintainer.email;
this.disableRegistration = meta.disableRegistration;
this.disableLocalTimeline = meta.disableLocalTimeline;
this.mascotImageUrl = meta.mascotImageUrl;
this.bannerUrl = meta.bannerUrl; this.bannerUrl = meta.bannerUrl;
this.errorImageUrl = meta.errorImageUrl;
this.name = meta.name; this.name = meta.name;
this.description = meta.description; this.description = meta.description;
this.languages = meta.langs.join(' '); this.languages = meta.langs.join(' ');
@ -141,6 +218,23 @@ export default Vue.extend({
this.enableGithubIntegration = meta.enableGithubIntegration; this.enableGithubIntegration = meta.enableGithubIntegration;
this.githubClientId = meta.githubClientId; this.githubClientId = meta.githubClientId;
this.githubClientSecret = meta.githubClientSecret; this.githubClientSecret = meta.githubClientSecret;
this.enableDiscordIntegration = meta.enableDiscordIntegration;
this.discordClientId = meta.discordClientId;
this.discordClientSecret = meta.discordClientSecret;
this.enableExternalUserRecommendation = meta.enableExternalUserRecommendation;
this.externalUserRecommendationEngine = meta.externalUserRecommendationEngine;
this.externalUserRecommendationTimeout = meta.externalUserRecommendationTimeout;
this.summalyProxy = meta.summalyProxy;
this.enableEmail = meta.enableEmail;
this.email = meta.email;
this.smtpSecure = meta.smtpSecure;
this.smtpHost = meta.smtpHost;
this.smtpPort = meta.smtpPort;
this.smtpUser = meta.smtpUser;
this.smtpPass = meta.smtpPass;
this.enableServiceWorker = meta.enableServiceWorker;
this.swPublicKey = meta.swPublickey;
this.swPrivateKey = meta.swPrivateKey;
}); });
}, },
@ -149,7 +243,7 @@ export default Vue.extend({
this.$root.api('admin/invite').then(x => { this.$root.api('admin/invite').then(x => {
this.inviteCode = x.code; this.inviteCode = x.code;
}).catch(e => { }).catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e text: e
}); });
@ -162,7 +256,9 @@ export default Vue.extend({
maintainerEmail: this.maintainerEmail, maintainerEmail: this.maintainerEmail,
disableRegistration: this.disableRegistration, disableRegistration: this.disableRegistration,
disableLocalTimeline: this.disableLocalTimeline, disableLocalTimeline: this.disableLocalTimeline,
mascotImageUrl: this.mascotImageUrl,
bannerUrl: this.bannerUrl, bannerUrl: this.bannerUrl,
errorImageUrl: this.errorImageUrl,
name: this.name, name: this.name,
description: this.description, description: this.description,
langs: this.languages.split(' '), langs: this.languages.split(' '),
@ -180,13 +276,30 @@ export default Vue.extend({
enableGithubIntegration: this.enableGithubIntegration, enableGithubIntegration: this.enableGithubIntegration,
githubClientId: this.githubClientId, githubClientId: this.githubClientId,
githubClientSecret: this.githubClientSecret, githubClientSecret: this.githubClientSecret,
enableDiscordIntegration: this.enableDiscordIntegration,
discordClientId: this.discordClientId,
discordClientSecret: this.discordClientSecret,
enableExternalUserRecommendation: this.enableExternalUserRecommendation,
externalUserRecommendationEngine: this.externalUserRecommendationEngine,
externalUserRecommendationTimeout: parseInt(this.externalUserRecommendationTimeout, 10),
summalyProxy: this.summalyProxy,
enableEmail: this.enableEmail,
email: this.email,
smtpSecure: this.smtpSecure,
smtpHost: this.smtpHost,
smtpPort: parseInt(this.smtpPort, 10),
smtpUser: this.smtpUser,
smtpPass: this.smtpPass,
enableServiceWorker: this.enableServiceWorker,
swPublicKey: this.swPublicKey,
swPrivateKey: this.swPrivateKey
}).then(() => { }).then(() => {
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('saved') text: this.$t('saved')
}); });
}).catch(e => { }).catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e text: e
}); });

View File

@ -34,14 +34,14 @@ export default Vue.extend({
const process = async () => { const process = async () => {
const user = await this.$root.api('users/show', parseAcct(this.username)); const user = await this.$root.api('users/show', parseAcct(this.username));
await this.$root.api('admin/moderators/add', { userId: user.id }); await this.$root.api('admin/moderators/add', { userId: user.id });
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('add-moderator.added') text: this.$t('add-moderator.added')
}); });
}; };
await process().catch(e => { await process().catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e.toString() text: e.toString()
}); });

View File

@ -1,42 +1,65 @@
<template> <template>
<div class="ucnffhbtogqgscfmqcymwmmupoknpfsw"> <div class="ucnffhbtogqgscfmqcymwmmupoknpfsw">
<ui-card> <ui-card>
<div slot="title">{{ $t('verify-user') }}</div> <div slot="title"><fa :icon="faTerminal"/> {{ $t('operation') }}</div>
<section class="fit-top"> <section class="fit-top">
<ui-input v-model="verifyUsername" type="text"> <ui-input v-model="target" type="text">
<span slot="prefix">@</span> <span>{{ $t('username-or-userid') }}</span>
</ui-input> </ui-input>
<ui-button @click="verifyUser" :disabled="verifying">{{ $t('verify') }}</ui-button> <ui-button @click="resetPassword"><fa :icon="faKey"/> {{ $t('reset-password') }}</ui-button>
<ui-horizon-group>
<ui-button @click="verifyUser" :disabled="verifying"><fa :icon="faCertificate"/> {{ $t('verify') }}</ui-button>
<ui-button @click="unverifyUser" :disabled="unverifying">{{ $t('unverify') }}</ui-button>
</ui-horizon-group>
<ui-horizon-group>
<ui-button @click="suspendUser" :disabled="suspending"><fa :icon="faSnowflake"/> {{ $t('suspend') }}</ui-button>
<ui-button @click="unsuspendUser" :disabled="unsuspending">{{ $t('unsuspend') }}</ui-button>
</ui-horizon-group>
<ui-button @click="showUser"><fa :icon="faSearch"/> {{ $t('lookup') }}</ui-button>
<ui-textarea v-if="user" :value="user | json5" readonly tall style="margin-top:16px;"></ui-textarea>
</section> </section>
</ui-card> </ui-card>
<ui-card> <ui-card>
<div slot="title">{{ $t('unverify-user') }}</div> <div slot="title"><fa :icon="faUsers"/> {{ $t('users.title') }}</div>
<section class="fit-top"> <section class="fit-top">
<ui-input v-model="unverifyUsername" type="text"> <ui-horizon-group inputs>
<span slot="prefix">@</span> <ui-select v-model="sort">
</ui-input> <span slot="label">{{ $t('users.sort.title') }}</span>
<ui-button @click="unverifyUser" :disabled="unverifying">{{ $t('unverify') }}</ui-button> <option value="-createdAt">{{ $t('users.sort.createdAtAsc') }}</option>
</section> <option value="+createdAt">{{ $t('users.sort.createdAtDesc') }}</option>
</ui-card> <option value="-updatedAt">{{ $t('users.sort.updatedAtAsc') }}</option>
<option value="+updatedAt">{{ $t('users.sort.updatedAtDesc') }}</option>
<ui-card> </ui-select>
<div slot="title">{{ $t('suspend-user') }}</div> <ui-select v-model="origin">
<section class="fit-top"> <span slot="label">{{ $t('users.origin.title') }}</span>
<ui-input v-model="suspendUsername" type="text"> <option value="combined">{{ $t('users.origin.combined') }}</option>
<span slot="prefix">@</span> <option value="local">{{ $t('users.origin.local') }}</option>
</ui-input> <option value="remote">{{ $t('users.origin.remote') }}</option>
<ui-button @click="suspendUser" :disabled="suspending">{{ $t('suspend') }}</ui-button> </ui-select>
</section> </ui-horizon-group>
</ui-card> <sequential-entrance animation="entranceFromTop" delay="25">
<div class="kofvwchc" v-for="user in users">
<ui-card> <div>
<div slot="title">{{ $t('unsuspend-user') }}</div> <a :href="user | userPage(null, true)">
<section class="fit-top"> <mk-avatar class="avatar" :user="user" :disable-link="true"/>
<ui-input v-model="unsuspendUsername" type="text"> </a>
<span slot="prefix">@</span> </div>
</ui-input> <div>
<ui-button @click="unsuspendUser" :disabled="unsuspending">{{ $t('unsuspend') }}</ui-button> <header>
<b><mk-user-name :user="user"/></b>
<span class="username">@{{ user | acct }}</span>
</header>
<div>
<span>{{ $t('users.updatedAt') }}: <mk-time :time="user.updatedAt" mode="detail"/></span>
</div>
<div>
<span>{{ $t('users.createdAt') }}: <mk-time :time="user.createdAt" mode="detail"/></span>
</div>
</div>
</div>
</sequential-entrance>
<ui-button v-if="existMore" @click="fetchUsers">{{ $t('@.load-more') }}</ui-button>
</section> </section>
</ui-card> </ui-card>
</div> </div>
@ -46,38 +69,98 @@
import Vue from 'vue'; import Vue from 'vue';
import i18n from '../../i18n'; import i18n from '../../i18n';
import parseAcct from "../../../../misc/acct/parse"; import parseAcct from "../../../../misc/acct/parse";
import { faCertificate, faUsers, faTerminal, faSearch, faKey } from '@fortawesome/free-solid-svg-icons';
import { faSnowflake } from '@fortawesome/free-regular-svg-icons';
export default Vue.extend({ export default Vue.extend({
i18n: i18n('admin/views/users.vue'), i18n: i18n('admin/views/users.vue'),
data() { data() {
return { return {
verifyUsername: null, user: null,
target: null,
verifying: false, verifying: false,
unverifyUsername: null,
unverifying: false, unverifying: false,
suspendUsername: null,
suspending: false, suspending: false,
unsuspendUsername: null, unsuspending: false,
unsuspending: false sort: '+createdAt',
origin: 'combined',
limit: 10,
offset: 0,
users: [],
existMore: false,
faTerminal, faCertificate, faUsers, faSnowflake, faSearch, faKey
}; };
}, },
watch: {
sort() {
this.users = [];
this.offset = 0;
this.fetchUsers();
},
origin() {
this.users = [];
this.offset = 0;
this.fetchUsers();
}
},
mounted() {
this.fetchUsers();
},
methods: { methods: {
async fetchUser() {
try {
return await this.$root.api('users/show', this.target.startsWith('@') ? parseAcct(this.target) : { userId: this.target });
} catch (e) {
if (e == 'user not found') {
this.$root.dialog({
type: 'error',
text: this.$t('user-not-found')
});
} else {
this.$root.dialog({
type: 'error',
text: e.toString()
});
}
}
},
async showUser() {
const user = await this.fetchUser();
this.$root.api('admin/show-user', { userId: user.id }).then(info => {
this.user = info;
});
},
async resetPassword() {
const user = await this.fetchUser();
this.$root.api('admin/reset-password', { userId: user.id }).then(res => {
this.$root.dialog({
type: 'success',
text: this.$t('password-updated', { password: res.password })
});
});
},
async verifyUser() { async verifyUser() {
this.verifying = true; this.verifying = true;
const process = async () => { const process = async () => {
const user = await this.$root.api('users/show', parseAcct(this.verifyUsername)); const user = await this.fetchUser();
await this.$root.api('admin/verify-user', { userId: user.id }); await this.$root.api('admin/verify-user', { userId: user.id });
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('verified') text: this.$t('verified')
}); });
}; };
await process().catch(e => { await process().catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e.toString() text: e.toString()
}); });
@ -90,16 +173,16 @@ export default Vue.extend({
this.unverifying = true; this.unverifying = true;
const process = async () => { const process = async () => {
const user = await this.$root.api('users/show', parseAcct(this.unverifyUsername)); const user = await this.fetchUser();
await this.$root.api('admin/unverify-user', { userId: user.id }); await this.$root.api('admin/unverify-user', { userId: user.id });
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('unverified') text: this.$t('unverified')
}); });
}; };
await process().catch(e => { await process().catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e.toString() text: e.toString()
}); });
@ -112,16 +195,16 @@ export default Vue.extend({
this.suspending = true; this.suspending = true;
const process = async () => { const process = async () => {
const user = await this.$root.api('users/show', parseAcct(this.suspendUsername)); const user = await this.fetchUser();
await this.$root.api('admin/suspend-user', { userId: user.id }); await this.$root.api('admin/suspend-user', { userId: user.id });
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('suspended') text: this.$t('suspended')
}); });
}; };
await process().catch(e => { await process().catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e.toString() text: e.toString()
}); });
@ -134,22 +217,40 @@ export default Vue.extend({
this.unsuspending = true; this.unsuspending = true;
const process = async () => { const process = async () => {
const user = await this.$root.api('users/show', parseAcct(this.unsuspendUsername)); const user = await this.fetchUser();
await this.$root.api('admin/unsuspend-user', { userId: user.id }); await this.$root.api('admin/unsuspend-user', { userId: user.id });
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
text: this.$t('unsuspended') text: this.$t('unsuspended')
}); });
}; };
await process().catch(e => { await process().catch(e => {
this.$root.alert({ this.$root.dialog({
type: 'error', type: 'error',
text: e.toString() text: e.toString()
}); });
}); });
this.unsuspending = false; this.unsuspending = false;
},
fetchUsers() {
this.$root.api('users', {
origin: this.origin,
sort: this.sort,
offset: this.offset,
limit: this.limit + 1
}).then(users => {
if (users.length == this.limit + 1) {
users.pop();
this.existMore = true;
} else {
this.existMore = false;
}
this.users = this.users.concat(users);
this.offset += this.limit;
});
} }
} }
}); });
@ -160,4 +261,27 @@ export default Vue.extend({
@media (min-width 500px) @media (min-width 500px)
padding 16px padding 16px
.kofvwchc
display flex
padding 16px 0
border-top solid 1px var(--faceDivider)
> div:first-child
> a
> .avatar
width 64px
height 64px
> div:last-child
flex 1
padding-left 16px
@media (max-width 500px)
font-size 14px
> header
> .username
margin-left 8px
opacity 0.7
</style> </style>

View File

@ -10,3 +10,19 @@
opacity: 0; opacity: 0;
transform: scaleY(0); transform: scaleY(0);
} }
.entranceFromTop {
animation-duration: 0.5s;
animation-name: entranceFromTop;
}
@keyframes entranceFromTop {
from {
opacity: 0;
transform: translateY(-64px);
}
to {
opacity: 1;
transform: translateY(0);
}
}

View File

@ -9,6 +9,7 @@ import './style.styl';
import init from '../init'; import init from '../init';
import Index from './views/index.vue'; import Index from './views/index.vue';
import NotFound from '../common/views/pages/not-found.vue';
/** /**
* init * init
@ -20,6 +21,7 @@ init(launch => {
base: '/auth/', base: '/auth/',
routes: [ routes: [
{ path: '/:token', component: Index }, { path: '/:token', component: Index },
{ path: '*', component: NotFound }
] ]
}); });

View File

@ -17,9 +17,9 @@
//#region Apply theme //#region Apply theme
const theme = localStorage.getItem('theme'); const theme = localStorage.getItem('theme');
if (theme) { if (theme) {
Object.entries(JSON.parse(theme)).forEach(([k, v]) => { for (const [k, v] of Object.entries(JSON.parse(theme))) {
document.documentElement.style.setProperty(`--${k}`, v.toString()); document.documentElement.style.setProperty(`--${k}`, v.toString());
}); }
} }
//#endregion //#endregion
@ -41,6 +41,7 @@
if (`${url.pathname}/`.startsWith('/dev/')) app = 'dev'; if (`${url.pathname}/`.startsWith('/dev/')) app = 'dev';
if (`${url.pathname}/`.startsWith('/auth/')) app = 'auth'; if (`${url.pathname}/`.startsWith('/auth/')) app = 'auth';
if (`${url.pathname}/`.startsWith('/admin/')) app = 'admin'; if (`${url.pathname}/`.startsWith('/admin/')) app = 'admin';
if (`${url.pathname}/`.startsWith('/test/')) app = 'test';
//#endregion //#endregion
// Script version // Script version
@ -69,11 +70,14 @@
//#endregion //#endregion
let locale = localStorage.getItem('locale'); let locale = localStorage.getItem('locale');
if (locale == null) { const localeKey = localStorage.getItem('localeKey');
if (locale == null || localeKey != `${ver}.${lang}`) {
const locale = await fetch(`/assets/locales/${lang}.json?ver=${ver}`) const locale = await fetch(`/assets/locales/${lang}.json?ver=${ver}`)
.then(response => response.json()); .then(response => response.json());
localStorage.setItem('locale', JSON.stringify(locale)); localStorage.setItem('locale', JSON.stringify(locale));
localStorage.setItem('localeKey', `${ver}.${lang}`);
} }
// Detect the user agent // Detect the user agent
@ -156,7 +160,7 @@
navigator.serviceWorker.controller.postMessage('clear'); navigator.serviceWorker.controller.postMessage('clear');
navigator.serviceWorker.getRegistrations().then(registrations => { navigator.serviceWorker.getRegistrations().then(registrations => {
registrations.forEach(registration => registration.unregister()); for (const registration of registrations) registration.unregister();
}); });
} catch (e) { } catch (e) {
console.error(e); console.error(e);

View File

@ -1,6 +1,6 @@
import Vue from 'vue'; import Vue from 'vue';
export default function<T extends object>(data: { export default function <T extends object>(data: {
name: string; name: string;
props?: () => T; props?: () => T;
}) { }) {
@ -53,11 +53,10 @@ export default function<T extends object>(data: {
mergeProps() { mergeProps() {
if (data.props) { if (data.props) {
const defaultProps = data.props(); const defaultProps = data.props();
Object.keys(defaultProps).forEach(prop => { for (const prop of Object.keys(defaultProps)) {
if (!this.props.hasOwnProperty(prop)) { if (this.props.hasOwnProperty(prop)) continue;
Vue.set(this.props, prop, defaultProps[prop]); Vue.set(this.props, prop, defaultProps[prop]);
} }
});
} }
}, },

View File

@ -28,15 +28,15 @@ const getKeyMap = keymap => Object.entries(keymap).map(([patterns, callback]): a
shift: false shift: false
} as pattern; } as pattern;
part.trim().split('+').forEach(key => { const keys = part.trim().split('+').map(x => x.trim().toLowerCase());
key = key.trim().toLowerCase(); for (const key of keys) {
switch (key) { switch (key) {
case 'ctrl': pattern.ctrl = true; break; case 'ctrl': pattern.ctrl = true; break;
case 'alt': pattern.alt = true; break; case 'alt': pattern.alt = true; break;
case 'shift': pattern.shift = true; break; case 'shift': pattern.shift = true; break;
default: pattern.which = keyCode(key).map(k => k.toLowerCase()); default: pattern.which = keyCode(key).map(k => k.toLowerCase());
} }
}); }
return pattern; return pattern;
}); });
@ -77,11 +77,7 @@ export default {
const matched = match(e, action.patterns); const matched = match(e, action.patterns);
if (matched) { if (matched) {
if (el._hotkey_global) { if (el._hotkey_global && match(e, targetReservedKeys)) return;
if (match(e, targetReservedKeys)) {
return;
}
}
e.preventDefault(); e.preventDefault();
e.stopPropagation(); e.stopPropagation();

View File

@ -14,19 +14,20 @@ export default async function($root: any, force = false, silent = false) {
navigator.serviceWorker.controller.postMessage('clear'); navigator.serviceWorker.controller.postMessage('clear');
} }
navigator.serviceWorker.getRegistrations().then(registrations => { const registrations = await navigator.serviceWorker.getRegistrations();
registrations.forEach(registration => registration.unregister()); for (const registration of registrations) {
}); registration.unregister();
}
} catch (e) { } catch (e) {
console.error(e); console.error(e);
} }
if (!silent) { /*if (!silent) {
$root.alert({ $root.dialog({
title: $root.$t('@.update-available-title'), title: $root.$t('@.update-available-title'),
text: $root.$t('@.update-available', { newer, current }) text: $root.$t('@.update-available', { newer, current })
}); });
} }*/
return newer; return newer;
} else { } else {

View File

@ -22,7 +22,7 @@ export default function(type, data): Notification {
case 'unreadMessagingMessage': case 'unreadMessagingMessage':
return { return {
title: '%i18n:common.notification.message-from%'.split("{}")[0] + `${getUserName(data.user)}` + '%i18n:common.notification.message-from%'.split("{}")[1] , title: '%i18n:common.notification.message-from%'.split('{}')[0] + `${getUserName(data.user)}` + '%i18n:common.notification.message-from%'.split('{}')[1] ,
body: data.text, // TODO: getMessagingMessageSummary(data), body: data.text, // TODO: getMessagingMessageSummary(data),
icon: data.user.avatarUrl icon: data.user.avatarUrl
}; };
@ -30,7 +30,7 @@ export default function(type, data): Notification {
case 'reversiInvited': case 'reversiInvited':
return { return {
title: '%i18n:common.notification.reversi-invited%', title: '%i18n:common.notification.reversi-invited%',
body: '%i18n:common.notification.reversi-invited-by%'.split("{}")[0] + `${getUserName(data.parent)}` + '%i18n:common.notification.reversi-invited-by%'.split("{}")[1], body: '%i18n:common.notification.reversi-invited-by%'.split('{}')[0] + `${getUserName(data.parent)}` + '%i18n:common.notification.reversi-invited-by%'.split('{}')[1],
icon: data.parent.avatarUrl icon: data.parent.avatarUrl
}; };
@ -38,21 +38,21 @@ export default function(type, data): Notification {
switch (data.type) { switch (data.type) {
case 'mention': case 'mention':
return { return {
title: '%i18n:common.notification.notified-by%'.split("{}")[0] + `${getUserName(data.user)}:` + '%i18n:common.notification.notified-by%'.split("{}")[1], title: '%i18n:common.notification.notified-by%'.split('{}')[0] + `${getUserName(data.user)}:` + '%i18n:common.notification.notified-by%'.split('{}')[1],
body: getNoteSummary(data), body: getNoteSummary(data),
icon: data.user.avatarUrl icon: data.user.avatarUrl
}; };
case 'reply': case 'reply':
return { return {
title: '%i18n:common.notification.reply-from%'.split("{}")[0] + `${getUserName(data.user)}` + '%i18n:common.notification.reply-from%'.split("{}")[1], title: '%i18n:common.notification.reply-from%'.split('{}')[0] + `${getUserName(data.user)}` + '%i18n:common.notification.reply-from%'.split('{}')[1],
body: getNoteSummary(data), body: getNoteSummary(data),
icon: data.user.avatarUrl icon: data.user.avatarUrl
}; };
case 'quote': case 'quote':
return { return {
title: '%i18n:common.notification.quoted-by%'.split("{}")[0] + `${getUserName(data.user)}` + '%i18n:common.notification.quoted-by%'.split("{}")[1], title: '%i18n:common.notification.quoted-by%'.split('{}')[0] + `${getUserName(data.user)}` + '%i18n:common.notification.quoted-by%'.split('{}')[1],
body: getNoteSummary(data), body: getNoteSummary(data),
icon: data.user.avatarUrl icon: data.user.avatarUrl
}; };

View File

@ -0,0 +1,25 @@
/**
* Format like the uptime command
*/
export default function(sec) {
if (!sec) return sec;
const day = Math.floor(sec / 86400);
const tod = sec % 86400;
// Days part in string: 2 days, 1 day, null
const d = day >= 2 ? `${day} days` : day >= 1 ? `${day} day` : null;
// Time part in string: 1 sec, 1 min, 1:01
const t
= tod < 60 ? `${Math.floor(tod)} sec`
: tod < 3600 ? `${Math.floor(tod / 60)} min`
: `${Math.floor(tod / 60 / 60)}:${Math.floor((tod / 60) % 60).toString().padStart(2, '0')}`;
let str = '';
if (d) str += `${d}, `;
str += t;
return str;
}

View File

@ -4,7 +4,7 @@ export default ($root: any) => {
require('fuckadblock'); require('fuckadblock');
function adBlockDetected() { function adBlockDetected() {
$root.alert({ $root.dialog({
title: $root.$t('@.adblock.detected'), title: $root.$t('@.adblock.detected'),
text: $root.$t('@.adblock.warning') text: $root.$t('@.adblock.warning')
}); });

View File

@ -2,7 +2,7 @@ const faces = [
'(=^・・^=)', '(=^・・^=)',
'v(\'ω\')v', 'v(\'ω\')v',
'🐡( \'-\' 🐡 )フグパンチ!!!!', '🐡( \'-\' 🐡 )フグパンチ!!!!',
'🖕(´・_・`)🖕', '✌️(´・_・`)✌️',
'(。><。)', '(。><。)',
'(Δ・x・Δ)' '(Δ・x・Δ)'
]; ];

View File

@ -3,8 +3,8 @@
export default (data: ArrayBuffer) => { export default (data: ArrayBuffer) => {
//const buf = new Buffer(data); //const buf = new Buffer(data);
//const hash = crypto.createHash("md5"); //const hash = crypto.createHash('md5');
//hash.update(buf); //hash.update(buf);
//return hash.digest("hex"); //return hash.digest('hex');
return ''; return '';
}; };

View File

@ -1,11 +0,0 @@
/**
* 中央値を求めます
* @param samples サンプル
*/
export default function(samples) {
if (!samples.length) return 0;
const numbers = samples.slice(0).sort((a, b) => a - b);
const middle = Math.floor(numbers.length / 2);
const isEven = numbers.length % 2 === 0;
return isEven ? (numbers[middle] + numbers[middle - 1]) / 2 : numbers[middle];
}

View File

@ -1,5 +1,5 @@
import parse from '../../../../mfm/parse'; import parse from '../../../../mfm/parse';
import { sum } from '../../../../prelude/array'; import { sum, unique } from '../../../../prelude/array';
import shouldMuteNote from './should-mute-note'; import shouldMuteNote from './should-mute-note';
import MkNoteMenu from '../views/components/note-menu.vue'; import MkNoteMenu from '../views/components/note-menu.vue';
import MkReactionPicker from '../views/components/reaction-picker.vue'; import MkReactionPicker from '../views/components/reaction-picker.vue';
@ -65,6 +65,10 @@ export default (opts: Opts = {}) => ({
return this.isRenote ? this.note.renote : this.note; return this.isRenote ? this.note.renote : this.note;
}, },
isMyNote(): boolean {
return this.$store.getters.isSignedIn && (this.$store.state.i.id === this.appearNote.userId);
},
reactionsCount(): number { reactionsCount(): number {
return this.appearNote.reactionCounts return this.appearNote.reactionCounts
? sum(Object.values(this.appearNote.reactionCounts)) ? sum(Object.values(this.appearNote.reactionCounts))
@ -78,9 +82,10 @@ export default (opts: Opts = {}) => ({
urls(): string[] { urls(): string[] {
if (this.appearNote.text) { if (this.appearNote.text) {
const ast = parse(this.appearNote.text); const ast = parse(this.appearNote.text);
return ast // TODO: 再帰的にURL要素がないか調べる
.filter(t => (t.type == 'url' || t.type == 'link') && !t.silent) return unique(ast
.map(t => t.url); .filter(t => ((t.node.type == 'url' || t.node.type == 'link') && t.node.props.url && !t.node.props.silent))
.map(t => t.node.props.url));
} else { } else {
return null; return null;
} }
@ -124,9 +129,7 @@ export default (opts: Opts = {}) => ({
source: this.$refs.reactButton, source: this.$refs.reactButton,
note: this.appearNote, note: this.appearNote,
showFocus: viaKeyboard, showFocus: viaKeyboard,
animation: !viaKeyboard, animation: !viaKeyboard
compact: opts.mobile,
big: opts.mobile
}).$once('closed', this.focus); }).$once('closed', this.focus);
}, },
@ -137,11 +140,19 @@ export default (opts: Opts = {}) => ({
}); });
}, },
undoReact(note) {
const oldReaction = note.myReaction;
if (!oldReaction) return;
this.$root.api('notes/reactions/delete', {
noteId: note.id
});
},
favorite() { favorite() {
this.$root.api('notes/favorites/create', { this.$root.api('notes/favorites/create', {
noteId: this.appearNote.id noteId: this.appearNote.id
}).then(() => { }).then(() => {
this.$root.alert({ this.$root.dialog({
type: 'success', type: 'success',
splash: true splash: true
}); });
@ -158,8 +169,7 @@ export default (opts: Opts = {}) => ({
this.$root.new(MkNoteMenu, { this.$root.new(MkNoteMenu, {
source: this.$refs.menuButton, source: this.$refs.menuButton,
note: this.appearNote, note: this.appearNote,
animation: !viaKeyboard, animation: !viaKeyboard
compact: opts.mobile,
}).$once('closed', this.focus); }).$once('closed', this.focus);
}, },

View File

@ -95,6 +95,7 @@ export default prop => ({
Vue.set(this.$_ns_target.reactionCounts, reaction, 0); Vue.set(this.$_ns_target.reactionCounts, reaction, 0);
} }
// Increment the count
this.$_ns_target.reactionCounts[reaction]++; this.$_ns_target.reactionCounts[reaction]++;
if (body.userId == this.$store.state.i.id) { if (body.userId == this.$store.state.i.id) {
@ -103,6 +104,26 @@ export default prop => ({
break; break;
} }
case 'unreacted': {
const reaction = body.reaction;
if (this.$_ns_target.reactionCounts == null) {
return;
}
if (this.$_ns_target.reactionCounts[reaction] == null) {
return;
}
// Decrement the count
if (this.$_ns_target.reactionCounts[reaction] > 0) this.$_ns_target.reactionCounts[reaction]--;
if (body.userId == this.$store.state.i.id) {
Vue.set(this.$_ns_target, 'myReaction', null);
}
break;
}
case 'pollVoted': { case 'pollVoted': {
if (body.userId == this.$store.state.i.id) return; if (body.userId == this.$store.state.i.id) return;
const choice = body.choice; const choice = body.choice;

View File

@ -2,27 +2,17 @@ export default function(me, settings, note) {
const isMyNote = note.userId == me.id; const isMyNote = note.userId == me.id;
const isPureRenote = note.renoteId != null && note.text == null && note.fileIds.length == 0 && note.poll == null; const isPureRenote = note.renoteId != null && note.text == null && note.fileIds.length == 0 && note.poll == null;
if (settings.showMyRenotes === false) { const includesMutedWords = (text: string) =>
if (isMyNote && isPureRenote) { text
return true; ? settings.mutedWords.some(q => q.length > 0 && !q.some(word => !text.includes(word)))
} : false;
}
if (settings.showRenotedMyNotes === false) { return (
if (isPureRenote && (note.renote.userId == me.id)) { (!isMyNote && note.reply && includesMutedWords(note.reply.text)) ||
return true; (!isMyNote && note.renote && includesMutedWords(note.renote.text)) ||
} (settings.showMyRenotes === false && isMyNote && isPureRenote) ||
} (settings.showRenotedMyNotes === false && isPureRenote && note.renote.userId == me.id) ||
(settings.showLocalRenotes === false && isPureRenote && note.renote.user.host == null) ||
if (settings.showLocalRenotes === false) { (!isMyNote && includesMutedWords(note.text))
if (isPureRenote && (note.renote.user.host == null)) { );
return true;
}
}
if (!isMyNote && note.text && settings.mutedWords.some(q => !q.some(word => !note.text.includes(word)))) {
return true;
}
return false;
} }

View File

@ -75,12 +75,10 @@ export default class Stream extends EventEmitter {
// チャンネル再接続 // チャンネル再接続
if (isReconnect) { if (isReconnect) {
this.sharedConnectionPools.forEach(p => { for (const p of this.sharedConnectionPools)
p.connect(); p.connect();
}); for (const c of this.nonSharedConnections)
this.nonSharedConnections.forEach(c => {
c.connect(); c.connect();
});
} }
} }
@ -113,9 +111,9 @@ export default class Stream extends EventEmitter {
connections = [this.nonSharedConnections.find(c => c.id === id)]; connections = [this.nonSharedConnections.find(c => c.id === id)];
} }
connections.filter(c => c != null).forEach(c => { for (const c of connections.filter(c => c != null)) {
c.emit(body.type, body.body); c.emit(body.type, body.body);
}); }
} else { } else {
this.emit(type, body); this.emit(type, body);
} }

View File

@ -2,6 +2,7 @@
<span class="mk-acct"> <span class="mk-acct">
<span class="name">@{{ user.username }}</span> <span class="name">@{{ user.username }}</span>
<span class="host" :class="{ fade: $store.state.settings.contrastedAcct }" v-if="user.host || detail || $store.state.settings.showFullAcct">@{{ user.host || host }}</span> <span class="host" :class="{ fade: $store.state.settings.contrastedAcct }" v-if="user.host || detail || $store.state.settings.showFullAcct">@{{ user.host || host }}</span>
<fa v-if="user.isLocked == true" class="locked" icon="lock" fixed-width/>
</span> </span>
</template> </template>
@ -23,4 +24,8 @@ export default Vue.extend({
.mk-acct .mk-acct
> .host.fade > .host.fade
opacity 0.5 opacity 0.5
> .locked
opacity 0.8
margin-left 0.5em
</style> </style>

View File

@ -32,7 +32,7 @@
<script lang="ts"> <script lang="ts">
import Vue from 'vue'; import Vue from 'vue';
import { themeColor } from '../../../config'; import * as tinycolor from 'tinycolor2';
export default Vue.extend({ export default Vue.extend({
props: { props: {
@ -75,7 +75,7 @@ export default Vue.extend({
return this.dark ? '#fff' : '#777'; return this.dark ? '#fff' : '#777';
}, },
hHandColor(): string { hHandColor(): string {
return themeColor; return tinycolor(getComputedStyle(document.documentElement).getPropertyValue('--primary')).toHexString();
}, },
ms(): number { ms(): number {

View File

@ -50,10 +50,13 @@ export default Vue.extend({
methods: { methods: {
regenerateToken() { regenerateToken() {
this.$input({ this.$root.dialog({
title: this.$t('enter-password'), title: this.$t('enter-password'),
type: 'password' input: {
}).then(password => { type: 'password'
}
}).then(({ canceled, result: password }) => {
if (canceled) return;
this.$root.api('i/regenerate_token', { this.$root.api('i/regenerate_token', {
password: password password: password
}); });

View File

@ -3,7 +3,9 @@
<ol class="users" ref="suggests" v-if="users.length > 0"> <ol class="users" ref="suggests" v-if="users.length > 0">
<li v-for="user in users" @click="complete(type, user)" @keydown="onKeydown" tabindex="-1"> <li v-for="user in users" @click="complete(type, user)" @keydown="onKeydown" tabindex="-1">
<img class="avatar" :src="user.avatarUrl" alt=""/> <img class="avatar" :src="user.avatarUrl" alt=""/>
<span class="name">{{ user | userName }}</span> <span class="name">
<mk-user-name :user="user"/>
</span>
<span class="username">@{{ user | acct }}</span> <span class="username">@{{ user | acct }}</span>
</li> </li>
</ol> </ol>
@ -42,8 +44,9 @@ const lib = Object.entries(emojilib.lib).filter((x: any) => {
}); });
const char2file = (char: string) => { const char2file = (char: string) => {
let codes = [...char].map(x => x.codePointAt(0).toString(16)); let codes = Array.from(char).map(x => x.codePointAt(0).toString(16));
if (!codes.includes('200d')) codes = codes.filter(x => x != 'fe0f'); if (!codes.includes('200d')) codes = codes.filter(x => x != 'fe0f');
codes = codes.filter(x => x && x.length);
return codes.join('-'); return codes.join('-');
}; };
@ -54,18 +57,18 @@ const emjdb: EmojiDef[] = lib.map((x: any) => ({
url: `https://twemoji.maxcdn.com/2/svg/${char2file(x[1].char)}.svg` url: `https://twemoji.maxcdn.com/2/svg/${char2file(x[1].char)}.svg`
})); }));
lib.forEach((x: any) => { for (const x of lib as any) {
if (x[1].keywords) { if (x[1].keywords) {
x[1].keywords.forEach(k => { for (const k of x[1].keywords) {
emjdb.push({ emjdb.push({
emoji: x[1].char, emoji: x[1].char,
name: k, name: k,
aliasOf: x[0], aliasOf: x[0],
url: `https://twemoji.maxcdn.com/2/svg/${char2file(x[1].char)}.svg` url: `https://twemoji.maxcdn.com/2/svg/${char2file(x[1].char)}.svg`
}); });
}); }
} }
}); }
emjdb.sort((a, b) => a.name.length - b.name.length); emjdb.sort((a, b) => a.name.length - b.name.length);
@ -117,7 +120,7 @@ export default Vue.extend({
const customEmojis = (this.$root.getMetaSync() || { emojis: [] }).emojis || []; const customEmojis = (this.$root.getMetaSync() || { emojis: [] }).emojis || [];
const emojiDefinitions: EmojiDef[] = []; const emojiDefinitions: EmojiDef[] = [];
customEmojis.forEach(x => { for (const x of customEmojis) {
emojiDefinitions.push({ emojiDefinitions.push({
name: x.name, name: x.name,
emoji: `:${x.name}:`, emoji: `:${x.name}:`,
@ -126,7 +129,7 @@ export default Vue.extend({
}); });
if (x.aliases) { if (x.aliases) {
x.aliases.forEach(alias => { for (const alias of x.aliases) {
emojiDefinitions.push({ emojiDefinitions.push({
name: alias, name: alias,
aliasOf: x.name, aliasOf: x.name,
@ -134,9 +137,9 @@ export default Vue.extend({
url: x.url, url: x.url,
isCustomEmoji: true isCustomEmoji: true
}); });
}); }
} }
}); }
emojiDefinitions.sort((a, b) => a.name.length - b.name.length); emojiDefinitions.sort((a, b) => a.name.length - b.name.length);
@ -145,9 +148,9 @@ export default Vue.extend({
this.textarea.addEventListener('keydown', this.onKeydown); this.textarea.addEventListener('keydown', this.onKeydown);
Array.from(document.querySelectorAll('body *')).forEach(el => { for (const el of Array.from(document.querySelectorAll('body *'))) {
el.addEventListener('mousedown', this.onMousedown); el.addEventListener('mousedown', this.onMousedown);
}); }
this.$nextTick(() => { this.$nextTick(() => {
this.exec(); this.exec();
@ -163,18 +166,18 @@ export default Vue.extend({
beforeDestroy() { beforeDestroy() {
this.textarea.removeEventListener('keydown', this.onKeydown); this.textarea.removeEventListener('keydown', this.onKeydown);
Array.from(document.querySelectorAll('body *')).forEach(el => { for (const el of Array.from(document.querySelectorAll('body *'))) {
el.removeEventListener('mousedown', this.onMousedown); el.removeEventListener('mousedown', this.onMousedown);
}); }
}, },
methods: { methods: {
exec() { exec() {
this.select = -1; this.select = -1;
if (this.$refs.suggests) { if (this.$refs.suggests) {
Array.from(this.items).forEach(el => { for (const el of Array.from(this.items)) {
el.removeAttribute('data-selected'); el.removeAttribute('data-selected');
}); }
} }
if (this.type == 'user') { if (this.type == 'user') {
@ -187,7 +190,8 @@ export default Vue.extend({
} else { } else {
this.$root.api('users/search', { this.$root.api('users/search', {
query: this.q, query: this.q,
limit: 30 limit: 10,
detail: false
}).then(users => { }).then(users => {
this.users = users; this.users = users;
this.fetching = false; this.fetching = false;
@ -312,9 +316,9 @@ export default Vue.extend({
}, },
applySelect() { applySelect() {
Array.from(this.items).forEach(el => { for (const el of Array.from(this.items)) {
el.removeAttribute('data-selected'); el.removeAttribute('data-selected');
}); }
this.items[this.select].setAttribute('data-selected', 'true'); this.items[this.select].setAttribute('data-selected', 'true');
(this.items[this.select] as any).focus(); (this.items[this.select] as any).focus();

View File

@ -1,21 +1,43 @@
<template> <template>
<button class="nrvgflfuaxwgkxoynpnumyookecqrrvh" @click="toggle">{{ value ? this.$t('hide') : this.$t('show') }}</button> <button class="nrvgflfuaxwgkxoynpnumyookecqrrvh" @click="toggle">
<b>{{ value ? this.$t('hide') : this.$t('show') }}</b>
<span v-if="!value">{{ this.label }}</span>
</button>
</template> </template>
<script lang="ts"> <script lang="ts">
import Vue from 'vue'; import Vue from 'vue';
import i18n from '../../../i18n'; import i18n from '../../../i18n';
import { length } from 'stringz';
import { concat } from '../../../../../prelude/array';
export default Vue.extend({ export default Vue.extend({
i18n: i18n('common/views/components/cw-button.vue'), i18n: i18n('common/views/components/cw-button.vue'),
props: { props: {
value: { value: {
type: Boolean, type: Boolean,
required: true required: true
},
note: {
type: Object,
required: true
}
},
computed: {
label(): string {
return concat([
this.note.text ? [this.$t('chars', { count: length(this.note.text) })] : [],
this.note.files && this.note.files.length !== 0 ? [this.$t('files', { count: this.note.files.length }) ] : [],
this.note.poll != null ? [this.$t('poll')] : []
] as string[][]).join(' / ');
} }
}, },
methods: { methods: {
length,
toggle() { toggle() {
this.$emit('input', !this.value); this.$emit('input', !this.value);
} }
@ -37,4 +59,12 @@ export default Vue.extend({
&:hover &:hover
background var(--cwButtonHoverBg) background var(--cwButtonHoverBg)
> span
margin-left 4px
&:before
content '('
&:after
content ')'
</style> </style>

View File

@ -2,12 +2,17 @@
<div class="felqjxyj" :class="{ splash }"> <div class="felqjxyj" :class="{ splash }">
<div class="bg" ref="bg" @click="onBgClick"></div> <div class="bg" ref="bg" @click="onBgClick"></div>
<div class="main" ref="main"> <div class="main" ref="main">
<div class="icon" :class="type"><fa :icon="icon"/></div> <div class="icon" v-if="!input && !select && !user" :class="type"><fa :icon="icon"/></div>
<header v-if="title" v-html="title"></header> <header v-if="title" v-html="title"></header>
<div class="body" v-if="text" v-html="text"></div> <div class="body" v-if="text" v-html="text"></div>
<ui-horizon-group no-grow class="buttons" v-if="!splash"> <ui-input v-if="input" v-model="inputValue" autofocus :type="input.type || 'text'" :placeholder="input.placeholder" @keydown="onInputKeydown"></ui-input>
<ui-button @click="ok" primary autofocus>OK</ui-button> <ui-input v-if="user" v-model="userInputValue" autofocus @keydown="onInputKeydown"><span slot="prefix">@</span></ui-input>
<ui-button @click="cancel" v-if="showCancelButton">Cancel</ui-button> <ui-select v-if="select" v-model="selectedValue">
<option v-for="item in select.items" :value="item.value">{{ item.text }}</option>
</ui-select>
<ui-horizon-group no-grow class="buttons fit-bottom" v-if="!splash">
<ui-button @click="ok" primary :autofocus="!input && !select && !user">OK</ui-button>
<ui-button @click="cancel" v-if="showCancelButton || input || select || user">Cancel</ui-button>
</ui-horizon-group> </ui-horizon-group>
</div> </div>
</div> </div>
@ -17,6 +22,7 @@
import Vue from 'vue'; import Vue from 'vue';
import * as anime from 'animejs'; import * as anime from 'animejs';
import { faTimesCircle, faQuestionCircle } from '@fortawesome/free-regular-svg-icons'; import { faTimesCircle, faQuestionCircle } from '@fortawesome/free-regular-svg-icons';
import parseAcct from "../../../../../misc/acct/parse";
export default Vue.extend({ export default Vue.extend({
props: { props: {
@ -33,6 +39,15 @@ export default Vue.extend({
type: String, type: String,
required: false required: false
}, },
input: {
required: false
},
select: {
required: false
},
user: {
required: false
},
showCancelButton: { showCancelButton: {
type: Boolean, type: Boolean,
default: false default: false
@ -43,6 +58,14 @@ export default Vue.extend({
} }
}, },
data() {
return {
inputValue: this.input && this.input.default ? this.input.default : null,
userInputValue: null,
selectedValue: null
};
},
computed: { computed: {
icon(): any { icon(): any {
switch (this.type) { switch (this.type) {
@ -82,9 +105,21 @@ export default Vue.extend({
}, },
methods: { methods: {
ok() { async ok() {
this.$emit('ok'); if (this.user) {
this.close(); const user = await this.$root.api('users/show', parseAcct(this.userInputValue));
if (user) {
this.$emit('ok', user);
this.close();
}
} else {
const result =
this.input ? this.inputValue :
this.select ? this.selectedValue :
true;
this.$emit('ok', result);
this.close();
}
}, },
cancel() { cancel() {
@ -114,6 +149,14 @@ export default Vue.extend({
onBgClick() { onBgClick() {
this.cancel(); this.cancel();
},
onInputKeydown(e) {
if (e.which == 13) { // Enter
e.preventDefault();
e.stopPropagation();
this.ok();
}
} }
} }
}); });
@ -180,8 +223,11 @@ export default Vue.extend({
display block display block
margin 0 auto margin 0 auto
& + header
margin-top 16px
> header > header
margin 16px 0 8px 0 margin 0 0 8px 0
font-weight bold font-weight bold
font-size 20px font-size 20px

View File

@ -114,11 +114,11 @@ export default Vue.extend({
}, },
onScroll(e) { onScroll(e) {
const section = this.categories.forEach(x => { for (const x of this.categories) {
const top = e.target.scrollTop; const top = e.target.scrollTop;
const el = this.$refs[x.ref][0]; const el = this.$refs[x.ref][0];
x.isActive = el.offsetTop <= top && el.offsetTop + el.offsetHeight > top; x.isActive = el.offsetTop <= top && el.offsetTop + el.offsetHeight > top;
}); }
}, },
chosen(emoji) { chosen(emoji) {

View File

@ -1,5 +1,5 @@
<template> <template>
<img v-if="customEmoji" class="fvgwvorwhxigeolkkrcderjzcawqrscl custom" :src="url" :alt="alt" :title="alt"/> <img v-if="customEmoji" class="fvgwvorwhxigeolkkrcderjzcawqrscl custom" :class="{ normal: normal }" :src="url" :alt="alt" :title="alt"/>
<img v-else-if="char && !useOsDefaultEmojis" class="fvgwvorwhxigeolkkrcderjzcawqrscl" :src="url" :alt="alt" :title="alt"/> <img v-else-if="char && !useOsDefaultEmojis" class="fvgwvorwhxigeolkkrcderjzcawqrscl" :src="url" :alt="alt" :title="alt"/>
<span v-else-if="char && useOsDefaultEmojis">{{ char }}</span> <span v-else-if="char && useOsDefaultEmojis">{{ char }}</span>
<span v-else>:{{ name }}:</span> <span v-else>:{{ name }}:</span>
@ -20,6 +20,11 @@ export default Vue.extend({
type: String, type: String,
required: false required: false
}, },
normal: {
type: Boolean,
required: false,
default: false
},
customEmojis: { customEmojis: {
required: false, required: false,
default: () => [] default: () => []
@ -61,8 +66,9 @@ export default Vue.extend({
} }
if (this.char) { if (this.char) {
let codes = [...this.char].map(x => x.codePointAt(0).toString(16)); let codes = Array.from(this.char).map(x => x.codePointAt(0).toString(16));
if (!codes.includes('200d')) codes = codes.filter(x => x != 'fe0f'); if (!codes.includes('200d')) codes = codes.filter(x => x != 'fe0f');
codes = codes.filter(x => x && x.length);
this.url = `https://twemoji.maxcdn.com/2/svg/${codes.join('-')}.svg`; this.url = `https://twemoji.maxcdn.com/2/svg/${codes.join('-')}.svg`;
} }
@ -83,4 +89,11 @@ export default Vue.extend({
&:hover &:hover
transform scale(1.2) transform scale(1.2)
&.normal
height 1.25em
vertical-align -0.25em
&:hover
transform none
</style> </style>

View File

@ -48,7 +48,7 @@ export default Vue.extend({
iconAndText(): any[] { iconAndText(): any[] {
return ( return (
(this.hasPendingFollowRequestFromYou && this.user.isLocked) ? ['hourglass-half', this.$t('request-pending')] : (this.hasPendingFollowRequestFromYou && this.user.isLocked) ? ['hourglass-half', this.$t('request-pending')] :
(this.hasPendingFollowRequestFromYou && !this.user.isLocked) ? ['hourglass-start', this.$t('follow-processing')] : (this.hasPendingFollowRequestFromYou && !this.user.isLocked) ? ['spinner', this.$t('follow-processing')] :
(this.isFollowing) ? ['minus', this.$t('following')] : (this.isFollowing) ? ['minus', this.$t('following')] :
(!this.isFollowing && this.user.isLocked) ? ['plus', this.$t('follow-request')] : (!this.isFollowing && this.user.isLocked) ? ['plus', this.$t('follow-request')] :
(!this.isFollowing && !this.user.isLocked) ? ['plus', this.$t('follow')] : (!this.isFollowing && !this.user.isLocked) ? ['plus', this.$t('follow')] :

View File

@ -0,0 +1,28 @@
<template>
<span v-html="compiledFormula"></span>
</template>
<script lang="ts">
import Vue from 'vue';
import * as katex from 'katex';
export default Vue.extend({
props: {
formula: {
type: String,
required: true
}
},
computed: {
compiledFormula(): any {
return katex.renderToString(this.formula, {
throwOnError: false
} as any);
}
}
});
</script>
<style>
@import "../../../../../../node_modules/katex/dist/katex.min.css";
</style>

View File

@ -0,0 +1,20 @@
<template>
<x-formula :formula="formula"/>
</template>
<script lang="ts">
import Vue from 'vue';
export default Vue.extend({
components: {
XFormula: () => import('./formula-core.vue').then(m => m.default)
},
props: {
formula: {
type: String,
required: true
}
}
});
</script>

View File

@ -1,7 +1,7 @@
<template> <template>
<div class="xqnhankfuuilcwvhgsopeqncafzsquya"> <div class="xqnhankfuuilcwvhgsopeqncafzsquya">
<button class="go-index" v-if="selfNav" @click="goIndex"><fa icon="arrow-left"/></button> <button class="go-index" v-if="selfNav" @click="goIndex"><fa icon="arrow-left"/></button>
<header><b><router-link :to="blackUser | userPage">{{ blackUser | userName }}</router-link></b>({{ $t('@.reversi.black') }}) vs <b><router-link :to="whiteUser | userPage">{{ whiteUser | userName }}</router-link></b>({{ $t('@.reversi.white') }})</header> <header><b><router-link :to="blackUser | userPage"><mk-user-name :user="blackUser"/></router-link></b>({{ $t('@.reversi.black') }}) vs <b><router-link :to="whiteUser | userPage"><mk-user-name :user="whiteUser"/></router-link></b>({{ $t('@.reversi.white') }})</header>
<div style="overflow: hidden; line-height: 28px;"> <div style="overflow: hidden; line-height: 28px;">
<p class="turn" v-if="!iAmPlayer && !game.isEnded">{{ $t('@.reversi.turn-of', { name: $options.filters.userName(turnUser) }) }}<mk-ellipsis/></p> <p class="turn" v-if="!iAmPlayer && !game.isEnded">{{ $t('@.reversi.turn-of', { name: $options.filters.userName(turnUser) }) }}<mk-ellipsis/></p>
@ -10,7 +10,7 @@
<p class="turn2" v-if="iAmPlayer && !game.isEnded && isMyTurn" v-animate-css="{ classes: 'tada', iteration: 'infinite' }">{{ $t('@.reversi.my-turn') }}</p> <p class="turn2" v-if="iAmPlayer && !game.isEnded && isMyTurn" v-animate-css="{ classes: 'tada', iteration: 'infinite' }">{{ $t('@.reversi.my-turn') }}</p>
<p class="result" v-if="game.isEnded && logPos == logs.length"> <p class="result" v-if="game.isEnded && logPos == logs.length">
<template v-if="game.winner"> <template v-if="game.winner">
<span>{{ $t('@.reversi.won', { name: $options.filters.userName(game.winner) }) }}</span> <misskey-flavored-markdown :text="$t('@.reversi.won', { name: $options.filters.userName(game.winner) })" :shouldBreak="false" :plainText="true" :custom-emojis="game.winner.emojis"/>
<span v-if="game.surrendered != null"> ({{ $t('surrendered') }})</span> <span v-if="game.surrendered != null"> ({{ $t('surrendered') }})</span>
</template> </template>
<template v-else>{{ $t('@.reversi.drawn') }}</template> <template v-else>{{ $t('@.reversi.drawn') }}</template>
@ -30,8 +30,14 @@
:class="{ empty: stone == null, none: o.map[i] == 'null', isEnded: game.isEnded, myTurn: !game.isEnded && isMyTurn, can: turnUser ? o.canPut(turnUser.id == blackUser.id, i) : null, prev: o.prevPos == i }" :class="{ empty: stone == null, none: o.map[i] == 'null', isEnded: game.isEnded, myTurn: !game.isEnded && isMyTurn, can: turnUser ? o.canPut(turnUser.id == blackUser.id, i) : null, prev: o.prevPos == i }"
@click="set(i)" @click="set(i)"
:title="`${String.fromCharCode(65 + o.transformPosToXy(i)[0])}${o.transformPosToXy(i)[1] + 1}`"> :title="`${String.fromCharCode(65 + o.transformPosToXy(i)[0])}${o.transformPosToXy(i)[1] + 1}`">
<img v-if="stone === true" :src="blackUser.avatarUrl" alt="black" :class="{ contrast: $store.state.settings.games.reversi.useContrastStones }"> <template v-if="$store.state.settings.games.reversi.useAvatarStones">
<img v-if="stone === false" :src="whiteUser.avatarUrl" alt="white" :class="{ contrast: $store.state.settings.games.reversi.useContrastStones }"> <img v-if="stone === true" :src="blackUser.avatarUrl" alt="black">
<img v-if="stone === false" :src="whiteUser.avatarUrl" alt="white">
</template>
<template v-else>
<fa v-if="stone === true" :icon="fasCircle"/>
<fa v-if="stone === false" :icon="farCircle"/>
</template>
</div> </div>
</div> </div>
<div class="labels-y" v-if="this.$store.state.settings.games.reversi.showBoardLabels"> <div class="labels-y" v-if="this.$store.state.settings.games.reversi.showBoardLabels">
@ -50,15 +56,13 @@
</div> </div>
<div class="player" v-if="game.isEnded"> <div class="player" v-if="game.isEnded">
<div>
<button @click="logPos = 0" :disabled="logPos == 0"><fa icon="angle-double-left"/></button>
<button @click="logPos--" :disabled="logPos == 0"><fa icon="angle-left"/></button>
</div>
<span>{{ logPos }} / {{ logs.length }}</span> <span>{{ logPos }} / {{ logs.length }}</span>
<div> <ui-horizon-group>
<button @click="logPos++" :disabled="logPos == logs.length"><fa icon="angle-right"/></button> <ui-button @click="logPos = 0" :disabled="logPos == 0"><fa :icon="faAngleDoubleLeft"/></ui-button>
<button @click="logPos = logs.length" :disabled="logPos == logs.length"><fa icon="angle-double-right"/></button> <ui-button @click="logPos--" :disabled="logPos == 0"><fa :icon="faAngleLeft"/></ui-button>
</div> <ui-button @click="logPos++" :disabled="logPos == logs.length"><fa :icon="faAngleRight"/></ui-button>
<ui-button @click="logPos = logs.length" :disabled="logPos == logs.length"><fa :icon="faAngleDoubleRight"/></ui-button>
</ui-horizon-group>
</div> </div>
<div class="info"> <div class="info">
@ -75,6 +79,9 @@ import i18n from '../../../../../i18n';
import * as CRC32 from 'crc-32'; import * as CRC32 from 'crc-32';
import Reversi, { Color } from '../../../../../../../games/reversi/core'; import Reversi, { Color } from '../../../../../../../games/reversi/core';
import { url } from '../../../../../config'; import { url } from '../../../../../config';
import { faAngleDoubleLeft, faAngleLeft, faAngleRight, faAngleDoubleRight } from '@fortawesome/free-solid-svg-icons';
import { faCircle as fasCircle } from '@fortawesome/free-solid-svg-icons';
import { faCircle as farCircle } from '@fortawesome/free-regular-svg-icons';
export default Vue.extend({ export default Vue.extend({
i18n: i18n('common/views/components/games/reversi/reversi.game.vue'), i18n: i18n('common/views/components/games/reversi/reversi.game.vue'),
@ -99,7 +106,8 @@ export default Vue.extend({
o: null as Reversi, o: null as Reversi,
logs: [], logs: [],
logPos: 0, logPos: 0,
pollingClock: null pollingClock: null,
faAngleDoubleLeft, faAngleLeft, faAngleRight, faAngleDoubleRight, fasCircle, farCircle
}; };
}, },
@ -177,9 +185,9 @@ export default Vue.extend({
loopedBoard: this.game.settings.loopedBoard loopedBoard: this.game.settings.loopedBoard
}); });
this.game.logs.forEach(log => { for (const log of this.game.logs) {
this.o.put(log.color, log.pos); this.o.put(log.color, log.pos);
}); }
this.logs = this.game.logs; this.logs = this.game.logs;
this.logPos = this.logs.length; this.logPos = this.logs.length;
@ -279,9 +287,9 @@ export default Vue.extend({
loopedBoard: this.game.settings.loopedBoard loopedBoard: this.game.settings.loopedBoard
}); });
this.game.logs.forEach(log => { for (const log of this.game.logs) {
this.o.put(log.color, log.pos, true); this.o.put(log.color, log.pos, true);
}); }
this.logs = this.game.logs; this.logs = this.game.logs;
this.logPos = this.logs.length; this.logPos = this.logs.length;
@ -412,17 +420,15 @@ export default Vue.extend({
&.none &.none
border-color transparent !important border-color transparent !important
> img > svg
display block display block
width 100% width 100%
height 100% height 100%
&.contrast > img
&[alt="black"] display block
filter brightness(.5) width 100%
height 100%
&[alt="white"]
filter brightness(2)
> .graph > .graph
display grid display grid
@ -449,7 +455,9 @@ export default Vue.extend({
padding-bottom 16px padding-bottom 16px
> .player > .player
padding-bottom 32px padding 0 16px 32px 16px
margin 0 auto
max-width 500px
> span > span
display inline-block display inline-block

View File

@ -19,7 +19,7 @@
<h2>{{ $t('invitations') }}</h2> <h2>{{ $t('invitations') }}</h2>
<div class="invitation" v-for="i in invitations" tabindex="-1" @click="accept(i)"> <div class="invitation" v-for="i in invitations" tabindex="-1" @click="accept(i)">
<mk-avatar class="avatar" :user="i.parent"/> <mk-avatar class="avatar" :user="i.parent"/>
<span class="name"><b>{{ i.parent | userName }}</b></span> <span class="name"><b><mk-user-name :user="i.parent"/></b></span>
<span class="username">@{{ i.parent.username }}</span> <span class="username">@{{ i.parent.username }}</span>
<mk-time :time="i.createdAt"/> <mk-time :time="i.createdAt"/>
</div> </div>
@ -29,7 +29,7 @@
<a class="game" v-for="g in myGames" tabindex="-1" @click.prevent="go(g)" :href="`/reversi/${g.id}`"> <a class="game" v-for="g in myGames" tabindex="-1" @click.prevent="go(g)" :href="`/reversi/${g.id}`">
<mk-avatar class="avatar" :user="g.user1"/> <mk-avatar class="avatar" :user="g.user1"/>
<mk-avatar class="avatar" :user="g.user2"/> <mk-avatar class="avatar" :user="g.user2"/>
<span><b>{{ g.user1 | userName }}</b> vs <b>{{ g.user2 | userName }}</b></span> <span><b><mk-user-name :user="g.user1"/></b> vs <b><mk-user-name :user="g.user2"/></b></span>
<span class="state">{{ g.isEnded ? $t('game-state.ended') : $t('game-state.playing') }}</span> <span class="state">{{ g.isEnded ? $t('game-state.ended') : $t('game-state.playing') }}</span>
<mk-time :time="g.createdAt" /> <mk-time :time="g.createdAt" />
</a> </a>
@ -39,7 +39,7 @@
<a class="game" v-for="g in games" tabindex="-1" @click.prevent="go(g)" :href="`/reversi/${g.id}`"> <a class="game" v-for="g in games" tabindex="-1" @click.prevent="go(g)" :href="`/reversi/${g.id}`">
<mk-avatar class="avatar" :user="g.user1"/> <mk-avatar class="avatar" :user="g.user1"/>
<mk-avatar class="avatar" :user="g.user2"/> <mk-avatar class="avatar" :user="g.user2"/>
<span><b>{{ g.user1 | userName }}</b> vs <b>{{ g.user2 | userName }}</b></span> <span><b><mk-user-name :user="g.user1"/></b> vs <b><mk-user-name :user="g.user2"/></b></span>
<span class="state">{{ g.isEnded ? $t('game-state.ended') : $t('game-state.playing') }}</span> <span class="state">{{ g.isEnded ? $t('game-state.ended') : $t('game-state.playing') }}</span>
<mk-time :time="g.createdAt" /> <mk-time :time="g.createdAt" />
</a> </a>
@ -99,23 +99,22 @@ export default Vue.extend({
this.$emit('go', game); this.$emit('go', game);
}, },
match() { async match() {
this.$input({ const { result: user } = await this.$root.dialog({
title: this.$t('enter-username') title: this.$t('enter-username'),
}).then(username => { user: {
this.$root.api('users/show', { local: true
username }
}).then(user => { });
this.$root.api('games/reversi/match', { if (user == null) return;
userId: user.id this.$root.api('games/reversi/match', {
}).then(res => { userId: user.id
if (res == null) { }).then(res => {
this.$emit('matching', user); if (res == null) {
} else { this.$emit('matching', user);
this.$emit('go', res); } else {
} this.$emit('go', res);
}); }
});
}); });
}, },

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="urbixznjwwuukfsckrwzwsqzsxornqij"> <div class="urbixznjwwuukfsckrwzwsqzsxornqij">
<header><b>{{ game.user1 | userName }}</b> vs <b>{{ game.user2 | userName }}</b></header> <header><b><mk-user-name :user="game.user1"/></b> vs <b><mk-user-name :user="game.user2"/></b></header>
<div> <div>
<p>{{ $t('settings-of-the-game') }}</p> <p>{{ $t('settings-of-the-game') }}</p>
@ -22,8 +22,8 @@
<div v-for="(x, i) in game.settings.map.join('')" <div v-for="(x, i) in game.settings.map.join('')"
:data-none="x == ' '" :data-none="x == ' '"
@click="onPixelClick(i, x)"> @click="onPixelClick(i, x)">
<template v-if="x == 'b'"><template v-if="$store.state.device.darkmode"><fa :icon="['far', 'circle']"/></template><template v-else><fa icon="circle"/></template></template> <fa v-if="x == 'b'" :icon="fasCircle"/>
<template v-if="x == 'w'"><template v-if="$store.state.device.darkmode"><fa :icon="['far', 'circle']"/></template><template v-else><fa icon="circle"/></template></template> <fa v-if="x == 'w'" :icon="farCircle"/>
</div> </div>
</div> </div>
</div> </div>
@ -36,8 +36,8 @@
<div> <div>
<form-radio v-model="game.settings.bw" value="random" @change="updateSettings">{{ $t('random') }}</form-radio> <form-radio v-model="game.settings.bw" value="random" @change="updateSettings">{{ $t('random') }}</form-radio>
<form-radio v-model="game.settings.bw" :value="1" @change="updateSettings">{{ this.$t('black-is').split('{}')[0] }}<b>{{ game.user1 | userName }}</b>{{ this.$t('black-is').split('{}')[1] }}</form-radio> <form-radio v-model="game.settings.bw" :value="1" @change="updateSettings">{{ this.$t('black-is').split('{}')[0] }}<b><mk-user-name :user="game.user1"/></b>{{ this.$t('black-is').split('{}')[1] }}</form-radio>
<form-radio v-model="game.settings.bw" :value="2" @change="updateSettings">{{ this.$t('black-is').split('{}')[0] }}<b>{{ game.user2 | userName }}</b>{{ this.$t('black-is').split('{}')[1] }}</form-radio> <form-radio v-model="game.settings.bw" :value="2" @change="updateSettings">{{ this.$t('black-is').split('{}')[0] }}<b><mk-user-name :user="game.user2"/></b>{{ this.$t('black-is').split('{}')[1] }}</form-radio>
</div> </div>
</div> </div>
@ -60,7 +60,7 @@
<div> <div>
<template v-for="item in form"> <template v-for="item in form">
<ui-switch v-if="item.type == 'switch'" v-model="item.value" :key="item.id" :text="item.label" @change="onChangeForm(item)">{{ item.desc || '' }}</ui-switch> <ui-switch v-if="item.type == 'switch'" v-model="item.value" :key="item.id" @change="onChangeForm(item)">{{ item.label || item.desc || '' }}</ui-switch>
<div class="card" v-if="item.type == 'radio'" :key="item.id"> <div class="card" v-if="item.type == 'radio'" :key="item.id">
<header> <header>
@ -117,6 +117,8 @@
import Vue from 'vue'; import Vue from 'vue';
import i18n from '../../../../../i18n'; import i18n from '../../../../../i18n';
import * as maps from '../../../../../../../games/reversi/maps'; import * as maps from '../../../../../../../games/reversi/maps';
import { faCircle as fasCircle } from '@fortawesome/free-solid-svg-icons';
import { faCircle as farCircle } from '@fortawesome/free-regular-svg-icons';
export default Vue.extend({ export default Vue.extend({
i18n: i18n('common/views/components/games/reversi/reversi.room.vue'), i18n: i18n('common/views/components/games/reversi/reversi.room.vue'),
@ -129,7 +131,8 @@ export default Vue.extend({
mapName: maps.eighteight.name, mapName: maps.eighteight.name,
maps: maps, maps: maps,
form: null, form: null,
messages: [] messages: [],
fasCircle, farCircle
}; };
}, },

View File

@ -4,7 +4,7 @@
<x-gameroom :game="game" :self-nav="selfNav" @go-index="goIndex"/> <x-gameroom :game="game" :self-nav="selfNav" @go-index="goIndex"/>
</div> </div>
<div class="matching" v-else-if="matching"> <div class="matching" v-else-if="matching">
<h1>{{ this.$t('matching.waiting-for').split('{}')[0] }}<b>{{ matching | userName }}</b>{{ this.$t('matching.waiting-for').split('{}')[1] }}<mk-ellipsis/></h1> <h1>{{ this.$t('matching.waiting-for').split('{}')[0] }}<b><mk-user-name :user="matching"/></b>{{ this.$t('matching.waiting-for').split('{}')[1] }}<mk-ellipsis/></h1>
<div class="cancel"> <div class="cancel">
<form-button round @click="cancel">{{ $t('matching.cancel') }}</form-button> <form-button round @click="cancel">{{ $t('matching.cancel') }}</form-button>
</div> </div>

Some files were not shown because too many files have changed in this diff Show More