diff --git a/.config/example.yml b/.config/example.yml index d5ea4ba607ccf8bc224af62897c227c85a9d5f70..38d5e59ea7966425ca33860f8442fa3ebc136287 100644 --- a/.config/example.yml +++ b/.config/example.yml @@ -157,3 +157,10 @@ id: 'aid' # Sign to ActivityPub GET request (default: false) #signToActivityPubGet: true + +#allowedPrivateNetworks: [ +# '127.0.0.1/32' +#] + +# Upload or download file size limits (bytes) +#maxFileSize: 262144000 diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 30b804f0b592c66340a5bb2cdb92b92411a8f391..1de4615f596decbf66dfeae2fc05338e20f29aed 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,30 +1,10 @@ <!-- ℹ ãŠèªã¿ãã ã•ã„ -PRã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ï¼ PRを作æˆã™ã‚‹å‰ã«ã€ä»¥ä¸‹ã‚’ã”確èªãã ã•ã„: -- å¯èƒ½ã§ã‚ã‚Œã°ã‚¿ã‚¤ãƒˆãƒ«ã«ã€ä»¥ä¸‹ã§ç¤ºã™ã‚ˆã†ãªPRã®ç¨®é¡žãŒåˆ†ã‹ã‚‹ã‚ーワードをプリフィクスã—ã¦ãã ã•ã„。 - - fix / refactor / feat / enhance / perf / chore - - ã¾ãŸã€PRã®ç²’度ãŒé©åˆ‡ã§ã‚ã‚‹ã“ã¨ã‚’確èªã—ã¦ãã ã•ã„。ã²ã¨ã¤ã®PRã«è¤‡æ•°ã®ç¨®é¡žã®å¤‰æ›´ã‚„関心をå«ã‚ã‚‹ã“ã¨ã¯é¿ã‘ã¦ãã ã•ã„。 -- ã“ã®PRã«ã‚ˆã£ã¦è§£æ±ºã•ã‚Œã‚‹IssueãŒã‚ã‚‹å ´åˆã¯ã€ãã®Issueã¸ã®å‚照を本文内ã«å«ã‚ã¦ãã ã•ã„。 -- CHANGELOG.mdã«å¤‰æ›´ç‚¹ã‚’追記ã—ã¦ãã ã•ã„。リファクタリングãªã©ã€åˆ©ç”¨è€…ã«å½±éŸ¿ã‚’与ãˆãªã„変更ã«ã¤ã„ã¦ã¯ã“ã®é™ã‚Šã§ã¯ã‚ã‚Šã¾ã›ã‚“。 -- ã“ã®å¤‰æ›´ã«ã‚ˆã‚Šæ–°ãŸã«ä½œæˆã€ã‚‚ã—ãã¯æ›´æ–°ã™ã¹ãドã‚ュメントãŒãªã„ã‹ç¢ºèªã—ã¦ãã ã•ã„。 -- æ©Ÿèƒ½è¿½åŠ ã‚„ãƒã‚°ä¿®æ£ã‚’ã—ãŸå ´åˆã¯ã€å¯èƒ½ã§ã‚ã‚Œã°ãƒ†ã‚¹ãƒˆã‚±ãƒ¼ã‚¹ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。 -- テストã€LintãŒé€šã£ã¦ã„ã‚‹ã“ã¨ã‚’予ã‚確èªã—ã¦ãã ã•ã„。 - - `npm run test`ã€`npm run lint`ã§ãžã‚Œãžã‚Œå®Ÿæ–½å¯èƒ½ã§ã™ -- UIã«å¤‰æ›´ãŒã‚ã‚‹å ´åˆã¯ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã‚’本文内ã«æ·»ä»˜ã—ã¦ãã ã•ã„。 -ã”å”力ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ðŸ¤— +PRã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ï¼ PRを作æˆã™ã‚‹å‰ã«ã€ã‚³ãƒ³ãƒˆãƒªãƒ“ューションガイドをã”確èªãã ã•ã„: +https://github.com/misskey-dev/misskey/blob/develop/CONTRIBUTING.md --> <!-- ℹ README -Thank you for your PR! Before creating a PR, please check the following: -- If possible, prefix the title with a keyword that identifies the type of this PR, as shown below. - - fix / refactor / feat / enhance / perf / chore - - Also, make sure that the granularity of this PR is appropriate. Please do not include more than one type of change or interest in a single PR. -- If there is an Issue which will be resolved by this PR, please include a reference to the Issue in the text. -- Please add the summary of the changes to CHANGELOG.md. However, this is not necessary for changes that do not affect the users, such as refactoring. -- Check if there are any documents that need to be created or updated due to this change. -- If you have added a feature or fixed a bug, please add a test case if possible. -- Please make sure that tests and Lint are passed in advance. - - You can run it with `npm run test` and `npm run lint`. -- If this PR includes UI changes, please attach a screenshot in the text. -Thanks for your cooperation 🤗 +Thank you for your PR! Before creating a PR, please check the contribution guide: +https://github.com/misskey-dev/misskey/blob/develop/docs/CONTRIBUTING.en.md --> # What diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index c6e5329c265c644eeeea5f3570f3f9f899c7b6dc..9a32dac94e0b57cc1c4dc675cb5ddf04952373fe 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -29,6 +29,8 @@ jobs: steps: - uses: actions/checkout@v2 + with: + submodules: true - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: @@ -48,6 +50,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 + with: + submodules: true - uses: actions/setup-node@v1 with: node-version: 12.x diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000000000000000000000000000000000..9246e09b8bd4d018397d2e3628aa92a25f9c4f44 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "misskey-assets"] + path = misskey-assets + url = https://github.com/misskey-dev/assets.git diff --git a/CHANGELOG.md b/CHANGELOG.md index 205c780c2c1ca952573fc2537ab7dc6cdc89d61f..2454a3b609e1f7ba1c000f6891ab50c5d2fceebe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,24 @@ --> +## 12.90.0 (2021/09/04) + +### Improvements +- è—モードã€ãŠã‚ˆã³è—ウィジェット + - クライアントã«è—ã¡ã‚ƒã‚“ã‚’å¬å–šã™ã‚‹ã“ã¨ãŒã§ãるよã†ã«ãªã‚Šã¾ã—ãŸã€‚ +- URLã‹ã‚‰ã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰, APã®æ·»ä»˜ãƒ•ã‚¡ã‚¤ãƒ«, 外部ファイルã®ãƒ—ãƒã‚ã‚·ç‰ã§ã¯ã€Privateアドレスç‰ã¸ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯æ‹’å¦ã•ã‚Œã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã—ãŸã€‚ + - developmentã§å‹•ä½œã—ã¦ã„ã‚‹å ´åˆã¯ã€ã“ã®åˆ¶é™ã¯é©ç”¨ã•ã‚Œã¾ã›ã‚“。 + - Proxy使用時ã«ã¯ã€ã“ã®åˆ¶é™ã¯é©ç”¨ã•ã‚Œã¾ã›ã‚“。 + Proxy使用時ã«åŒç‰ã®åˆ¶é™ã‚’è¡Œã„ãŸã„å ´åˆã¯ã€Proxyå´ã§è¨å®šã‚’è¡Œã†å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚ + - `default.yml`ã«ã¦`allowedPrivateNetworks`ã«CIDRã‚’è¿½åŠ ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€å®›å…ˆãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’指定ã—ã¦ã“ã®åˆ¶é™ã‹ã‚‰é™¤å¤–ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚ +- アップãƒãƒ¼ãƒ‰, ダウンãƒãƒ¼ãƒ‰å‡ºæ¥ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚µã‚¤ã‚ºã«ãƒãƒ¼ãƒ‰ãƒªãƒŸãƒƒãƒˆãŒé©ç”¨ã•ã‚Œã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã—ãŸã€‚(ç´„250MB) + - `default.yml`ã«ã¦`maxFileSize`を変更ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€åˆ¶é™å€¤ã‚’変更ã™ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã™ã€‚ + +### Bugfixes +- 管ç†è€…ãŒæœ€åˆã«ã‚µã‚¤ãƒ³ã‚¢ãƒƒãƒ—ã™ã‚‹ãƒšãƒ¼ã‚¸ã§ãƒã‚°ã‚¤ãƒ³ã•ã‚Œãªã„ã®ã‚’ä¿®æ£ +- CWã‚’ç¶æŒã™ã‚‹è¨å®šã‚’復活 +- クライアントã®è¡¨ç¤ºã‚’ä¿®æ£ + ## 12.89.2 (2021/08/24) ### Bugfixes diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b3c67ff4d7ab34d67fb106fe264768780d0419c3..ca0a841ccfa1a9be8fddd3d969bb0f87b1ef45ed 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,22 +1,41 @@ # Contribution guide -:v: Thanks for your contributions :v: +**[✨ English version available](/docs/CONTRIBUTING.en.md)** -## When you contribute... -- ä»»æ„ã®Issueã«ã¤ã„ã¦ã€ã›ã£ã‹ã実装ã—ã¦ãã ã•ã£ã¦ã‚‚ã€å®Ÿè£…方法やè¨è¨ˆã®èªè˜ãŒæƒã£ã¦ãªã„ã¨ãƒžãƒ¼ã‚¸ã§ããªã„/ã—ãªã„ã“ã¨ã«ãªã‚Šã‹ããªã„ã®ã§ã€åˆã‚ã«ãã®Issue上ã§ç€æ‰‹ã™ã‚‹ã“ã¨ã‚’宣言ã—ã€å¿…è¦ã«å¿œã˜ã¦ä»–メンãƒãƒ¼ã¨å®Ÿè£…方法やè¨è¨ˆã®ã™ã‚Šåˆã‚ã›ã‚’è¡Œã£ã¦ãã ã•ã„。宣言ã™ã‚‹ã“ã¨ã¯ä½œæ¥ãŒä»–ã®äººã¨è¢«ã‚‹ã®ã‚’防æ¢ã™ã‚‹åŠ¹æžœã‚‚ã‚ã‚Šã¾ã™ã€‚ - - è¨è¨ˆã«è¿·ã£ãŸæ™‚ã¯ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãƒªãƒ¼ãƒ€ãƒ¼ã®åˆ¤æ–ã‚’ä»°ã„ã§ãã ã•ã„。 -- 時間や優先度ã®éƒ½åˆä¸Šã€æ出ã—ã¦ãã ã•ã£ãŸPRãŒé•·æœŸé–“放置ã•ã‚Œã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ãŒã”ç†è§£ãã ã•ã„。 - - 温度感高ã‚ã§è¦‹ã¦ã»ã—ã„ã‚‚ã®ã¯è²¬ä»˜ã„ã¦ãã ã•ã„。 +プãƒã‚¸ã‚§ã‚¯ãƒˆã«èˆˆå‘³ã‚’æŒã£ã¦ã„ãŸã ãã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ï¼ ã“ã®ãƒ‰ã‚ュメントã§ã¯ã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã«è²¢çŒ®ã™ã‚‹éš›ã«å¿…è¦ãªæƒ…å ±ã‚’ã¾ã¨ã‚ã¦ã„ã¾ã™ã€‚ ## Issues -Feature suggestions and bug reports are filed in https://github.com/misskey-dev/misskey/issues . - -* Please search existing issues to avoid duplication. If your issue is already filed, please add your reaction or comment to the existing one. -* If you have multiple independent issues, please submit them separately. - -## Branches -* **master** branch is tracking the latest release and used for production purposes. -* **develop** branch is where we work for the next release. -* **l10n_develop** branch is reserved for localization management. +Issueを作æˆã™ã‚‹å‰ã«ã€ä»¥ä¸‹ã‚’ã”確èªãã ã•ã„: +- é‡è¤‡ã‚’防ããŸã‚ã€æ—¢ã«åŒæ§˜ã®å†…容ã®IssueãŒä½œæˆã•ã‚Œã¦ã„ãªã„ã‹æ¤œç´¢ã—ã¦ã‹ã‚‰æ–°ã—ã„Issueを作ã£ã¦ãã ã•ã„。 +- Issueを質å•ã«ä½¿ã‚ãªã„ã§ãã ã•ã„。 + - Issueã¯ã€è¦æœ›ã€æ案ã€å•é¡Œã®å ±å‘Šã«ã®ã¿ä½¿ç”¨ã—ã¦ãã ã•ã„。 + - 質å•ã¯ã€[Misskey Forum](https://forum.misskey.io/)ã‚„[Discord](https://discord.gg/Wp8gVStHW3)ã§ãŠé¡˜ã„ã—ã¾ã™ã€‚ + +## 実装をã™ã‚‹å‰ã« +æ©Ÿèƒ½è¿½åŠ ã‚„ãƒã‚°ä¿®æ£ã‚’ã—ãŸã„ã¨ãã¯ã€ã¾ãšIssueã§è¨è¨ˆã€æ–¹é‡ã‚’レビューã—ã¦ã‚‚らã„ã¾ã—ょã†(ç„¡ã„å ´åˆã¯ä½œã£ã¦ãã ã•ã„)。ã“ã®ã‚¹ãƒ†ãƒƒãƒ—ãŒãªã„ã¨ã€ã›ã£ã‹ã実装ã—ã¦ã‚‚PRãŒãƒžãƒ¼ã‚¸ã•ã‚Œãªã„å¯èƒ½æ€§ãŒé«˜ããªã‚Šã¾ã™ã€‚ + +ã¾ãŸã€å®Ÿè£…ã«å–り掛ã‹ã‚‹ã¨ãã¯å½“該Issueã«è‡ªåˆ†ã‚’アサインã—ã¦ãã ã•ã„(自分ã§ã§ããªã„å ´åˆã¯ä»–メンãƒãƒ¼ã«è‡ªåˆ†ã‚’アサインã—ã¦ã‚‚らã†ã‚ˆã†ãŠé¡˜ã„ã—ã¦ãã ã•ã„)。 +自分ãŒå®Ÿè£…ã™ã‚‹ã¨ã„ã†æ„æ€è¡¨ç¤ºã‚’ã™ã‚‹ã“ã¨ã§ã€ä½œæ¥ãŒãƒãƒƒãƒ†ã‚£ãƒ³ã‚°ã™ã‚‹ã®ã‚’防ãŽã¾ã™ã€‚ + +## PRã®ä½œæˆ +PRã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ï¼ PRを作æˆã™ã‚‹å‰ã«ã€ä»¥ä¸‹ã‚’ã”確èªãã ã•ã„: +- å¯èƒ½ã§ã‚ã‚Œã°ã‚¿ã‚¤ãƒˆãƒ«ã«ã€ä»¥ä¸‹ã§ç¤ºã™ã‚ˆã†ãªPRã®ç¨®é¡žãŒåˆ†ã‹ã‚‹ã‚ーワードをプリフィクスã—ã¦ãã ã•ã„。 + - `fix` / `refactor` / `feat` / `enhance` / `perf` / `chore` ãªã© + - ã¾ãŸã€PRã®ç²’度ãŒé©åˆ‡ã§ã‚ã‚‹ã“ã¨ã‚’確èªã—ã¦ãã ã•ã„。ã²ã¨ã¤ã®PRã«è¤‡æ•°ã®ç¨®é¡žã®å¤‰æ›´ã‚„関心をå«ã‚ã‚‹ã“ã¨ã¯é¿ã‘ã¦ãã ã•ã„。 +- ã“ã®PRã«ã‚ˆã£ã¦è§£æ±ºã•ã‚Œã‚‹IssueãŒã‚ã‚‹å ´åˆã¯ã€ãã®Issueã¸ã®å‚照を本文内ã«å«ã‚ã¦ãã ã•ã„。 +- [`CHANGELOG.md`](/CHANGELOG.md)ã«å¤‰æ›´ç‚¹ã‚’追記ã—ã¦ãã ã•ã„。リファクタリングãªã©ã€åˆ©ç”¨è€…ã«å½±éŸ¿ã‚’与ãˆãªã„変更ã«ã¤ã„ã¦ã¯ã“ã®é™ã‚Šã§ã¯ã‚ã‚Šã¾ã›ã‚“。 +- ã“ã®å¤‰æ›´ã«ã‚ˆã‚Šæ–°ãŸã«ä½œæˆã€ã‚‚ã—ãã¯æ›´æ–°ã™ã¹ãドã‚ュメントãŒãªã„ã‹ç¢ºèªã—ã¦ãã ã•ã„。 +- æ©Ÿèƒ½è¿½åŠ ã‚„ãƒã‚°ä¿®æ£ã‚’ã—ãŸå ´åˆã¯ã€å¯èƒ½ã§ã‚ã‚Œã°ãƒ†ã‚¹ãƒˆã‚±ãƒ¼ã‚¹ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。 +- テストã€LintãŒé€šã£ã¦ã„ã‚‹ã“ã¨ã‚’予ã‚確èªã—ã¦ãã ã•ã„。 + - `npm run test`ã€`npm run lint`ã§ãžã‚Œãžã‚Œå®Ÿæ–½å¯èƒ½ã§ã™ã€‚[詳細](#testing) +- UIã«å¤‰æ›´ãŒã‚ã‚‹å ´åˆã¯ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã‚’本文内ã«æ·»ä»˜ã—ã¦ãã ã•ã„。 + +ã”å”力ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ðŸ¤— + +## ブランム+- **`master`** branch is tracking the latest release and used for production purposes. +- **`develop`** branch is where we work for the next release. + - PRを作æˆã™ã‚‹ã¨ãã¯ã€åŸºæœ¬çš„ã«ã“ã®ãƒ–ランãƒã«å‘ã‘ã¦ãã ã•ã„。 +- **`l10n_develop`** branch is reserved for localization management. ## Localization (l10n) Misskey uses [Crowdin](https://crowdin.com/project/misskey) for localization management. @@ -32,14 +51,22 @@ If your language is not listed in Crowdin, please open an issue. * Documents for instance admins are located in [`/docs`](/docs). * Documents for end users are located in [`/src/docs`](/src/docs). -## Test -* Test codes are located in [`/test`](/test). +## Testing +- Test codes are located in [`/test`](/test). -### Run specify test +### Run test +``` +npm run test +``` + +#### Run specify test ``` npx cross-env TS_NODE_FILES=true TS_NODE_TRANSPILE_ONLY=true TS_NODE_PROJECT="./test/tsconfig.json" npx mocha test/foo.ts --require ts-node/register ``` +### e2e tests +TODO + ## Continuous integration Misskey uses GitHub Actions for executing automated tests. Configuration files are located in [`/.github/workflows`](/.github/workflows). @@ -55,116 +82,11 @@ Configuration files are located in [`/.github/workflows`](/.github/workflows). If you have no experience on 3D modeling, we suggest to use the free 3DCG software [Blender](https://www.blender.org/). You can find information on glTF 2.0 at [glTF 2.0 — Blender Manual]( https://docs.blender.org/manual/en/dev/addons/io_scene_gltf2.html). -## FAQ +## Notes ### How to resolve conflictions occurred at yarn.lock? Just execute `yarn` to fix it. -## 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_. - -### Nyaize -Convert ãª(na) to ã«ã‚ƒ(nya) - -#### Denyaize -Revert Nyaize - -## TypeScript Coding Style -### Do not omit semicolons -This is to avoid Automatic Semicolon Insertion (ASI) hazard. - -Ref: -* https://www.ecma-international.org/ecma-262/#sec-automatic-semicolon-insertion -* https://github.com/tc39/ecma262/pull/1062 - -### Do not omit curly brackets -Bad: -``` ts -if (foo) - bar; -else - baz; -``` - -Good: -``` ts -if (foo) { - bar; -} else { - baz; -} -``` - -As a special case, you can omit the curly brackets if - -* the body of the `if`-statement have only one statement and, -* the `if`-statement does not have `else`-clause. - -Good: -``` ts -if (foo) bar; -``` - -Make sure that the condition and the body statement are on the same line. - -### Do not use `==` when it can simply be replaced with `===`. -🥰 - -### Use only boolean (or null related) values in the condition of an `if`-statement. -Bad: -``` ts -if (foo.length) -``` - -Good: -``` ts -if (foo.length > 0) -``` - -### Do not use `export default` -This is because the current language support does not work well with `export default`. - -Ref: -* https://basarat.gitbooks.io/typescript/docs/tips/defaultIsBad.html -* https://gfx.hatenablog.com/entry/2017/11/24/135343 - -Bad: -``` ts -export default function(foo: string): string { -``` - -Good: -``` ts -export function something(foo: string): string { -``` - -## Directory structure -``` -src ... Source code - @types ... Type definitions - prelude ... Independence utils for coding JavaScript without side effects - misc ... Independence utils for Misskey without side effects - service ... Common functions with side effects - queue ... Job queues and Jobs - server ... Web Server - client ... Client - mfm ... MFM - -test ... Test code - -``` - -## Notes ### placeholder SQLをクエリビルダã§çµ„ã¿ç«‹ã¦ã‚‹éš›ã€ä½¿ç”¨ã™ã‚‹ãƒ—レースホルダã¯é‡è¤‡ã—ã¦ã¯ãªã‚‰ãªã„ 例ãˆã° diff --git a/Dockerfile b/Dockerfile index 1e8584551fd72c700e51740e61804c28d46d90fd..8c655c4c4fb6824257ed790b4446c68b2af2f9fa 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,6 +20,7 @@ RUN apk add --no-cache \ python3 \ zlib-dev +RUN git submodule update --init COPY package.json yarn.lock .yarnrc ./ RUN yarn install COPY . ./ diff --git a/docs/CONTRIBUTING.en.md b/docs/CONTRIBUTING.en.md new file mode 100644 index 0000000000000000000000000000000000000000..21f2b591f3a59b1103b952e490b974c2b95f6cfe --- /dev/null +++ b/docs/CONTRIBUTING.en.md @@ -0,0 +1,66 @@ +# Contribution guide +:v: Thanks for your contributions :v: + +**â„¹ï¸ Important:** This project uses Japanese as its major language, **but you do not need to translate and write the Issues/PRs in Japanese.** +Also, you might receive comments on your Issue/PR in Japanese, but you do not need to reply to them in Japanese as well.\ +The accuracy of translation into Japanese is not high, so it will be easier for us to understand if you write it in the original language. +It will also allow the reader to use the translation tool of their preference if necessary. + +## Issues +Before creating an issue, please check the following: +- To avoid duplication, please search for similar issues before creating a new issue. +- Do not use Issues as a question. + - Issues should only be used to feature requests, suggestions, and report problems. + - Please ask questions in the [Misskey Forum](https://forum.misskey.io/) or [Discord](https://discord.gg/Wp8gVStHW3). + +## Before implementation +When you want to add a feature or fix a bug, first have the design and policy reviewed in an Issue (if it is not there, please make one). Without this step, there is a high possibility that the PR will not be merged even if it is implemented. + +Also, when you start implementation, assign yourself to the Issue (if you cannot do it yourself, ask another member to assign you). By expressing your intention to work the Issue, you can prevent conflicts in the work. + +## Well-known branches +- **`master`** branch is tracking the latest release and used for production purposes. +- **`develop`** branch is where we work for the next release. + - When you create a PR, basically target it to this branch. +- **`l10n_develop`** branch is reserved for localization management. + +## Creating a PR +Thank you for your PR! Before creating a PR, please check the following: +- If possible, prefix the title with a keyword that identifies the type of this PR, as shown below. + - `fix` / `refactor` / `feat` / `enhance` / `perf` / `chore` etc + - Also, make sure that the granularity of this PR is appropriate. Please do not include more than one type of change or interest in a single PR. +- If there is an Issue which will be resolved by this PR, please include a reference to the Issue in the text. +- Please add the summary of the changes to [`CHANGELOG.md`](/CHANGELOG.md). However, this is not necessary for changes that do not affect the users, such as refactoring. +- Check if there are any documents that need to be created or updated due to this change. +- If you have added a feature or fixed a bug, please add a test case if possible. +- Please make sure that tests and Lint are passed in advance. + - You can run it with `npm run test` and `npm run lint`. [See more info](#testing) +- If this PR includes UI changes, please attach a screenshot in the text. + +Thanks for your cooperation 🤗 + +## Localization (l10n) +Misskey uses [Crowdin](https://crowdin.com/project/misskey) for localization management. +You can improve our translations with your Crowdin account. +Your changes in Crowdin are automatically submitted as a PR (with the title "New Crowdin translations") to the repository. +The owner [@syuilo](https://github.com/syuilo) merges the PR into the develop branch before the next release. + +If your language is not listed in Crowdin, please open an issue. + + + +## Testing +- Test codes are located in [`/test`](/test). + +### Run test +``` +npm run test +``` + +#### Run specify test +``` +npx cross-env TS_NODE_FILES=true TS_NODE_TRANSPILE_ONLY=true TS_NODE_PROJECT="./test/tsconfig.json" npx mocha test/foo.ts --require ts-node/register +``` + +### e2e tests +TODO diff --git a/docs/docker.en.md b/docs/docker.en.md index 93eee8e4b4abd3a154585c5bd375b593c98faf16..adeafe3d31bca365744c3485bf9796fa384b8e7d 100644 --- a/docs/docker.en.md +++ b/docs/docker.en.md @@ -83,10 +83,11 @@ Just `docker-compose up -d`. GLHF! 1. `git stash` 2. `git checkout master` 3. `git pull` -4. `git stash pop` -5. `docker-compose build` -6. Check [ChangeLog](../CHANGELOG.md) for migration information -7. `docker-compose stop && docker-compose up -d` +4. `git submodule update --init` +5. `git stash pop` +6. `docker-compose build` +7. Check [ChangeLog](../CHANGELOG.md) for migration information +8. `docker-compose stop && docker-compose up -d` ### How to execute [cli commands](manage.en.md): `docker-compose run --rm web node built/tools/mark-admin @example` diff --git a/docs/docker.fr.md b/docs/docker.fr.md index 7abd46335f94b4202a08d8ffe7dfe12d6649c37b..840e5b5a285110251225ec8ab2bd491d14578c30 100644 --- a/docs/docker.fr.md +++ b/docs/docker.fr.md @@ -50,10 +50,11 @@ Utilisez la commande `docker-compose up -d`. GLHF! 1. `git stash` 2. `git checkout master` 3. `git pull` -4. `git stash pop` -5. `docker-compose build` -6. Consultez le [ChangeLog](../CHANGELOG.md) pour avoir les éventuelles informations de migration -7. `docker-compose stop && docker-compose up -d` +4. `git submodule update --init` +5. `git stash pop` +6. `docker-compose build` +7. Consultez le [ChangeLog](../CHANGELOG.md) pour avoir les éventuelles informations de migration +8. `docker-compose stop && docker-compose up -d` ### Comment exécuter des [commandes](manage.fr.md) `docker-compose run --rm web node built/tools/mark-admin @example` diff --git a/docs/docker.ja.md b/docs/docker.ja.md index 15b1a944acc7fb2ea1fe17214845b6e4bbaab5f2..c660a9041bce99d819f72eaa3fa0433e713daf50 100644 --- a/docs/docker.ja.md +++ b/docs/docker.ja.md @@ -83,10 +83,11 @@ docker-compose run --rm web yarn run init 1. `git stash` 2. `git checkout master` 3. `git pull` -4. `git stash pop` -5. `docker-compose build` -6. [ChangeLog](../CHANGELOG.md)ã§ãƒžã‚¤ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³æƒ…å ±ã‚’ç¢ºèªã™ã‚‹ -7. `docker-compose stop && docker-compose up -d` +4. `git submodule update --init` +5. `git stash pop` +6. `docker-compose build` +7. [ChangeLog](../CHANGELOG.md)ã§ãƒžã‚¤ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³æƒ…å ±ã‚’ç¢ºèªã™ã‚‹ +8. `docker-compose stop && docker-compose up -d` ### cliコマンドを実行ã™ã‚‹æ–¹æ³•: diff --git a/docs/docker.zh.md b/docs/docker.zh.md index a842fcb0cc46e44fd79f384d84f17e628c6fd631..5a494ea11e02b9c52a2f0588a3f94c01bc4f7b68 100644 --- a/docs/docker.zh.md +++ b/docs/docker.zh.md @@ -83,10 +83,11 @@ docker-compose run --rm web yarn run init 1. `git stash` 2. `git checkout master` 3. `git pull` -4. `git stash pop` -5. `docker-compose build` -6. 检查 [更新日志](../CHANGELOG.md) 以获å–å‡çº§è¿ç§»ä¿¡æ¯ã€‚ -7. `docker-compose stop && docker-compose up -d` +4. `git submodule update --init` +5. `git stash pop` +6. `docker-compose build` +7. 检查 [更新日志](../CHANGELOG.md) 以获å–å‡çº§è¿ç§»ä¿¡æ¯ã€‚ +8. `docker-compose stop && docker-compose up -d` ### 如何执行 [控制å°æŒ‡ä»¤](manage.zh.md): `docker-compose run --rm web node built/tools/mark-admin @example` diff --git a/docs/setup.en.md b/docs/setup.en.md index bb72fcda1e6250886f0bf168e63dc4762347d6ff..dfe50a6600a574562d4f80808f53a700ed2b2cd2 100644 --- a/docs/setup.en.md +++ b/docs/setup.en.md @@ -131,11 +131,12 @@ You can check if the service is running with `systemctl status misskey`. ### How to update your Misskey server to the latest version 1. `git checkout master` 2. `git pull` -3. `yarn install` -4. `NODE_ENV=production yarn build` -5. `yarn migrate` -6. Restart your Misskey process to apply changes -7. Enjoy +3. `git submodule update --init` +4. `yarn install` +5. `NODE_ENV=production yarn build` +6. `yarn migrate` +7. Restart your Misskey process to apply changes +8. Enjoy If you encounter any problems with updating, please try the following: 1. `yarn clean` or `yarn cleanall` diff --git a/docs/setup.fr.md b/docs/setup.fr.md index 7f4795eec56b9cf6420b0c432a32603f632b845e..f38c7a8eab90e8429446eb4b6e5e8208f7b495a2 100644 --- a/docs/setup.fr.md +++ b/docs/setup.fr.md @@ -126,9 +126,10 @@ Vous pouvez vérifier si le service a démarré en utilisant la commande `system ### Méthode de mise à jour vers la plus récente version de Misskey 1. `git checkout master` 2. `git pull` -3. `yarn install` -4. `NODE_ENV=production yarn build` -5. `yarn migrate` +3. `git submodule update --init` +4. `yarn install` +5. `NODE_ENV=production yarn build` +6. `yarn migrate` ---------------------------------------------------------------- diff --git a/docs/setup.ja.md b/docs/setup.ja.md index e8bae56f43b433a8b9c484b260cf30ec62ef5645..5681ee8c511eeac151aa598ed8685dbfe5e8c32a 100644 --- a/docs/setup.ja.md +++ b/docs/setup.ja.md @@ -133,9 +133,10 @@ yarn run init ### Misskeyを最新ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã«ã‚¢ãƒƒãƒ—デートã™ã‚‹æ–¹æ³•: 1. `git checkout master` 2. `git pull` -3. `yarn install` -4. `NODE_ENV=production yarn build` -5. `yarn migrate` +3. `git submodule update --init` +4. `yarn install` +5. `NODE_ENV=production yarn build` +6. `yarn migrate` ãªã«ã‹å•é¡ŒãŒç™ºç”Ÿã—ãŸå ´åˆã¯ã€`yarn clean`ã¾ãŸã¯`yarn cleanall`ã™ã‚‹ã¨ç›´ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ diff --git a/docs/setup.zh.md b/docs/setup.zh.md index 50664706b757826a5b9b002b96ac0b06a0ac5e31..26a72f0d05a1ba81783698cf0c35b55be78374c1 100644 --- a/docs/setup.zh.md +++ b/docs/setup.zh.md @@ -131,11 +131,12 @@ yarn run init ### 如何将您的 Misskey æœåŠ¡å™¨å‡çº§è‡³æœ€æ–°ç‰ˆæœ¬ 1. `git checkout master` 2. `git pull` -3. `yarn install` -4. `NODE_ENV=production yarn build` -5. `yarn migrate` -6. é‡å¯æ‚¨çš„ Misskey 进程æ¥åº”用改å˜ã€‚ -7. 尽情享å—å§ï¼ +3. `git submodule update --init` +4. `yarn install` +5. `NODE_ENV=production yarn build` +6. `yarn migrate` +7. é‡å¯æ‚¨çš„ Misskey 进程æ¥åº”用改å˜ã€‚ +8. 尽情享å—å§ï¼ 如果您在更新时é‡åˆ°ä»»ä½•é—®é¢˜ï¼Œè¯·å°è¯•ä»¥ä¸‹æ“作: 1. `yarn clean` 或是 `yarn cleanall` diff --git a/locales/de-DE.yml b/locales/de-DE.yml index 1afc8fab4805ee2db79a11d402da95c35f1be9ae..c5ce70dd671f8f887a0c3a42a0f8693332b932de 100644 --- a/locales/de-DE.yml +++ b/locales/de-DE.yml @@ -779,6 +779,12 @@ translate: "Ãœbersetzen" translatedFrom: "Aus {x} übersetzt" accountDeletionInProgress: "Löschung des Benutzerkontos momentan in Bearbeitung" usernameInfo: "Ein Name, durch den dein Benutzerkonto auf diesem Server identifiziert werden kann. Du kannst das Alphabet (a~z, A~Z), Ziffern (0~9) oder Unterstriche (_) verwenden. Benutzernamen können später nicht geändert werden." +aiChanMode: "Ai Modus" +keepCw: "Inhaltswarnung beibehalten" +pubSub: "Pub/Sub Benutzerkonten" +lastCommunication: "Letzte Kommunikation" +resolved: "Gelöst" +unresolved: "Ungelöst" _accountDelete: accountDelete: "Benutzerkonto löschen" mayTakeTime: "Da die Löschung eines Benutzerkontos ein aufwendiger Prozess ist, kann dessen Dauer davon abhängen, wie viel Inhalt in diesem erstellt wurde oder wie viele Dateien hochgeladen wurden." @@ -1159,6 +1165,7 @@ _widgets: jobQueue: "Job-Warteschlange" serverMetric: "Servermetriken" aiscript: "AiScript-Konsole" + aichan: "Ai" _cw: hide: "Verbergen" show: "Inhalt anzeigen" diff --git a/locales/en-US.yml b/locales/en-US.yml index 9565e620387590d39c864c733ff4ca9c73268f28..5d33e35f5e720e38784f9b1f20b49813b6ab51e5 100644 --- a/locales/en-US.yml +++ b/locales/en-US.yml @@ -779,6 +779,12 @@ translate: "Translate" translatedFrom: "Translated from {x}" accountDeletionInProgress: "Account deletion is currently in progress" usernameInfo: "A name that identifies your account from others on this server. You can use the alphabet (a~z, A~Z), digits (0~9) or underscores (_). Usernames can not be changed later." +aiChanMode: "Ai Mode" +keepCw: "Keep Content Warning" +pubSub: "Pub/Sub Accounts" +lastCommunication: "Last communication" +resolved: "Resolved" +unresolved: "Unresolved" _accountDelete: accountDelete: "Delete Account" mayTakeTime: "As account deletion is a resource-heavy process, it may take some time to complete depending on how much content you have created and how many files you have uploaded." @@ -1093,7 +1099,7 @@ _2fa: _permissions: "read:account": "View your account information" "write:account": "Edit your account information" - "read:blocks": "View the list of people you blocked" + "read:blocks": "View your list of blocked users" "write:blocks": "Edit your list of blocked users" "read:drive": "Access your drive files and folders" "write:drive": "Edit or delete your drive files and folders" @@ -1159,6 +1165,7 @@ _widgets: jobQueue: "Job Queue" serverMetric: "Server metrics" aiscript: "AiScript console" + aichan: "Ai" _cw: hide: "Hide" show: "Show content" diff --git a/locales/eo-UY.yml b/locales/eo-UY.yml index 4d435512b8e15deadcce4742aab6fd5d2a4afda2..9ebd9b1d81c7b73093a666adad543224d10f06f9 100644 --- a/locales/eo-UY.yml +++ b/locales/eo-UY.yml @@ -1,8 +1,8 @@ --- _lang_: "Esperanto" headlineMisskey: "Reto ligata per notoj" -introMisskey: "Bonvenon! Misskey estas malfermitkoda malcentraliza mikrobloga servo.\nKreu \"noto\"n por diskonigu tion ke nun okazas, aÅ por dissendu pri vi. 📡\nPer la funkcio \"reago\", vi ankaÅ povas rapide esprimi vian senton pri ĉies noto. ðŸ‘\nOni esploru novan mondon. 🚀" -monthAndDay: "{day}-a/{month}" +introMisskey: "Bonvenon! Misskey estas malfermitkoda malcentraliza mikrobloga servo.\nKreu \"noto\"n por diskonigu ke nun okazas, aÅ por dissendu pri vi. 📡\nPer la funkcio \"reago\", vi ankaÅ povas rapide esprimi vian senton pri ĉies noto. ðŸ‘\nEsploru novan mondon. 🚀" +monthAndDay: "{day}a/{month}" search: "Serĉi" notifications: "Sciigoj" username: "Uzantnomo" @@ -16,36 +16,35 @@ enterUsername: "Entajpu uzantnomon" renotedBy: "Renoto farita de {user}" noNotes: "Neniu noto!" noNotifications: "Vi ne havas sciigojn." -instance: "Ekzemplo" +instance: "Nodo" settings: "Agordoj" basicSettings: "Äœeneralaj agordoj" otherSettings: "Aliaj agordoj" openInWindow: "Malfermi en nova fenestro" profile: "Profilo" timeline: "Templinio" -noAccountDescription: "Tiu uzanto ankoraÅ ne skribis biografieton" +noAccountDescription: "Tiu uzanto ne skribis biografieton" login: "Ensaluti" loggingIn: "Ensalutado..." logout: "Elsaluti" signup: "Krei konton" uploading: "AlÅutado..." save: "Konservi" -users: "Uzanto" +users: "Uzantoj" addUser: "Aldoni uzanton" favorite: "Preferi" -favorites: "Preferataj" +favorites: "Preferataĵoj" unfavorite: "Malpreferi" -favorited: "Aldonita al preferatoj" -alreadyFavorited: "Jame aldonita al preferatoj" -cantFavorite: "Ne aldonita al preferatoj" -pin: "Alpingli sur la profilo" +favorited: "Aldonita al preferataĵoj" +cantFavorite: "Ne aldonita al preferataĵoj" +pin: "Alpingli al la profilo" unpin: "Depingli" copyContent: "Kopii enhavon" copyLink: "Kopii ligilon" delete: "ForviÅi" -deleteAndEdit: "Forigi kaj redakti" +deleteAndEdit: "ForviÅi kaj redakti" deleteAndEditConfirm: "Ĉu vi certas, ke vi volas forigi kaj redakti la noton? AnkaŠĉiuj reagoj, renotoj, kaj respondoj al Äi foriÄos." -addToList: "Aldoni al la listo" +addToList: "Aldoni al listo" sendMessage: "Sendi mesaÄon" copyUsername: "Kopii uzantnomon" searchUser: "Serĉi uzanton" @@ -57,13 +56,13 @@ receiveFollowRequest: "Peto de sekvado estas ricevita" followRequestAccepted: "La peto de sekvado akceptita" mention: "Mencioj" mentions: "Al vi" -directNotes: "Rektaj notoj" +directNotes: "Notoj rektaj" importAndExport: "Importi/eksporti" import: "Importi" export: "Eksporti" files: "Dosieroj" download: "ElÅuti" -driveFileDeleteConfirm: "Ĉu vi certas, ke vi volas forviÅi la dosieron \"{name}\"? AnkaÅ notoj kiu enhavas Äin forviÅiÄos." +driveFileDeleteConfirm: "Ĉu vi certas, ke vi volas forviÅi la dosieron \"{name}\"? AnkaÅ notoj kiuj enhavas Äin forviÅiÄos." unfollowConfirm: "Ĉu vi certas, ke vi volas ne plu sekvi {name}'(o)n?" lists: "Listoj" noLists: "Neniu listo" @@ -86,17 +85,21 @@ unfollow: "Malsekvi" enterEmoji: "Entajpu emoĵion" renote: "Fari renoton" unrenote: "Malfari renoton" -renoted: "Renoton fariÄis." -cantRenote: "Tiu noto ne estas renototebla." -cantReRenote: "Oni ne povas fari renoton kiu enhavas renoto." +renoted: "Renoto fariÄis." +cantRenote: "Tiu noto ne estas resendebla." +cantReRenote: "Renotoj ne estas renotebla." quote: "Citi" -pinnedNote: "Pinglita noto" -pinned: "Alpingli sur la profilo" +pinnedNote: "Alpinglita noto" +pinned: "Alpingli al la profilo" you: "Vi" clickToShow: "Klaku por malkaÅu" sensitive: "Enhavo ne estas deca por laborejo (NSFW)" add: "Aldoni" reaction: "Reagoj" +rememberNoteVisibility: "Rememori la videblecon de la noto laste sendita" +attachCancel: "Deigi aldonaĵon" +markAsSensitive: "TroviÄi NSFW" +unmarkAsSensitive: "Ne troviÄi NSFW" enterFileName: "Entajpu nomon de dosiero" mute: "Silentigi" unmute: "Malsilentigi" @@ -119,12 +122,12 @@ emojis: "Emoĵio" emojiName: "Nomo de emoĵio" emojiUrl: "URL de la emoĵio" addEmoji: "Aldoni emoĵion" -settingGuide: "Rekomendaj agordoj" +settingGuide: "Agordaj rekomendoj" cacheRemoteFiles: "Havi staplon de transaj dosieroj" -flagAsBot: "Tiu uzanto estas roboto" -flagAsCat: "Tiu uzanto estas kato" +flagAsBot: "Agordo por robota uzanto" +flagAsCat: "Agordo de katiÄa uzanto" addAccount: "Aldoni konton" -showOnRemote: "Vidi sur la fora ekzemplo" +showOnRemote: "Vidi sur la fora nodo" general: "Äœenerala" wallpaper: "Ekranfonoj" setWallpaper: "Apliki ekranfonon" @@ -135,42 +138,43 @@ followConfirm: "Ĉu vi certas ke vi volas sekvi {name}'(o)n?" selectUser: "Elekti uzanton" annotation: "Komentarioj" federation: "Kunfederaĵo" -instances: "Ekzemplo" +instances: "Nodo" perHour: "Po horo" perDay: "Po tago" -blockThisInstance: "Bloki tiu ekzemplo" +blockThisInstance: "Bloki tiun nodon" version: "Versio" withNFiles: "{n} dosiero(j)" disk: "Diskilo" -instanceInfo: "Informo pri la ekzemplo" +instanceInfo: "Informoj pri la nodo" clearCachedFiles: "Malplenigi la staplon" clearCachedFilesConfirm: "Ĉu vi certas, ke vi volas forviÅi ĉiujn transajn dosierojn en la staplo?" -blockedInstances: "Blokataj ekzemploj" -muteAndBlock: "Silentigatoj kaj blokatoj" -mutedUsers: "Silentigataj uzantoj" -blockedUsers: "Blokataj uzantoj" +blockedInstances: "Blokitaj nodoj" +muteAndBlock: "Silentigitoj kaj blokitoj" +mutedUsers: "Silentigitaj uzantoj" +blockedUsers: "Blokitaj uzantoj" noUsers: "Sen uzantoj" editProfile: "Redakti profilon" noteDeleteConfirm: "Ĉu vi certas ke vi volas forviÅi la noton?" pinLimitExceeded: "Vi povas alpingli ne pli noton." -processing: "Traktado..." +processing: "Prilaborado..." noCustomEmojis: "Neniu emoĵio" -federating: "Kunfederado" -blocked: "Blokata" +federating: "Nun kunfederanta" +blocked: "Blokita" +suspended: "Suspendita" all: "Ĉiuj" -subscribing: "Abonita" -publishing: "Dissendado" +subscribing: "Abonata" +publishing: "Al kiu dissendas" notResponding: "Alvokato ne disponeblas" -instanceFollowing: "Sekvatoj el la ekzemplo" -instanceFollowers: "Sekvantoj el la ekzemplo" -instanceUsers: "Uzantoj de la ekzemplo" +instanceFollowing: "Sekvatoj el la nodo" +instanceFollowers: "Sekvantoj el la nodo" +instanceUsers: "Uzantoj de ĉi tiu nodo" changePassword: "ÅœanÄi pasvorton" security: "Sekureco" currentPassword: "Aktuala pasvorto" newPassword: "Nova pasvorto" newPasswordRetype: "Reentajpu la novan pasvorton" attachFile: "Aldoni dosieron" -more: "Plu !" +more: "Plu!" featured: "Maksimumi" usernameOrUserId: "Uzantnomo aÅ identigilo de uzanto" noSuchUser: "Neniuj uzantoj trovitaj." @@ -195,8 +199,8 @@ startMessaging: "Komenci babiladon" nUsersRead: "Legita de {n} homoj" tos: "Kondiĉoj de uzado" start: "KomenciÄi" -home: "Hejmo" -remoteUserCaution: "Ĉi tiu Infomoj estas ne tute ekzakta pro distanca uzanto." +home: "Hejma" +remoteUserCaution: "Tiu infomoj estas ne tute ekzakta pro distanca uzanto." activity: "Aktiveco" images: "Bildoj" birthday: "NaskiÄdato" @@ -233,14 +237,14 @@ watch: "Observi" unwatch: "Malobservi" accept: "Permesi" normal: "Normala" -instanceName: "Nomo de la ekzemplo" +instanceName: "Nomo de la nodo" maintainerName: "Nomo de la administranto" maintainerEmail: "RetpoÅto de la administranto" tosUrl: "URL de kondiĉoj de uzado" thisYear: "Ĉi-jare" thisMonth: "Ĉi-monate" today: "HodiaÅ" -dayX: "{day}-a" +dayX: "{day}a" monthX: "{month}" yearX: "La jaro {year}" pages: "PaÄoj" @@ -257,26 +261,32 @@ backgroundImageUrl: "URL de fona bildo" basicInfo: "Baza informo" pinnedUsers: "Alpinglita uzanto" pinnedPages: "Alpinglitaj paÄoj" -pinnedNotes: "Pinglita noto" +pinnedNotes: "Alpinglita noto" antennas: "Antenoj" manageAntennas: "Administri antenojn" name: "Nomo" +notifyAntenna: "Oni sciigos novajn notojn" withFileAntenna: "Nur kun aldonaĵo" withReplies: "Inkluzive respondoj" +connectedTo: "Sekva konto estas konektita" notesAndReplies: "Kun respondoj" withFiles: "Kun aldonaĵo" silence: "Mutigi" silenceConfirm: "Ĉu vi certas ke vi volas mutigi la uzanton?" unsilence: "Malmutigi" unsilenceConfirm: "Ĉu vi certas ke vi volas malmutigi la uzanton?" -recentlyUpdatedUsers: "Uzantoj kiu lastatempe faris noton" -recentlyRegisteredUsers: "Nove aniÄintaj uzantoj" +popularUsers: "Popularaj uzantoj" +recentlyUpdatedUsers: "Uzantoj kiuj lastatempe sendis noton" +recentlyRegisteredUsers: "NovaliÄintaj uzantoj" +exploreUsersCount: "Tiuj estas {count} uzantoj" +exploreFediverse: "Esplori la Fediverson" popularTags: "Popularaj kradvortoj" userList: "Listoj" about: "Informoj" aboutMisskey: "Pri Misskey" administrator: "Administranto" -moderator: "Moderigisto" +moderator: "Kontrolisto" +nUsersMentioned: "{n} uzanto(j) menciis" securityKey: "Sekureca Ålosilo" securityKeyName: "Nomo de la Ålosilo" lastUsed: "Plej malnove uzita" @@ -294,14 +304,14 @@ groups: "Grupoj" createGroup: "Krei grupon" groupName: "Grupa nomo" members: "Membroj" -messagingWithUser: "MesaÄado kun uzanto" -messagingWithGroup: "MesaÄado kun grupo" +messagingWithUser: "Babili private" +messagingWithGroup: "Babili grupe" title: "Titolo" text: "Teksto" enable: "Ebligi" next: "Sekve" noteOf: "Noto de {user}" -noMessagesYet: "Neniu mesaÄo" +noMessagesYet: "AnkoraÅ neniu mesaÄo" newMessageExists: "Vi ricevis novan mesaÄon." onlyOneFileCanBeAttached: "Vi povas aldoni nur unu dosieron po unu mesaÄo." invitationCode: "Kodo de invito" @@ -331,19 +341,26 @@ objectStorageRegion: "Regiono" objectStorageUseSSL: "Oni uzas SSL" serverLogs: "Servila protokolo" deleteAll: "ForviÅi ĉiujn" +newNoteRecived: "Jen estas novaj notoj" sounds: "Sonoj" listen: "AÅdi" none: "Neniu" showInPage: "Vidi en paÄo" deleteAllFiles: "ForviÅi ĉiujn dosierojn" deleteAllFilesConfirm: "Ĉu vi certas, ke vi volas forviÅi ĉiujn viajn dosierojn?" -userSilenced: "Tiu uzanto estas mutigata." +userSuspended: "Ĉi tiu uzanto estas flostigita." +userSilenced: "Ĉi tiu uzanto estas mutigita." menu: "Menuo" deletedNote: "ForviÅita noto" invisibleNote: "Malpublika noto" +visibility: "Videbleco" poll: "Balotujo" useCw: "KaÅi enhavo" +enablePlayer: "Vidi videon" +disablePlayer: "Fermi videon" themeEditor: "Redaktilo de koloraroj" +description: "Priskribe" +describeFile: "Priskribi la bildon" author: "AÅtoro" manage: "Administro" plugins: "Kromaĵoj" @@ -358,8 +375,9 @@ smtpConfig: "Agordoj de la servilo SMTP" smtpPort: "Pordo" smtpUser: "Uzantnomo" smtpPass: "Pasvorto" -wordMute: "Silentigo de vortoj" +wordMute: "Silentigi specifajn vortojn" userSaysSomething: "{name} parolis ion" +makeActive: "Aktivigi" display: "Vidi" copy: "Kopii" database: "Datumbazo" @@ -396,7 +414,7 @@ makeExplorable: "Videbligi konton sur la paÄo \"Esplori\"" duplicate: "Duobligi" left: "Maldekstra" center: "Centra" -showTitlebar: "Montri titola stango" +showTitlebar: "Videbligi titolan stangon" clearCache: "Malplenigi staplon" onlineUsersCount: "{n} uzanto(j) estas surlinea" nUsers: "{n} uzanto(j)" @@ -421,13 +439,15 @@ publish: "Publikigi" inChannelSearch: "Serĉi en kanalo" useReactionPickerForContextMenu: "Oni malfermas reago-elektilon per dekstro-kliki" typingUsers: "{users} estas entajpanta(j)..." +addDescription: "Priskribi" info: "Informoj" +userInfo: "Informoj de uzanto" unknown: "Nekonata" online: "Surkonektita" offline: "Forkonektita" -instanceBlocking: "Blokado de ekzemplo" +instanceBlocking: "Blokado de nodoj" selectAccount: "Elekti konton" -user: "Uzanto" +user: "Uzantoj" administration: "Administro" accounts: "Kontoj" high: "Alta" @@ -470,7 +490,7 @@ _aboutMisskey: translation: "Traduki Misskey'on" patrons: "Mecenatoj" _mfm: - dummy: "Misskey vastigas la mondon de Fediverso" + dummy: "Misskey evoluigas la mondon de Fediverso" mention: "Mencioj" hashtag: "Kradvorto" url: "URL" @@ -504,11 +524,12 @@ _channel: _menuDisplay: hide: "KaÅi" _wordMute: - muteWords: "KaÅigitaj vortoj" - mutedNotes: "Silentigataj notoj" + muteWords: "Silentigitaj vortoj" + mutedNotes: "Silentigitaj notoj" _theme: manage: "Administri kolorarojn" code: "Kodo de koloraro" + description: "Priskribe" darken: "Malbrileco" lighten: "Brileco" keys: @@ -516,9 +537,10 @@ _theme: navBg: "Fono de flanka stango" hashtag: "Kradvorto" mention: "Mencioj" - renote: "Fari renoton" + renote: "Renoto" buttonBg: "Fono de butono" driveFolderBg: "Fono de dosierujo de la disko" + messageBg: "Fono de retbabilejo" _sfx: note: "Nova noto" noteMy: "Mia noto" @@ -530,7 +552,7 @@ _sfx: _ago: future: "Futuro" justNow: "Ä´us" - secondsAgo: "AntaÅ {n} sekundoj" + secondsAgo: "AntaÅ {n} sekundo(j)" minutesAgo: "AntaÅ {n} minutoj" hoursAgo: "AntaÅ {n} horo(j)" daysAgo: "AntaÅ {n} tagoj" @@ -548,11 +570,13 @@ _tutorial: step7_2: "Se vi volas scii pli pri Misskey, rigardu la fakon {help}." step7_3: "Do, bonvolu amuziÄi Misskey'on🚀" _permissions: - "read:blocks": "Vidi la liston de uzantoj kiun vi blokas" - "write:blocks": "Redakti vian liston de blokataj uzantoj" + "write:account": "Redakti Informojn de via konto" + "read:blocks": "Vidi vian liston de uzantoj blokitaj" + "write:blocks": "Redakti vian liston de uzantoj blokitaj" "read:drive": "Operacio por legi la informon de dosiero en via disko de Misskey" "write:drive": "Ĉia operacio por skribi, forviÅi, aÅ alimaniere ÅanÄi la informon de dosiero en via disko de Misskey" - "read:favorites": "Vidi vian liston de preferatoj" + "read:favorites": "Vidi vian liston de preferataĵoj" + "write:favorites": "Redakti vian liston de preferataĵoj." "read:following": "Vidi tiun kiun vi sekvas" "write:following": "Sekvi aÅ malsekvi alian uzanton" "read:messaging": "Vidi vian retbabiladon" @@ -585,6 +609,7 @@ _widgets: slideshow: "Bildoprezento" button: "Butono" onlineUsers: "Surkonektita uzanto" + aichan: "Ai" _cw: show: "Vidu pli" files: "{count} dosiero(j)" @@ -597,11 +622,12 @@ _poll: vote: "Baloti" closed: "Oni jam balotis Äin" _visibility: - publicDescription: "Via noto aperiÄos sur la konfederacia templinio" - home: "Hejmo" - homeDescription: "Elsendi nur sur la hejmtemplinio" + publicDescription: "Via noto aperiÄos sur la templinio Malloka" + home: "Hejma" + homeDescription: "Elsendi nur sur la templinio Hejmo" followers: "Sekvantoj" followersDescription: "Nur al sekvantoj al mi" + specified: "Rekta" localOnly: "Nur loka" localOnlyDescription: "Ne montri al transaj uzantoj" _postForm: @@ -616,18 +642,21 @@ _profile: changeBanner: "ÅœanÄi standardon" _exportOrImport: allNotes: "Ĉiuj notoj" - followingList: "Sekvataj" + followingList: "Sekvataj uzantoj" muteList: "Silentigoj" - blockingList: "Blokado" + blockingList: "Blokitaj uzantoj" userLists: "Listoj" _charts: - federationInstancesTotal: "Tuta numero de kunfederantaj ekzemploj" + federationInstancesTotal: "Tuta numero de nodoj kunfederantaj" + usersTotal: "Tuta numero de uzantoj" + activeUsers: "Numero de aktivaj uzantoj" + notesTotal: "Tuta numero de notoj" filesTotal: "Tuta numero de dosieroj" _timelines: - home: "HEJMO" - local: "LOKA" - social: "SOCIALA" - global: "MALLOKA" + home: "Hejma" + local: "Loka" + social: "Sociala" + global: "Malloka" _rooms: translate: "Movi" chooseImage: "Elekti bildon" @@ -641,15 +670,21 @@ _pages: viewPage: "Vidi via paÄojn" my: "Miaj paÄoj" featured: "Ravaĵoj" + contents: "Enhavo" content: "Blokado de paÄo" url: "URL de paÄo" alignCenter: "Centrigi" chooseBlock: "Aldoni blokon" + contentBlocks: "Enhavo" blocks: + text: "Teksto" + textarea: "Areo de teksto" image: "Bildo" button: "Butono" _post: canvasId: "Kanvasa identigilo" + textInput: "Enigo el teksto" + textareaInput: "Enigo el teksto en multaj linioj" _numberInput: text: "Titolo" _canvas: @@ -665,8 +700,20 @@ _pages: event: "Nomo de la evento" script: categories: + text: "Manipulo de teksto" list: "Listoj" blocks: + text: "Teksto" + multiLineText: "Teksto (multaj linioj)" + textList: "List de teksto" + _strLen: + arg1: "Teksto" + _strPick: + arg1: "Teksto" + _strReplace: + arg1: "Teksto" + _strReverse: + arg1: "Teksto" _join: arg1: "Listoj" _randomPick: @@ -675,18 +722,24 @@ _pages: arg1: "Listoj" _seedRandomPick: arg2: "Listoj" + _DRPWPM: + arg1: "List de teksto" pick: "Elekti de la listo" _pick: arg1: "Listoj" _listLen: arg1: "Listoj" + _stringToNumber: + arg1: "Teksto" _splitStrByLine: arg1: "Teksto" types: + string: "Teksto" array: "Listoj" stringArray: "List de teksto" _notification: fileUploaded: "La dosiero sukcese alÅutiÄis." + youRenoted: "Renoto farita de {name}" youGotPoll: "{name} balotis" youGotMessagingMessageFromUser: "{name} sentis mesaÄon al vi." youGotMessagingMessageFromGroup: "Retbabilan mesaÄon oni sendis al la grupo {name}" @@ -709,3 +762,4 @@ _deck: antenna: "Antenoj" list: "Listoj" mentions: "Al vi" + direct: "Notoj rektaj" diff --git a/locales/fr-FR.yml b/locales/fr-FR.yml index 9b77a750e4c7729f7f3f130578b0482773e9aa92..7bb4f69769f6d7e1460df7b3faa8f383c00807d0 100644 --- a/locales/fr-FR.yml +++ b/locales/fr-FR.yml @@ -429,7 +429,7 @@ invitationCode: "Code d’invitation" checking: "Vérification en cours..." available: "Disponible" unavailable: "Non disponible" -usernameInvalidFormat: "Le nom d'utilisateur peut contenir uniquement des lettres, des chiffres et des _" +usernameInvalidFormat: "Le nom d'utilisateur peut contenir uniquement des lettres (minuscules et/ou majuscules), des chiffres et des _" tooShort: "Trop court" tooLong: "Trop long" weakPassword: "Mot de passe faible" @@ -776,6 +776,16 @@ misskeyUpdated: "Misskey a été mis à jour !" whatIsNew: "Voir les derniers changements" translate: "Traduire" translatedFrom: "Traduit depuis {x}" +accountDeletionInProgress: "La suppression de votre compte est en cours" +usernameInfo: "C'est un nom qui identifie votre compte sur l'instance de manière unique. Vous pouvez utiliser des lettres de l'alphabet (minuscules et majuscules), des chiffres (de 0 à 9), ou bien le tiret « _ ». Vous ne pourrez pas modifier votre nom d'utilisateur·rice par la suite." +keepCw: "Garder le CW" +_accountDelete: + accountDelete: "Supprimer le compte" + mayTakeTime: "La suppression de compte nécessitant beaucoup de ressources, l'exécution du processus peut prendre du temps, en fonction de la quantité de contenus que vous avez créés et du nombre de fichiers que vous avez téléversés." + sendEmail: "Une fois la suppression de votre compte effectuée, un courriel sera envoyé à l'adresse que vous aviez enregistrée." + requestAccountDelete: "Demander la suppression de votre compte" + started: "La procédure de suppression a commencé." + inProgress: "Suppression en cours" _docs: continueReading: "Lire plus" features: "Fonctionnalités" diff --git a/locales/id-ID.yml b/locales/id-ID.yml index 236bd01ac32df5c3770d63e200b728d82c319a1e..06191089c3867fb58cc7d1028439e56476a56b9d 100644 --- a/locales/id-ID.yml +++ b/locales/id-ID.yml @@ -775,6 +775,18 @@ useBlurEffect: "Gunakan efek blur pada antarmuka" learnMore: "Pelajari lebih lanjut" misskeyUpdated: "Misskey telah dimutakhirkan!" whatIsNew: "Lihat perubahan pemutakhiran" +translate: "Terjemahkan" +translatedFrom: "Terjemahkan dari {x}" +accountDeletionInProgress: "Penghapusan akun sedang dalam proses" +usernameInfo: "Nama yang mengidentifikasikan akun kamu dari yang lain pada server ini. Kamu dapat menggunakan alfabet (a~z, A~Z), digit (0~9) atau garis bawah (_). Username tidak dapat diubah setelahnya." +keepCw: "Biarkan Peringatan Konten" +_accountDelete: + accountDelete: "Hapus akun" + mayTakeTime: "Karena penghapusan akun merupakan proses yang berat dan intensif, kemungkinan dapat membutuhkan waktu untuk menyelesaikan tergantung daripada berapa banyak konten yang kamu buat dan berapa banyak berkas yang telah kamu unggah." + sendEmail: "Setelah penghapusan akun selesai, pemberitahuan akan dikirimkan ke alamat surel yang terdaftarkan pada akun ini." + requestAccountDelete: "Minta penghapusan akun" + started: "Penghapusan telah dimulai" + inProgress: "Penghapusan sedang dalam proses" _docs: continueReading: "Baca lebih lanjut" features: "Fitur" @@ -1148,6 +1160,7 @@ _widgets: jobQueue: "Antrian kerja" serverMetric: "Statistik server" aiscript: "Konsol AiScript" + aichan: "Ai" _cw: hide: "Sembunyikan" show: "Lihat konten" diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index 0c78ea149258a40a468310d4844cd0e8cda0e908..e22f50668f4b0c6fa91ae4c31e6d59082af3e1cf 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -779,6 +779,12 @@ translate: "翻訳" translatedFrom: "{x}ã‹ã‚‰ç¿»è¨³" accountDeletionInProgress: "アカウントã®å‰Šé™¤ãŒé€²è¡Œä¸ã§ã™" usernameInfo: "サーãƒãƒ¼ä¸Šã§ã‚ãªãŸã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’一æ„ã«è˜åˆ¥ã™ã‚‹ãŸã‚ã®åå‰ã€‚アルファベット(a~z, A~Z)ã€æ•°å—(0~9)ã€ãŠã‚ˆã³ã‚¢ãƒ³ãƒ€ãƒ¼ãƒãƒ¼(_)ãŒä½¿ç”¨ã§ãã¾ã™ã€‚ユーザーåã¯å¾Œã‹ã‚‰å¤‰æ›´ã™ã‚‹ã“ã¨ã¯å‡ºæ¥ã¾ã›ã‚“。" +aiChanMode: "è—モード" +keepCw: "CWã‚’ç¶æŒã™ã‚‹" +pubSub: "Pub/Subã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆ" +lastCommunication: "ç›´è¿‘ã®é€šä¿¡" +resolved: "解決済ã¿" +unresolved: "未解決" _accountDelete: accountDelete: "アカウントã®å‰Šé™¤" @@ -1188,6 +1194,7 @@ _widgets: jobQueue: "ジョブã‚ュー" serverMetric: "サーãƒãƒ¼ãƒ¡ãƒˆãƒªã‚¯ã‚¹" aiscript: "AiScriptコンソール" + aichan: "è—" _cw: hide: "éš ã™" diff --git a/locales/kab-KAB.yml b/locales/kab-KAB.yml index 199e4cc135f1a67c5e0b5395aae10c9f9aac92b8..364a9353105aca85ac6268333e20b8b582274bb8 100644 --- a/locales/kab-KAB.yml +++ b/locales/kab-KAB.yml @@ -36,6 +36,7 @@ selectList: "Fren tabdart" youHaveNoLists: "Ulac É£ur-k·m ula d yiwet n tabdart" security: "TaÉ£ellist" remove: "Kkes" +connectService: "Qqen" userList: "Tibdarin" securityKey: "Tasarutt n tÉ£ellist" securityKeyName: "Isem n tsarutt" diff --git a/locales/ru-RU.yml b/locales/ru-RU.yml index a6e759cc4bbcae79c2a7f341665396a22990d451..b886d4c60534245b7de6047dbfa0d2a9f0d5e1bd 100644 --- a/locales/ru-RU.yml +++ b/locales/ru-RU.yml @@ -1148,6 +1148,7 @@ _widgets: jobQueue: "Очередь заданий" serverMetric: "Показатели Ñервера" aiscript: "КонÑоль AiScript" + aichan: "Ðй" _cw: hide: "СпрÑтать" show: "Показать еще" diff --git a/locales/zh-CN.yml b/locales/zh-CN.yml index 7dad6232be4457dc67614dede2fe7e5cda0c6e21..dcc9226b7aedbd2537387e9440a87b853dca971a 100644 --- a/locales/zh-CN.yml +++ b/locales/zh-CN.yml @@ -779,8 +779,16 @@ translate: "翻译" translatedFrom: "从 {x} 翻译" accountDeletionInProgress: "æ£åœ¨åˆ 除账户" usernameInfo: "在æœåŠ¡å™¨ä¸Šå”¯ä¸€æ ‡è¯†æ‚¨çš„å¸æˆ·çš„å称。您å¯ä»¥ä½¿ç”¨å—æ¯ (a ~ z, A ~ Z)ã€æ•°å— (0 ~ 9) 和下划线 (_)。用户å以åŽä¸èƒ½æ›´æ”¹ã€‚" +keepCw: "ä¿ç•™CW" +pubSub: "Pub/Sub账户" +resolved: "已解决" +unresolved: "未解决" _accountDelete: accountDelete: "åˆ é™¤å¸æˆ·" + mayTakeTime: "åˆ é™¤è´¦å·æ˜¯ä¸€ä¸ªæ€§èƒ½æŸè€—较大的处ç†ï¼Œå¦‚果账å·æŒæœ‰çš„内容数é‡å’Œä¸Šä¼ 的文件数é‡è¾ƒå¤šçš„è¯ï¼Œå®Œæˆéœ€è¦èŠ±è´¹ä¸€æ®µæ—¶é—´ã€‚" + sendEmail: "è´¦æˆ·åˆ é™¤å®ŒæˆåŽï¼Œå°†å‘注册的电å邮件地å€å‘é€é€šçŸ¥ã€‚" + requestAccountDelete: "è¯·æ±‚åˆ é™¤è´¦æˆ·" + started: "è´¦æˆ·åˆ é™¤è¿‡ç¨‹å·²å¼€å§‹ã€‚" inProgress: "æ£åœ¨åˆ 除" _docs: continueReading: "继ç»é˜…读" @@ -1155,6 +1163,7 @@ _widgets: jobQueue: "作业队列" serverMetric: "æœåŠ¡å™¨ç›‘控" aiscript: "AiScript控制å°" + aichan: "è“" _cw: hide: "éšè—" show: "查看更多" diff --git a/misskey-assets b/misskey-assets new file mode 160000 index 0000000000000000000000000000000000000000..0179793ec891856d6f37a3be16ba4c22f67a81b5 --- /dev/null +++ b/misskey-assets @@ -0,0 +1 @@ +Subproject commit 0179793ec891856d6f37a3be16ba4c22f67a81b5 diff --git a/package.json b/package.json index 1f9baa3ca27da10e14a42e2e1ae0ddf1520b0239..ebb4d90897a513796f842c7f8edb06789560807a 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "misskey", "author": "syuilo <syuilotan@yahoo.co.jp>", - "version": "12.89.2", + "version": "12.90.0", "codename": "indigo", "repository": { "type": "git", @@ -148,6 +148,7 @@ "http-signature": "1.3.5", "idb-keyval": "5.1.3", "insert-text-at-cursor": "0.3.0", + "ip-cidr": "3.0.4", "is-svg": "4.3.1", "js-yaml": "4.1.0", "jsdom": "16.7.0", @@ -184,6 +185,7 @@ "postcss": "8.3.6", "postcss-loader": "6.1.1", "prismjs": "1.24.1", + "private-ip": "2.2.1", "probe-image-size": "7.2.1", "promise-limit": "2.7.0", "pug": "3.0.2", diff --git a/src/client/account.ts b/src/client/account.ts index ee1d845493d6f233a19b3fc3bb22c094a0d2d012..e469bae5a23802964eaf161e28570b1e42afb0db 100644 --- a/src/client/account.ts +++ b/src/client/account.ts @@ -1,4 +1,4 @@ -import { get, set } from '@client/scripts/idb-proxy'; +import { del, get, set } from '@client/scripts/idb-proxy'; import { reactive } from 'vue'; import { apiUrl } from '@client/config'; import { waiting } from '@client/os'; @@ -26,21 +26,33 @@ export async function signout() { //#region Remove account const accounts = await getAccounts(); accounts.splice(accounts.findIndex(x => x.id === $i.id), 1); - set('accounts', accounts); + + if (accounts.length > 0) await set('accounts', accounts); + else await del('accounts'); //#endregion - //#region Remove push notification registration + //#region Remove service worker registration try { - const registration = await navigator.serviceWorker.ready; - const push = await registration.pushManager.getSubscription(); - if (!push) return; - await fetch(`${apiUrl}/sw/unregister`, { - method: 'POST', - body: JSON.stringify({ - i: $i.token, - endpoint: push.endpoint, - }), - }); + if (navigator.serviceWorker.controller) { + const registration = await navigator.serviceWorker.ready; + const push = await registration.pushManager.getSubscription(); + if (push) { + await fetch(`${apiUrl}/sw/unregister`, { + method: 'POST', + body: JSON.stringify({ + i: $i.token, + endpoint: push.endpoint, + }), + }); + } + } + + if (accounts.length === 0) { + await navigator.serviceWorker.getRegistrations() + .then(registrations => { + return Promise.all(registrations.map(registration => registration.unregister())); + }); + } } catch (e) {} //#endregion diff --git a/src/client/components/signin.vue b/src/client/components/signin.vue index 0094038fb6c973290e603bdf8fc742d7d1ca18ec..c051288d0a93192ae3d0b7c4b1170d76217cd9e2 100755 --- a/src/client/components/signin.vue +++ b/src/client/components/signin.vue @@ -111,7 +111,9 @@ export default defineComponent({ onLogin(res) { if (this.autoSet) { - login(res.i); + return login(res.i); + } else { + return; } }, @@ -144,7 +146,7 @@ export default defineComponent({ }); }).then(res => { this.$emit('login', res); - this.onLogin(res); + return this.onLogin(res); }).catch(err => { if (err === null) return; os.dialog({ diff --git a/src/client/components/signup.vue b/src/client/components/signup.vue index d584b972097fc3185be12ce9e8e406cb374f599b..d3322741111f1680f6a1f39b905083fa85995cbb 100644 --- a/src/client/components/signup.vue +++ b/src/client/components/signup.vue @@ -178,14 +178,14 @@ export default defineComponent({ 'hcaptcha-response': this.hCaptchaResponse, 'g-recaptcha-response': this.reCaptchaResponse, }).then(() => { - os.api('signin', { + return os.api('signin', { username: this.username, password: this.password }).then(res => { this.$emit('signup', res); if (this.autoSet) { - login(res.i); + return login(res.i); } }); }).catch(() => { diff --git a/src/client/pages/federation.vue b/src/client/pages/federation.vue index f4ab9d0ec37c617d8c3f982f6c78e438778bf7d5..2afe70eea6ad07379e446057ab18c2854b5dfa59 100644 --- a/src/client/pages/federation.vue +++ b/src/client/pages/federation.vue @@ -28,14 +28,14 @@ <option value="-following">{{ $ts.following }} ({{ $ts.ascendingOrder }})</option> <option value="+followers">{{ $ts.followers }} ({{ $ts.descendingOrder }})</option> <option value="-followers">{{ $ts.followers }} ({{ $ts.ascendingOrder }})</option> - <option value="+caughtAt">{{ $ts.caughtAt }} ({{ $ts.descendingOrder }})</option> - <option value="-caughtAt">{{ $ts.caughtAt }} ({{ $ts.ascendingOrder }})</option> - <option value="+lastCommunicatedAt">{{ $ts.lastCommunicatedAt }} ({{ $ts.descendingOrder }})</option> - <option value="-lastCommunicatedAt">{{ $ts.lastCommunicatedAt }} ({{ $ts.ascendingOrder }})</option> + <option value="+caughtAt">{{ $ts.registeredAt }} ({{ $ts.descendingOrder }})</option> + <option value="-caughtAt">{{ $ts.registeredAt }} ({{ $ts.ascendingOrder }})</option> + <option value="+lastCommunicatedAt">{{ $ts.lastCommunication }} ({{ $ts.descendingOrder }})</option> + <option value="-lastCommunicatedAt">{{ $ts.lastCommunication }} ({{ $ts.ascendingOrder }})</option> <option value="+driveUsage">{{ $ts.driveUsage }} ({{ $ts.descendingOrder }})</option> <option value="-driveUsage">{{ $ts.driveUsage }} ({{ $ts.ascendingOrder }})</option> - <option value="+driveFiles">{{ $ts.driveFiles }} ({{ $ts.descendingOrder }})</option> - <option value="-driveFiles">{{ $ts.driveFiles }} ({{ $ts.ascendingOrder }})</option> + <option value="+driveFiles">{{ $ts.driveFilesCount }} ({{ $ts.descendingOrder }})</option> + <option value="-driveFiles">{{ $ts.driveFilesCount }} ({{ $ts.ascendingOrder }})</option> </MkSelect> </div> </div> diff --git a/src/client/pages/settings/general.vue b/src/client/pages/settings/general.vue index cfa8107d28d321eda162b0d32b7a8677dc8947bb..f8e8e6b24b86deda6649c889ad911fd6c6180dd0 100644 --- a/src/client/pages/settings/general.vue +++ b/src/client/pages/settings/general.vue @@ -45,6 +45,10 @@ </FormSwitch> </FormGroup> + <FormGroup> + <FormSwitch v-model:value="aiChanMode">{{ $ts.aiChanMode }}</FormSwitch> + </FormGroup> + <FormRadios v-model="fontSize"> <template #desc>{{ $ts.fontSize }}</template> <option value="small"><span style="font-size: 14px;">Aa</span></option> @@ -149,6 +153,7 @@ export default defineComponent({ enableInfiniteScroll: defaultStore.makeGetterSetter('enableInfiniteScroll'), useReactionPickerForContextMenu: defaultStore.makeGetterSetter('useReactionPickerForContextMenu'), squareAvatars: defaultStore.makeGetterSetter('squareAvatars'), + aiChanMode: defaultStore.makeGetterSetter('aiChanMode'), }, watch: { @@ -184,6 +189,10 @@ export default defineComponent({ this.reloadAsk(); }, + aiChanMode() { + this.reloadAsk(); + }, + showGapBetweenNotesInTimeline() { this.reloadAsk(); }, diff --git a/src/client/pages/settings/privacy.vue b/src/client/pages/settings/privacy.vue index 4095e744c239b9ae9f7b8c59654e98269d785ef3..46d8c17ca28d9c3f1d547b09a11b5e5845acb573 100644 --- a/src/client/pages/settings/privacy.vue +++ b/src/client/pages/settings/privacy.vue @@ -28,6 +28,7 @@ </FormSelect> <FormSwitch v-model:value="defaultNoteLocalOnly">{{ $ts._visibility.localOnly }}</FormSwitch> </FormGroup> + <FormSwitch v-model:value="keepCw" @update:value="save()">{{ $ts.keepCw }}</FormSwitch> </FormBase> </template> @@ -69,6 +70,7 @@ export default defineComponent({ defaultNoteVisibility: defaultStore.makeGetterSetter('defaultNoteVisibility'), defaultNoteLocalOnly: defaultStore.makeGetterSetter('defaultNoteLocalOnly'), rememberNoteVisibility: defaultStore.makeGetterSetter('rememberNoteVisibility'), + keepCw: defaultStore.makeGetterSetter('keepCw'), }, created() { diff --git a/src/client/pages/welcome.setup.vue b/src/client/pages/welcome.setup.vue index de844ece1ce38aa5ad5edf18b88a39ddc006a028..d0091bef67f878f0f569790086078202c26ba881 100644 --- a/src/client/pages/welcome.setup.vue +++ b/src/client/pages/welcome.setup.vue @@ -53,7 +53,7 @@ export default defineComponent({ username: this.username, password: this.password, }).then(res => { - login(res.i); + return login(res.token); }).catch(() => { this.submitting = false; diff --git a/src/client/store.ts b/src/client/store.ts index 4c4a7d93e997d452dba6b8dacb9a816905f212d9..e4b762873db414aba70f5aab8654995497987ac1 100644 --- a/src/client/store.ts +++ b/src/client/store.ts @@ -210,6 +210,10 @@ export const defaultStore = markRaw(new Storage('base', { where: 'device', default: '' }, + aiChanMode: { + where: 'device', + default: false + }, })); // TODO: ä»–ã®ã‚¿ãƒ–ã¨æ°¸ç¶šåŒ–ã•ã‚ŒãŸstateã‚’åŒæœŸ diff --git a/src/client/style.scss b/src/client/style.scss index 269cf889396834c64810e08f5cc7a7e6ffaeccd3..6ab5e796bd5c7ebf1d04851549d3031019473cd5 100644 --- a/src/client/style.scss +++ b/src/client/style.scss @@ -159,7 +159,6 @@ hr { display: inline-block; padding: 0; margin: 0; // for Safari - width: max-content; background: none; border: none; cursor: pointer; diff --git a/src/client/tsconfig.json b/src/client/tsconfig.json index ac7ef7ddfcafd68d1952aedf3377a7a429b7b416..7a26047ddf823238bb93dd58c7b845986a2da2d9 100644 --- a/src/client/tsconfig.json +++ b/src/client/tsconfig.json @@ -21,7 +21,8 @@ "baseUrl": ".", "paths": { "@/*": ["../*"], - "@client/*": ["./*"] + "@client/*": ["./*"], + "@lib/*": ["../../lib/*"], }, "typeRoots": [ "node_modules/@types", diff --git a/src/client/ui/default.vue b/src/client/ui/default.vue index 23b63114cc77031c4897e2f2d03b649f8c9686f9..eef693faef7b49342880ce6cb7e65ef5c3da3832 100644 --- a/src/client/ui/default.vue +++ b/src/client/ui/default.vue @@ -54,12 +54,14 @@ <XWidgets v-if="widgetsShowing" class="tray"/> </transition> + <iframe v-if="$store.state.aiChanMode" class="ivnzpscs" ref="live2d" src="https://misskey-dev.github.io/mascot-web/?scale=2&y=1.4"></iframe> + <XCommon/> </div> </template> <script lang="ts"> -import { defineComponent, defineAsyncComponent } from 'vue'; +import { defineComponent, defineAsyncComponent, markRaw } from 'vue'; import { instanceName } from '@client/config'; import { StickySidebar } from '@client/scripts/sticky-sidebar'; import XSidebar from './default.sidebar.vue'; @@ -131,6 +133,19 @@ export default defineComponent({ this.isMobile = (window.innerWidth <= MOBILE_THRESHOLD); this.isDesktop = (window.innerWidth >= DESKTOP_THRESHOLD); }, { passive: true }); + + if (this.$store.state.aiChanMode) { + const iframeRect = this.$refs.live2d.getBoundingClientRect(); + window.addEventListener('mousemove', ev => { + this.$refs.live2d.contentWindow.postMessage({ + type: 'moveCursor', + body: { + x: ev.clientX - iframeRect.left, + y: ev.clientY - iframeRect.top, + } + }, '*'); + }, { passive: true }); + } }, methods: { @@ -201,6 +216,10 @@ export default defineComponent({ } }], e); }, + + onAiClick(ev) { + //if (this.live2d) this.live2d.click(ev); + } } }); </script> @@ -458,5 +477,15 @@ export default defineComponent({ overflow: auto; background: var(--bg); } + + > .ivnzpscs { + position: fixed; + bottom: 0; + right: 0; + width: 300px; + height: 600px; + border: none; + pointer-events: none; + } } </style> diff --git a/src/client/widgets/aichan.vue b/src/client/widgets/aichan.vue new file mode 100644 index 0000000000000000000000000000000000000000..06c49090a15231adf6301ff2e8b82ac31641ef0b --- /dev/null +++ b/src/client/widgets/aichan.vue @@ -0,0 +1,59 @@ +<template> +<MkContainer :naked="props.transparent" :show-header="false"> + <iframe class="dedjhjmo" ref="live2d" @click="touched" src="https://misskey-dev.github.io/mascot-web/?scale=1.5&y=1.1&eyeY=100"></iframe> +</MkContainer> +</template> + +<script lang="ts"> +import { defineComponent, markRaw } from 'vue'; +import define from './define'; +import MkContainer from '@client/components/ui/container.vue'; +import * as os from '@client/os'; + +const widget = define({ + name: 'ai', + props: () => ({ + transparent: { + type: 'boolean', + default: false, + }, + }) +}); + +export default defineComponent({ + extends: widget, + components: { + MkContainer, + }, + data() { + return { + }; + }, + mounted() { + window.addEventListener('mousemove', ev => { + const iframeRect = this.$refs.live2d.getBoundingClientRect(); + this.$refs.live2d.contentWindow.postMessage({ + type: 'moveCursor', + body: { + x: ev.clientX - iframeRect.left, + y: ev.clientY - iframeRect.top, + } + }, '*'); + }, { passive: true }); + }, + methods: { + touched() { + //if (this.live2d) this.live2d.changeExpression('gurugurume'); + } + } +}); +</script> + +<style lang="scss" scoped> +.dedjhjmo { + width: 100%; + height: 350px; + border: none; + pointer-events: none; +} +</style> diff --git a/src/client/widgets/index.ts b/src/client/widgets/index.ts index 38cb85494a725cd02e00e5f409303951ccd5717c..51a82af080ad08efdbac7dd9ce9a56419ab1b4a3 100644 --- a/src/client/widgets/index.ts +++ b/src/client/widgets/index.ts @@ -19,6 +19,7 @@ export default function(app: App) { app.component('MkwJobQueue', defineAsyncComponent(() => import('./job-queue.vue'))); app.component('MkwButton', defineAsyncComponent(() => import('./button.vue'))); app.component('MkwAiscript', defineAsyncComponent(() => import('./aiscript.vue'))); + app.component('MkwAichan', defineAsyncComponent(() => import('./aichan.vue'))); } export const widgets = [ @@ -40,4 +41,5 @@ export const widgets = [ 'jobQueue', 'button', 'aiscript', + 'aichan', ]; diff --git a/src/config/types.ts b/src/config/types.ts index 8084be1864e47f3658e2ea8749113865e33bbd2c..e3ca6c1ab62efe34235a39bee45775f6f728cfb6 100644 --- a/src/config/types.ts +++ b/src/config/types.ts @@ -37,6 +37,10 @@ export type Source = { proxySmtp?: string; proxyBypassHosts?: string[]; + allowedPrivateNetworks?: string[]; + + maxFileSize?: number; + accesslog?: string; clusterLimit?: number; diff --git a/src/docs/ar-SA/general/apps.md b/src/docs/ar-SA/general/apps.md index 1f4c85fe8f1f4ba69d15e657b56dd53fc8e7371a..81f99f2818a7340781b09beb2a94b6af98e4477a 100644 --- a/src/docs/ar-SA/general/apps.md +++ b/src/docs/ar-SA/general/apps.md @@ -1,6 +1,6 @@ # サードパーティアプリã®ãƒªã‚¹ãƒˆ -## クライアント +## العملاء todo -## 連æºã‚µãƒ¼ãƒ“ス +## الخدمات المترابطة todo diff --git a/src/docs/eo-UY/advanced/api.md b/src/docs/eo-UY/advanced/api.md index 6425f67f3c91e667ef497482fd77e97408b7fd3a..ec21cc61948beec64ca8eb5a4048ff8f553417af 100644 --- a/src/docs/eo-UY/advanced/api.md +++ b/src/docs/eo-UY/advanced/api.md @@ -47,7 +47,7 @@ UUIDを生æˆã™ã‚‹ã€‚以後ã“れをセッションIDã¨å‘¼ã³ã¾ã™ã€‚ レスãƒãƒ³ã‚¹ã«å«ã¾ã‚Œã‚‹ãƒ—ãƒãƒ‘ティ: * `token` ... ユーザーã®ã‚¢ã‚¯ã‚»ã‚¹ãƒˆãƒ¼ã‚¯ãƒ³ -* `user` ... ユーザーã®æƒ…å ± +* `user` ... Informoj de uzanto [「APIã®ä½¿ã„æ–¹ã€ã¸é€²ã‚€](#APIã®ä½¿ã„æ–¹) diff --git a/src/docs/eo-UY/advanced/develop-bot.md b/src/docs/eo-UY/advanced/develop-bot.md index 7f825e9bc4840df8a4130445060601e782b4a6c8..0ea99c1bbc5498cb0080789f03816e94e302506d 100644 --- a/src/docs/eo-UY/advanced/develop-bot.md +++ b/src/docs/eo-UY/advanced/develop-bot.md @@ -1,4 +1,4 @@ -# Botã®ä½œæˆ +# Evoluigi robotan uzanton [Misskey API](./api)を利用ã—ã¦Botã®é–‹ç™ºãŒå¯èƒ½ã§ã™ã€‚ ã¾ãŸã€ã„ãã¤ã‹ã®Bot実装ãŒå…¬é–‹ã•ã‚Œã¦ã„ã‚‹ãŸã‚ã€ãœã²å‚考ã«ã—ã¦ãã ã•ã„。 - [syuilo/ai](https://github.com/syuilo/ai) ... Node.js上ã§å‹•ãã€TypeScript製Bot実装 diff --git a/src/docs/eo-UY/features/favorite.md b/src/docs/eo-UY/features/favorite.md index d87cb83e46cc9de5e7976f69c8061b393cb0b8c4..05c03fa2dbb09ddd7300aaabef5accb7b2b20985 100644 --- a/src/docs/eo-UY/features/favorite.md +++ b/src/docs/eo-UY/features/favorite.md @@ -1,4 +1,4 @@ -# Preferi +# Preferataĵoj [ノート](./node)ã‚’ãŠæ°—ã«å…¥ã‚Šã¨ã—ã¦ç™»éŒ²ã§ãる機能ã§ã™ã€‚ ãŠæ°—ã«å…¥ã‚Šç™»éŒ²ã—ãŸãƒŽãƒ¼ãƒˆã¯ã€[ãŠæ°—ã«å…¥ã‚Šãƒšãƒ¼ã‚¸](./my/favorites)ã§ä¸€è¦§ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ ãŠæ°—ã«å…¥ã‚Šã«ç™»éŒ²ã—ãŸã“ã¨ã¯ç›¸æ‰‹ã«é€šçŸ¥ã•ã‚Œãšã€ãŠæ°—ã«å…¥ã‚Šã¯è‡ªåˆ†ã—ã‹è¦‹ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“。 ノートをãŠæ°—ã«å…¥ã‚Šç™»éŒ²ã™ã‚‹ã«ã¯ã€ãƒŽãƒ¼ãƒˆãƒ¡ãƒ‹ãƒ¥ãƒ¼ã®ã€ŒãŠæ°—ã«å…¥ã‚Šã€ã‚’押ã—ã¾ã™ã€‚ãŠæ°—ã«å…¥ã‚Šè§£é™¤ã™ã‚‹ã«ã¯ã€ãƒŽãƒ¼ãƒˆãƒ¡ãƒ‹ãƒ¥ãƒ¼ã®ã€ŒãŠæ°—ã«å…¥ã‚Šè§£é™¤ã€ã‚’押ã—ã¾ã™ã€‚ diff --git a/src/docs/eo-UY/features/keyboard-shortcut.md b/src/docs/eo-UY/features/keyboard-shortcut.md index 6741bffca22e815857b34805d05d6ff62b48550d..9a337c4fa5ee2e5f700f0a2a33f5b97f0c1e2f62 100644 --- a/src/docs/eo-UY/features/keyboard-shortcut.md +++ b/src/docs/eo-UY/features/keyboard-shortcut.md @@ -28,7 +28,7 @@ <tr><td><kbd class="group"><kbd class="key">Ctrl</kbd> + <kbd class="key">Q</kbd></kbd></td><td>å³åˆ»Renoteã™ã‚‹(フォームを開ã‹ãšã«)</td><td>-</td></tr> <tr><td><kbd class="key">E</kbd>, <kbd class="key">A</kbd>, <kbd class="key">+</kbd></td><td>リアクションフォームを開ã</td><td><b>E</b>mote, re<b>A</b>ction</td></tr> <tr><td><kbd class="key">0</kbd>~<kbd class="key">9</kbd></td><td>æ•°å—ã«å¯¾å¿œã—ãŸãƒªã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’ã™ã‚‹(対応ã«ã¤ã„ã¦ã¯å¾Œè¿°)</td><td>-</td></tr> - <tr><td><kbd class="key">F</kbd>, <kbd class="key">B</kbd></td><td>ãŠæ°—ã«å…¥ã‚Šã«ç™»éŒ²</td><td><b>F</b>avorite, <b>B</b>ookmark</td></tr> + <tr><td><kbd class="key">F</kbd>, <kbd class="key">B</kbd></td><td>Aldoni vian liston de preferaĵoj</td><td><b>F</b>avorite, <b>B</b>ookmark</td></tr> <tr><td><kbd class="key">Del</kbd>, <kbd class="group"><kbd class="key">Ctrl</kbd> + <kbd class="key">D</kbd></kbd></td><td>投稿を削除</td><td><b>D</b>elete</tr> <tr><td><kbd class="key">M</kbd>, <kbd class="key">O</kbd></td><td>投稿ã«å¯¾ã™ã‚‹ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚’é–‹ã</td><td><b>M</b>ore, <b>O</b>ther</td></tr> <tr><td><kbd class="key">S</kbd></td><td>CWã§éš ã•ã‚ŒãŸéƒ¨åˆ†ã‚’表示 or éš ã™</td><td><b>S</b>how, <b>S</b>ee</td></tr> @@ -42,7 +42,7 @@ <tr><th>ショートカット</th><th>効果</th><th>ç”±æ¥</th></tr> </thead> <tbody> - <tr><td><kbd class="key">Enter</kbd></td><td>Renoteã™ã‚‹</td><td>-</td></tr> + <tr><td><kbd class="key">Enter</kbd></td><td>Fari renoton</td><td>-</td></tr> <tr><td><kbd class="key">Q</kbd></td><td>フォームを展開ã™ã‚‹</td><td><b>Q</b>uote</td></tr> <tr><td><kbd class="key">Esc</kbd></td><td>フォームを閉ã˜ã‚‹</td><td>-</td></tr> </tbody> diff --git a/src/docs/eo-UY/features/mfm.md b/src/docs/eo-UY/features/mfm.md index 5be2df4f304351b517fd18791f314253633356e3..cca995657dd3e411c343aa4ddf5aa0aacc3a8201 100644 --- a/src/docs/eo-UY/features/mfm.md +++ b/src/docs/eo-UY/features/mfm.md @@ -4,7 +4,7 @@ MFMã¯ã€Misskey Flavored Markdownã®ç•¥ã§ã€Misskeyã®æ§˜ã€…ãªå ´æ‰€ã§ä½¿ç”¨ ## MFMãŒä½¿ç”¨å¯èƒ½ãªå ´æ‰€ã®ä¾‹ - ノート本文 - CW注釈 -- ユーザーã®åå‰ +- Nomo de uzanto - ユーザーã®è‡ªå·±ç´¹ä»‹ ## 開発者å‘ã‘æƒ…å ± diff --git a/src/docs/eo-UY/features/mute-and-block.md b/src/docs/eo-UY/features/mute-and-block.md index d38faf0d7d3014477329c84b041473780700d1f5..9d01f2c2fa0f05ac9e7810ce919cf19e3c6ba5e4 100644 --- a/src/docs/eo-UY/features/mute-and-block.md +++ b/src/docs/eo-UY/features/mute-and-block.md @@ -1,4 +1,4 @@ -# Silentigatoj kaj blokatoj +# Silentigitoj kaj blokitoj 好ã¿ã§ã¯ãªã„ユーザーãŒã„ã‚‹å ´åˆã¯ã€ãƒŸãƒ¥ãƒ¼ãƒˆã‚’è¡Œã†ã“ã¨ã§ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè‡ªåˆ†ã‹ã‚‰è¦‹ãˆãªã„よã†ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ ã¾ãŸã€ã‚ˆã‚Šå¼·åŠ›ãªæŽªç½®ã¨ã—ã¦ã€ãƒ–ãƒãƒƒã‚¯ã‚’è¡Œã†ã“ã¨ã§ãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‹ã‚‰è‡ªåˆ†ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ãŒè¦‹ãˆãªã„よã†ã«ãªã‚‹ã»ã‹ã€è‡ªåˆ†ã«å¯¾ã—ã¦é–¢ã‚ã‚‹ã“ã¨ãŒã§ããªã„よã†ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ ミュートã•ã‚Œã¦ã„ã‚‹ã“ã¨ã¯ç›¸æ‰‹ã¯åˆ†ã‹ã‚Šã¾ã›ã‚“ãŒã€ãƒ–ãƒãƒƒã‚¯ã•ã‚Œã¦ã„ã‚‹ã“ã¨ã¯ç›¸æ‰‹ã«åˆ†ã‹ã‚Šã¾ã™ã€‚ã©ã¡ã‚‰ã‚’é¸ã¶ã‹ã¯ã”自身ã®åˆ¤æ–ã§è¡Œã£ã¦ãã ã•ã„。 <div class="info">â„¹ï¸ ãƒŸãƒ¥ãƒ¼ãƒˆã¨ãƒ–ãƒãƒƒã‚¯ã¯ä½µç”¨ã§ãã¾ã™ã€‚</div> diff --git a/src/docs/eo-UY/features/note.md b/src/docs/eo-UY/features/note.md index c507095fa3e7537a5372dd4a7aea73540f7e9684..66c03c777ad35002935f76aa37ab99a195532de3 100644 --- a/src/docs/eo-UY/features/note.md +++ b/src/docs/eo-UY/features/note.md @@ -21,20 +21,20 @@ Renoteを削除ã™ã‚‹ã«ã¯ã€Renoteã®æ™‚刻表示ã®éš£ã«ã‚る「...ã€ã‚’ ## CW Contents Warningã®ç•¥ã§ã€ãƒŽãƒ¼ãƒˆã®å†…容をã€é–²è¦§è€…ã®æ“作ãªã—ã«ã¯è¡¨ç¤ºã—ãªã„よã†ã«ã§ãる機能ã§ã™ã€‚主ã«é•·å¤§ãªå†…å®¹ã‚’éš ã™ãŸã‚ã‚„ã€ãƒã‚¿ãƒãƒ¬é˜²æ¢ãªã©ã«ä½¿ã†ã“ã¨ãŒã§ãã¾ã™ã€‚ è¨å®šã™ã‚‹ã«ã¯ã€ãƒ•ã‚©ãƒ¼ãƒ ã®ã€Œå†…å®¹ã‚’éš ã™ã€ãƒœã‚¿ãƒ³(ç›®ã®ã‚¢ã‚¤ã‚³ãƒ³)を押ã—ã¾ã™ã€‚ã™ã‚‹ã¨æ–°ã—ã„入力エリアãŒè¡¨ã‚Œã‚‹ã®ã§ã€ãã“ã«å†…容ã®è¦ç´„を記入ã—ã¾ã™ã€‚ -## 公開範囲 +## Videbleco ノートã”ã¨ã«ã€ãã®ãƒŽãƒ¼ãƒˆãŒå…¬é–‹ã•ã‚Œã‚‹ç¯„囲をè¨å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚フォームã®ã€ŒãƒŽãƒ¼ãƒˆã€ãƒœã‚¿ãƒ³ã®å·¦ã«ã‚るアイコンを押ã™ã¨å…¬é–‹ç¯„囲を以下ã‹ã‚‰é¸æŠžã§ãã¾ã™ã€‚ -### パブリック +### Publika å…¨ã¦ã®äººã«å¯¾ã—ã¦ãƒŽãƒ¼ãƒˆãŒå…¬é–‹ã•ã‚Œã‚‹ã»ã‹ã€ã‚µãƒ¼ãƒãƒ¼ã®å…¨ã¦ã®ã‚¿ã‚¤ãƒ ライン(ホームタイムラインã€ãƒãƒ¼ã‚«ãƒ«ã‚¿ã‚¤ãƒ ラインã€ã‚½ãƒ¼ã‚·ãƒ£ãƒ«ã‚¿ã‚¤ãƒ ラインã€ã‚°ãƒãƒ¼ãƒãƒ«ã‚¿ã‚¤ãƒ ライン)ã«ãƒŽãƒ¼ãƒˆãŒæµã‚Œã¾ã™ã€‚ <div class="warn">âš ï¸ ã‚¢ã‚«ã‚¦ãƒ³ãƒˆãŒ<a href="./silence">サイレンス</a>状態ã®æ™‚ã¯ã€ã“ã®å…¬é–‹ç¯„囲ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。</div> -### Hejmo +### Hejma å…¨ã¦ã®äººã«å¯¾ã—ã¦ãƒŽãƒ¼ãƒˆãŒå…¬é–‹ã•ã‚Œã¾ã™ãŒã€ãƒ•ã‚©ãƒãƒ¯ãƒ¼ä»¥å¤–ã®ãƒãƒ¼ã‚«ãƒ«ã‚¿ã‚¤ãƒ ラインã€ã‚½ãƒ¼ã‚·ãƒ£ãƒ«ã‚¿ã‚¤ãƒ ラインã€ã‚°ãƒãƒ¼ãƒãƒ«ã‚¿ã‚¤ãƒ ラインã«ã¯ãƒŽãƒ¼ãƒˆã¯æµã‚Œã¾ã›ã‚“。 ### Sekvantoj 自分ã®ãƒ•ã‚©ãƒãƒ¯ãƒ¼ã«å¯¾ã—ã¦ã®ã¿ãƒŽãƒ¼ãƒˆã‚’公開ã—ã¾ã™ã€‚フォãƒãƒ¯ãƒ¼ã®å…¨ã¦ã®ã‚¿ã‚¤ãƒ ラインã«æµã‚Œã¾ã™ã€‚ -### ダイレクト +### Rekta 指定ã—ãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ã«å¯¾ã—ã¦ã®ã¿ãƒŽãƒ¼ãƒˆã‚’公開ã—ã¾ã™ã€‚指定ã—ãŸãƒ¦ãƒ¼ã‚¶ãƒ¼ã®å…¨ã¦ã®ã‚¿ã‚¤ãƒ ラインã«æµã‚Œã¾ã™ã€‚ ### 「ãƒãƒ¼ã‚«ãƒ«ã®ã¿ã€ã‚ªãƒ—ション @@ -42,12 +42,12 @@ Contents Warningã®ç•¥ã§ã€ãƒŽãƒ¼ãƒˆã®å†…容をã€é–²è¦§è€…ã®æ“作ãªã—ã« ### 公開範囲ã®æ¯”較 <table> - <tr><th></th><th>パブリック</th><th>Hejmo</th><th>Sekvantoj</th><th>ダイレクト</th></tr> + <tr><th></th><th>Publika</th><th>Hejma</th><th>Sekvantoj</th><th>Rekta</th></tr> <tr><th>フォãƒãƒ¯ãƒ¼ã®LTL/STL/GTL</th><td>✔</td><td>✔</td><td>✔</td><td></td></tr> <tr><th>éžãƒ•ã‚©ãƒãƒ¯ãƒ¼ã®LTL/STL/GTL</th><td>✔</td><td></td><td></td><td></td></tr> </table> -## Alpingli sur la profilo +## Alpingli al la profilo ノートをピン留ã‚ã™ã‚‹ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒšãƒ¼ã‚¸ã«å¸¸ã«ãã®ãƒŽãƒ¼ãƒˆã‚’表示ã—ã¦ãŠãã“ã¨ãŒã§ãã¾ã™ã€‚ ノートã®ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚’é–‹ãã€ã€Œãƒ”ン留ã‚ã€ã‚’é¸æŠžã—ã¦ãƒ”ン留ã‚ã§ãã¾ã™ã€‚ 複数ã®ãƒŽãƒ¼ãƒˆã‚’ピン留ã‚ã§ãã¾ã™ã€‚ ## Observi diff --git a/src/docs/eo-UY/features/timeline.md b/src/docs/eo-UY/features/timeline.md index 51b8550bef830264669c3d83bf80f01b67e9ecc6..7c0e8dfd7f8e343a6409830ae206e1c51e468fd0 100644 --- a/src/docs/eo-UY/features/timeline.md +++ b/src/docs/eo-UY/features/timeline.md @@ -1,7 +1,7 @@ # Templinio タイムラインã¯ã€[ノート](./note)ãŒæ™‚系列ã§è¡¨ç¤ºã•ã‚Œã‚‹æ©Ÿèƒ½ã§ã™ã€‚ タイムラインã«ã¯ä»¥ä¸‹ã§ç¤ºã™ç¨®é¡žãŒã‚ã‚Šã€ç¨®é¡žã«ã‚ˆã£ã¦è¡¨ç¤ºã•ã‚Œã‚‹ãƒŽãƒ¼ãƒˆã‚‚ç•°ãªã‚Šã¾ã™ã€‚ ãªãŠã€ã‚¿ã‚¤ãƒ ラインã®ç¨®é¡žã«ã‚ˆã£ã¦ã¯ã‚µãƒ¼ãƒãƒ¼ã«ã‚ˆã‚Šç„¡åŠ¹ã«ãªã£ã¦ã„ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ -## Hejmo +## Hejma 自分ã®ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„るユーザーã®æŠ•ç¨¿ãŒæµã‚Œã¾ã™ã€‚HTLã¨ç•¥ã•ã‚Œã¾ã™ã€‚ ## Loka @@ -16,16 +16,16 @@ ## 比較 | ソース | | | Templinio | | | | ------------ | --------- | ----- | --------- | ------- | ------- | -| Uzanto | 公開範囲 | Hejmo | Loka | Sociala | Malloka | +| Uzantoj | Videbleco | Hejma | Loka | Sociala | Malloka | | ãƒãƒ¼ã‚«ãƒ« (フォãƒãƒ¼) | Publikigi | ✔ | ✔ | ✔ | ✔ | -| | Hejmo | ✔ | | ✔ | | +| | Hejma | ✔ | | ✔ | | | | Sekvantoj | ✔ | ✔ | ✔ | ✔ | | リモート (フォãƒãƒ¼) | Publikigi | ✔ | | ✔ | ✔ | -| | Hejmo | ✔ | | ✔ | | +| | Hejma | ✔ | | ✔ | | | | Sekvantoj | ✔ | | ✔ | ✔ | | ãƒãƒ¼ã‚«ãƒ« (未フォãƒãƒ¼) | Publikigi | | ✔ | ✔ | ✔ | -| | Hejmo | | | | | +| | Hejma | | | | | | | Sekvantoj | | | | | | リモート (未フォãƒãƒ¼) | Publikigi | | | | ✔ | -| | Hejmo | | | | | +| | Hejma | | | | | | | Sekvantoj | | | | | diff --git a/src/docs/eo-UY/features/word-mute.md b/src/docs/eo-UY/features/word-mute.md index 81a7d6fe57ae0dcb47940b900c34a86b99bc7b6c..ed1da916789d9791ad42c30edc57eee2cc6ea928 100644 --- a/src/docs/eo-UY/features/word-mute.md +++ b/src/docs/eo-UY/features/word-mute.md @@ -1,4 +1,4 @@ -# Silentigo de vortoj +# Silentigi specifajn vortojn ワードミュートã®è¨å®šã‚’ã™ã‚‹ã¨ã€æ¡ä»¶ã«åˆè‡´ã—ãŸãƒŽãƒ¼ãƒˆãŒè¡¨ç¤ºã•ã‚Œãªããªã‚Šã¾ã™ã€‚ ワードミュートã«ã¯ã€ã‚½ãƒ•ãƒˆãƒ¯ãƒ¼ãƒ‰ãƒŸãƒ¥ãƒ¼ãƒˆã¨ãƒãƒ¼ãƒ‰ãƒ¯ãƒ¼ãƒ‰ãƒŸãƒ¥ãƒ¼ãƒˆã®2種類ãŒã‚ã‚Šã¾ã™ã€‚ãã‚Œãžã‚Œã«ã¤ã„ã¦è¨å®šã®æ–¹æ³•ã¨æŒ™å‹•ã‚’説明ã—ã¾ã™ã€‚ diff --git a/src/docs/eo-UY/general/glossary.md b/src/docs/eo-UY/general/glossary.md index 9050c592b97865002f48232ac8214c245141dfde..b590714097277231fe01b2609d5d0949a718bcec 100644 --- a/src/docs/eo-UY/general/glossary.md +++ b/src/docs/eo-UY/general/glossary.md @@ -16,7 +16,7 @@ Misskeyã«é–¢ã™ã‚‹ç”¨èªžé›†ã§ã™ã€‚ ## CW (èªã¿: ã“ã‚“ã¦ã‚“ã¤ã‚ーã«ã‚“ã) Contents Warningã®ç•¥ã€‚ノートã®å†…容をã€æ“作ãªã—ã«ã¯è¡¨ç¤ºã—ãªã„よã†ã«ã§ãる機能。主ã«é•·å¤§ãªå†…å®¹ã‚’éš ã™ãŸã‚ã‚„ã€ãƒã‚¿ãƒãƒ¬é˜²æ¢ãªã©ã«ä½¿ã‚ã‚Œã¾ã™ã€‚ -## Fediverse +## Fediverso (èªã¿: ãµã‡ã§ãƒã°ãƒ¼ã™) Misskeyã‚’å«ã‚€æ§˜ã€…ãªåˆ†æ•£åž‹ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã®ã‚µãƒ¼ãƒãƒ¼ã§æ§‹æˆã•ã‚ŒãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã€‚ ## MTL @@ -46,14 +46,14 @@ Ai estas oficiala maskoto de Misskey. ## Aktivaj Uzantoj: インスタンスã«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’作ã£ã¦ã„るユーザーã®ã†ã¡ã€ç¾åœ¨ã‚‚実際ã«ã‚µãƒ¼ãƒ“スを利用ã—ã¦ã„るユーザーã®ã“ã¨ã€‚ -## Ekzemplo +## Nodo todo ## Åœaltpodio サーãƒãƒ¼ã§ç”¨æ„ã•ã‚ŒãŸçµµæ–‡å—。カスタム絵文å—ã§ã¯ãªã„通常ã®çµµæ–‡å—ã¯ã€ŒUnicode絵文å—ã€ã¨åŒºåˆ¥ã—ã¦å‘¼ã°ã‚Œã‚‹ã€‚ ## コントãƒãƒ¼ãƒ«ãƒ‘ãƒãƒ« -todo +インスタンスã®è¨å®šç”»é¢ã®ã“ã¨ã€‚ ## Servilo todo @@ -73,16 +73,16 @@ Misskeyã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’管ç†ã™ã‚‹æ©Ÿèƒ½ã€‚詳細ã¯[ ## Notoj Misskeyã«æŠ•ç¨¿ã•ã‚Œã‚‹ã€æ–‡ç« ã€ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¢ãƒ³ã‚±ãƒ¼ãƒˆãªã©ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãるコンテンツ。詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/note) -## Transa aÅ fora +## Miskiisto Misskeyを使ã†äººã®ã“ã¨ã€‚ -## Moderigisto +## Kontrolisto スパムã®å‡çµãŠã‚ˆã³ã‚µã‚¤ãƒ¬ãƒ³ã‚¹ã‚„ä¸é©åˆ‡ãªæŠ•ç¨¿ã®å‰Šé™¤ãªã©ã€ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£é‹å–¶ã«é–¢ã™ã‚‹æ¨©é™ã‚’æŒã¤ãƒ¦ãƒ¼ã‚¶ãƒ¼ã€‚ -## Transa +## Transa/fora 他サーãƒãƒ¼ã®ã“ã¨ã‚’指ã—ã¾ã™ã€‚リモートユーザーã¨ã„ã£ãŸã‚ˆã†ã«æŽ¥é 辞ã¨ã—ã¦ã‚‚使ã‚ã‚Œã¾ã™ã€‚ãƒãƒ¼ã‚«ãƒ«ã®é€†ã§ã™ã€‚ -## Kunfederaĵo +## Kunfederado サーãƒãƒ¼ä¸Šã§ä½œæˆã•ã‚ŒãŸæƒ…å ±ãŒä»–ã®ã‚µãƒ¼ãƒãƒ¼ã«ä¼ã‚ã‚‹ã“ã¨ã€‚ ## Loka diff --git a/src/docs/eo-UY/general/links.md b/src/docs/eo-UY/general/links.md index 812f374398a0bc142a7dc0f6c17f144527c34572..8bc76cc4335cf81eda551f63298be7256661fb44 100644 --- a/src/docs/eo-UY/general/links.md +++ b/src/docs/eo-UY/general/links.md @@ -1,7 +1,7 @@ # リンク集 ## Webサイト -- [Official Discord](https://discord.gg/Wp8gVStHW3) - Misskeyå…¬å¼Discordサーãƒãƒ¼ +- [Oficiala Discord](https://discord.gg/Wp8gVStHW3) - Servilo Discord'a oficiala de Misskey - [Misskey Forum](https://forum.misskey.io/) - Misskeyã«é–¢ã™ã‚‹è©±é¡Œã‚’扱ã†ãƒ•ã‚©ãƒ¼ãƒ©ãƒ ## Kontoj diff --git a/src/docs/eo-UY/general/misskey.md b/src/docs/eo-UY/general/misskey.md index e819ba24b88b0d67ac2bff7b0097666a882c536a..cafd053335c03440c762dda18dd81ac69fef473c 100644 --- a/src/docs/eo-UY/general/misskey.md +++ b/src/docs/eo-UY/general/misskey.md @@ -12,7 +12,7 @@ Misskey estas malfermitkoda distribuita mikroblogo. Äœia trajtoj estas diversaj <b>分散(distributed)åž‹</b>ã¨ã¯ã€<b>éžä¸å¤®é›†æ¨©(decentralized)</b>ã¨ã‚‚呼ã°ã‚Œã€ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ãŒå¤šæ•°ã®ã‚µãƒ¼ãƒãƒ¼ã«åˆ†æ•£ã—ã¦å˜åœ¨ã—ã€ãれらãŒç›¸äº’ã«<b>通信(連åˆã€federation)</b>ã™ã‚‹ã“ã¨ã§ã‚³ãƒ³ãƒ†ãƒ³ãƒ„共有<b>ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯(Fediverse)</b>ã‚’å½¢æˆã—ã¦ã„ã‚‹ã“ã¨ãŒç‰¹å¾´ã®ã‚µãƒ¼ãƒ“スã§ã™ã€‚ å˜ä¸€ã®ã‚µãƒ¼ãƒãƒ¼ã—ã‹å˜åœ¨ã—ãªã„ã€ã‚‚ã—ãã¯è¤‡æ•°å˜åœ¨ã—ã¦ã‚‚互ã„ã«ç‹¬ç«‹ã—ã¦ã„ã‚‹å ´åˆã¯ä¸å¤®é›†æ¨©ãªã‚µãƒ¼ãƒ“スã¨è¨€ã‚ã‚Œã€ä¾‹ãˆã°Twitterã‚„Facebookãªã©ã»ã¨ã‚“ã©ã®ã‚µãƒ¼ãƒ“スãŒãã‚Œã«è©²å½“ã—ã¾ã™ã€‚ 分散型ã®ãƒ¡ãƒªãƒƒãƒˆã¯ã€è‡ªåˆ†ã«åˆã£ãŸé‹å–¶è€…やテーマã®ã‚µãƒ¼ãƒãƒ¼ã‚’é¸æŠžã§ãã‚‹ã“ã¨ã§ã™ã€‚自分ã§ã‚µãƒ¼ãƒãƒ¼ã‚’作æˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚連åˆã™ã‚‹ãŠã‹ã’ã§ã€ã©ã®ã‚µãƒ¼ãƒãƒ¼ã‚’é¸ã‚“ã§ã‚‚ã€åŒã˜ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ -## Ĉiam malfermitkode +## Ĉiam malfermitkoda Misskeyã¯ã“ã‚Œã¾ã§ã‚‚ã“ã‚Œã‹ã‚‰ã‚‚ã€ã‚ªãƒ¼ãƒ—ンソースã§ã‚り続ã‘ã¾ã™ã€‚オープンソースã¨ã¯ã€ç°¡å˜ã«è¨€ã†ã¨<b>ソフトウェアã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰(プãƒã‚°ãƒ©ãƒ )ãŒå…¬é–‹ã•ã‚Œã¦ã„ã‚‹</b>ã“ã¨ã§ã™ã€‚ソースコードã®ä¿®æ£ã‚„å†é…布ãŒå¯èƒ½ã§ã‚ã‚‹ã“ã¨ã‚’定義ã«å«ã‚ã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚ Misskeyã®ã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã¯[AGPL](https://github.com/misskey-dev/misskey/blob/develop/LICENSE)ã¨ã„ã†ã‚ªãƒ¼ãƒ—ンソースライセンスã®ä¸‹ã«[公開](https://github.com/misskey-dev)ã•ã‚Œã¦ã„ã¦ã€èª°ã§ã‚‚自由ã«é–²è¦§ã€ä½¿ç”¨ã€ä¿®æ£ã€æ”¹å¤‰ã€å†é…布をã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ オープンソースã¯ã€è‡ªåˆ†ã§å¥½ããªã‚ˆã†ã«å¤‰ãˆãŸã‚Šã€æœ‰å®³ãªå‡¦ç†ãŒå«ã¾ã‚Œã¦ã„ãªã„ã“ã¨ã‚’確èªã™ã‚‹ã“ã¨ãŒã§ããŸã‚Šã€èª°ã§ã‚‚開発ã«å‚åŠ ã§ãã‚‹ãªã©ã®ã€æ§˜ã€…ãªãƒ¡ãƒªãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚ 上述ã®åˆ†æ•£åž‹ã‚’実ç¾ã™ã‚‹ãŸã‚ã«ã‚‚ã€ã‚ªãƒ¼ãƒ—ンソースã§ã‚ã‚‹ã¨ã„ã†ã“ã¨ã¯å¿…è¦ä¸å¯æ¬ ãªè¦ç´ ã§ã™ã€‚ å†ã³å¼•ãåˆã„ã«å‡ºã—ã¾ã™ãŒã€Twitterã‚„Facebookãªã©ã®åˆ©ç›Šã‚’å¾—ã¦ã„ã‚‹ã»ã¨ã‚“ã©ã®ã‚µãƒ¼ãƒ“スã¯ã‚ªãƒ¼ãƒ—ンソースã§ã¯ã‚ã‚Šã¾ã›ã‚“。 <div class="info">â„¹ï¸ æŠ€è¡“çš„ã«è¨€ã†ã¨ã€Misskeyã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã¯Gitã§ç®¡ç†ã•ã‚Œã¦ã„ã¦ã€ãƒªãƒã‚¸ãƒˆãƒªã¯<a href="https://github.com/misskey-dev" target="_blank">GitHub上ã§ãƒ›ã‚¹ãƒ†ã‚£ãƒ³ã‚°ã•ã‚Œã¦ã„ã¾ã™ã€‚</a></div> @@ -26,7 +26,7 @@ Misskeyã‚’æ°—ã«å…¥ã£ã¦ã„ãŸã ã‘ãŸã‚‰ã€ãœã²ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚’æ”¯æ´ ### è°è«–ã«å‚åŠ ã™ã‚‹ æ–°ã—ã„機能ã€ã¾ãŸã¯æ—¢å˜ã®æ©Ÿèƒ½ã«ã¤ã„ã¦æ„見を述ã¹ãŸã‚Šã€ä¸å…·åˆã‚’å ±å‘Šã—ãŸã‚Šã™ã‚‹ã“ã¨ã§ã‚‚貢献ã§ãã¾ã™ã€‚ ãã®ã‚ˆã†ãªãƒ‡ã‚£ã‚¹ã‚«ãƒƒã‚·ãƒ§ãƒ³ã¯[GitHub](https://github.com/misskey-dev)上ã‹ã€[フォーラム](https://forum.misskey.io/)ç‰ã§è¡Œã‚ã‚Œã¾ã™ã€‚ -### テã‚ストを翻訳ã™ã‚‹ +### Traduki tekston Misskeyã¯æ§˜ã€…ãªè¨€èªžã«å¯¾å¿œã—ã¦ã„ã¾ã™(i18n -internationalizationã®ç•¥- ã¨å‘¼ã°ã‚Œã¾ã™)。元ã®è¨€èªžã¯åŸºæœ¬çš„ã«æ—¥æœ¬èªžã§ã™ãŒã€æœ‰å¿—ã«ã‚ˆã£ã¦ä»–ã®è¨€èªžã¸ã¨ç¿»è¨³ã•ã‚Œã¦ã„ã¾ã™ã€‚ ãã®ç¿»è¨³ä½œæ¥ã«åŠ ã‚ã£ã¦ã„ãŸã ãã“ã¨ã§ã‚‚Misskeyã«è²¢çŒ®ã§ãã¾ã™ã€‚ Misskeyã¯[Crowdinã¨ã„ã†ã‚µãƒ¼ãƒ“スを使用ã—ã¦ç¿»è¨³ã®ç®¡ç†ã‚’è¡Œã£ã¦ã„ã¾ã™ã€‚](https://crowdin.com/project/misskey) ### 感想を投稿ã™ã‚‹ diff --git a/src/docs/fr-FR/advanced/api.md b/src/docs/fr-FR/advanced/api.md index 76019b61458259bed1eef3ae3b5890e4c09c3837..bffde881f43d5368f2886ff96d822816e8cbcbd0 100644 --- a/src/docs/fr-FR/advanced/api.md +++ b/src/docs/fr-FR/advanced/api.md @@ -1,4 +1,4 @@ -# Misskey API +# API de Misskey MisskeyAPIを使ã£ã¦Misskeyクライアントã€Misskey連æºWebサービスã€Botç‰(以下「アプリケーションã€ã¨å‘¼ã³ã¾ã™)を開発ã§ãã¾ã™ã€‚ ストリーミングAPIã‚‚ã‚ã‚‹ã®ã§ã€ãƒªã‚¢ãƒ«ã‚¿ã‚¤ãƒ 性ã®ã‚るアプリケーションを作るã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚ @@ -18,13 +18,13 @@ APIを使ã„始ã‚ã‚‹ã«ã¯ã€ã¾ãšã‚¢ã‚¯ã‚»ã‚¹ãƒˆãƒ¼ã‚¯ãƒ³ã‚’å–å¾—ã™ã‚‹å¿… ### アプリケーション利用者ã«ã‚¢ã‚¯ã‚»ã‚¹ãƒˆãƒ¼ã‚¯ãƒ³ã®ç™ºè¡Œã‚’リクエストã™ã‚‹ アプリケーション利用者ã®ã‚¢ã‚¯ã‚»ã‚¹ãƒˆãƒ¼ã‚¯ãƒ³ã‚’å–å¾—ã™ã‚‹ã«ã¯ã€ä»¥ä¸‹ã®æ‰‹é †ã§ç™ºè¡Œã‚’リクエストã—ã¾ã™ã€‚ -#### Step 1 +#### Étape 1 UUIDを生æˆã™ã‚‹ã€‚以後ã“れをセッションIDã¨å‘¼ã³ã¾ã™ã€‚ > ã“ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³IDã¯æ¯Žå›žç”Ÿæˆã—ã€ä½¿ã„ã¾ã‚ã•ãªã„よã†ã«ã—ã¦ãã ã•ã„。 -#### Step 2 +#### Étape 2 `{_URL_}/miauth/{session}`をユーザーã®ãƒ–ラウザã§è¡¨ç¤ºã•ã›ã‚‹ã€‚`{session}`ã®éƒ¨åˆ†ã¯ã€ã‚»ãƒƒã‚·ãƒ§ãƒ³IDã«ç½®ãæ›ãˆã¦ãã ã•ã„。 > 例: `{_URL_}/miauth/c1f6d42b-468b-4fd2-8274-e58abdedef6f` @@ -42,7 +42,7 @@ UUIDを生æˆã™ã‚‹ã€‚以後ã“れをセッションIDã¨å‘¼ã³ã¾ã™ã€‚ * è¦æ±‚ã™ã‚‹æ¨©é™ã‚’`,`ã§åŒºåˆ‡ã£ã¦åˆ—挙ã—ã¾ã™ * ã©ã®ã‚ˆã†ãªæ¨©é™ãŒã‚ã‚‹ã‹ã¯[APIリファレンス](/api-doc)ã§ç¢ºèªã§ãã¾ã™ -#### Step 3 +#### Étape 3 ユーザーãŒç™ºè¡Œã‚’許å¯ã—ãŸå¾Œã€`{_URL_}/api/miauth/{session}/check`ã«POSTリクエストã™ã‚‹ã¨ã€ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã¨ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ãƒˆãƒ¼ã‚¯ãƒ³ã‚’å«ã‚€JSONãŒè¿”ã‚Šã¾ã™ã€‚ レスãƒãƒ³ã‚¹ã«å«ã¾ã‚Œã‚‹ãƒ—ãƒãƒ‘ティ: diff --git a/src/docs/fr-FR/general/troubleshooting.md b/src/docs/fr-FR/general/troubleshooting.md index 7cdaebe8e350e0033c25bdbc807ab90734896d4b..f6a6771df2dd481fa346ca79d42fd429d1dbdb44 100644 --- a/src/docs/fr-FR/general/troubleshooting.md +++ b/src/docs/fr-FR/general/troubleshooting.md @@ -16,11 +16,11 @@ Bien que cela arrive rarement, il se peut que le cache soit à l'origine du prob Si le problème persiste malgré tout, il est très probable qu'il s'agisse d'une panne côté serveur ; nous vous invitons donc à contacter l'administrateur·rice de votre instance. ## Le client est lent -以下を試ã—ã¦ã¿ã¦ãã ã•ã„: +Essayez les solutions proposées ci-dessous : -- クライアントè¨å®šã§ã€ŒUIã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’減らã™ã€ã‚’有効ã«ã™ã‚‹ -- クライアントè¨å®šã§ã€Œãƒ¢ãƒ¼ãƒ€ãƒ«ã«ã¼ã‹ã—効果を使用ã€ã‚’無効ã«ã™ã‚‹ -- ãŠä½¿ã„ã®ãƒ–ラウザã®è¨å®šã§ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ã‚¢ã‚¯ã‚»ãƒ©ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã™ã‚‹ +- activer l'option « Réduire les animations dans l'interface » dans les paramètres du client +- désactiver l'option « Utiliser un effet de flou pour les modals » dans les paramètres du client +- activer l'accélération matérielle dans les paramètres de votre navigateur - ãŠä½¿ã„ã®ãƒ‡ãƒã‚¤ã‚¹ã®ã‚¹ãƒšãƒƒã‚¯ã‚’上ã’ã‚‹ ## UIã®ä¸€éƒ¨ã®è¡¨ç¤ºãŒãŠã‹ã—ã„(背景ãŒé€æ˜Žã«ãªã£ã¦ã„ã‚‹ç‰) diff --git a/src/docs/id-ID/admin/disable-timelines.md b/src/docs/id-ID/admin/disable-timelines.md index b081e35ab043893d0a9400bed6cbb3d8cf348c77..54d350ec4abe7e63122aefbb86ae3b0eb70aa28b 100644 --- a/src/docs/id-ID/admin/disable-timelines.md +++ b/src/docs/id-ID/admin/disable-timelines.md @@ -1,8 +1,8 @@ -# LTL/STL/GTLã®ç„¡åŠ¹åŒ– -Misskeyã§ã¯ã€LTL/STL/GTLã‚’ãã‚Œãžã‚Œç„¡åŠ¹åŒ–ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚有効/無効を切り替ãˆã‚‹ã«ã¯ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚³ãƒ³ãƒˆãƒãƒ¼ãƒ«ãƒ‘ãƒãƒ«ã§è¨å®šã—ã¾ã™ã€‚ +# Menonaktifkan LTL/STL/GTL +Misskey memungkinkan untuk menonaktifkan LTL/STL/GTL secara satu persatu.Kamu dapat mengaktifkan atau menonaktifkan linimasa individual tersebut melalui panel kontrol instansi. LTLã‚„STLã¯ã€ãã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹å…¨å“¡ã®æŠ•ç¨¿ãŒè¦‹ã‚Œã‚‹ãŸã‚ã€æ–°è¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ã¨ã£ã¦ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’探ã™å¿…è¦ãŒãªããªã‚Šã€èˆˆå‘³ã®ã‚るユーザーを見ã¤ã‘ã‚„ã™ã„ã¨ã„ã†åˆ©ç‚¹ãŒã‚ã‚Šã¾ã™ã€‚ ã—ã‹ã—åŒæ™‚ã«ã€ãƒ•ã‚©ãƒãƒ¼æ©Ÿèƒ½ãŒæ´»ç”¨ã•ã‚Œãªããªã£ãŸã‚Šã€ä¸é©åˆ‡ãªæŠ•ç¨¿ãŒç›®ã«ã¤ãã‚„ã™ããªã£ãŸã‚Šã€ãƒãƒ£ãƒƒãƒˆã®ã‚ˆã†ã«ãªã‚‹ã“ã¨ã§å†…輪感ãŒç”Ÿã˜ã¦é€†ã«æ–°è¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒå‚åŠ ã—ã«ãããªã‚‹ã¨ã„ã£ãŸãƒ‡ãƒ¡ãƒªãƒƒãƒˆã‚‚æŒã¡åˆã‚ã›ã¦ã„ã¾ã™ã€‚ サーãƒãƒ¼ã«ã‚ˆã£ã¦ãƒ¡ãƒªãƒƒãƒˆ/デメリットã©ã¡ã‚‰ãŒå„ªå‹¢ã‹ã¯ç•°ãªã‚‹ã®ã§ã€ã‚ªãƒ—ションã¨ã—ã¦ç„¡åŠ¹ã«ã§ãるよã†ã«ãªã£ã¦ã„ã¾ã™ã€‚ ã‚‚ã—デメリットã®æ–¹ãŒä¸Šå›žã£ã¦ã„ã‚‹ã¨æ„Ÿã˜ãŸã‚‰ã€ãれらã®ã‚¿ã‚¤ãƒ ラインを無効化ã™ã‚‹ã“ã¨ã‚‚検討ã—ã¦ãã ã•ã„。 -<div class="warn">âš ï¸ ç„¡åŠ¹åŒ–ã‚’è¡Œã†ã¨ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒå›°æƒ‘ã—ã€çŸæœŸçš„ã«è¦‹ã¦åˆ©ç”¨è€…ãŒæ¸›ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚ãã®ãŸã‚ã€ç„¡åŠ¹åŒ–ã®éš›ã¯å½±éŸ¿ã‚’æ…Žé‡ã«æ¤œè¨Žã—ã€äº‹å‰ã«èª¬æ˜Žã—ã¦ãƒ•ã‚©ãƒãƒ¼ã‚’æ•´ãˆã‚‹æœŸé–“を一定程度è¨ã‘ã‚‹ã“ã¨ã‚’推奨ã—ã¾ã™ã€‚</div> +<div class="warn">Menonaktifkan linimasa dapat menyebabkan kebingungan dan memungkinkan untuk pengguna mengalami drop-in jangka pendek.Oleh karena itu, dimohon berhati-hati dengan efek dari menonaktifkan linimasa, dan jelaskan alasannya mengapa menonaktifkan tersebut dari awal, agar pengguna kamu dapat bersiap dengan mengikuti pengguna yang seringnya mereka berkomunikasi di LTL/STL.</div> -ãªãŠã€ç®¡ç†è€…/モデレーターã¯ã€ã“れらã®ã‚¿ã‚¤ãƒ ラインã®ç„¡åŠ¹åŒ–状態ã¯é©ç”¨ã•ã‚Œãšã€å¼•ã続ã利用ã™ã‚‹ã“ã¨ãŒå¯èƒ½ã§ã™ã€‚ +Sebagai tambahan, Administrator / Moderator akan tetap dapat melihat linimasa ini meskipun telah dinonaktifkan. diff --git a/src/docs/id-ID/admin/faq.md b/src/docs/id-ID/admin/faq.md index 317b4e0655a010943e530011cf080b81371c3f3b..747a4a24fad347aa26b76d374003ba70614013b0 100644 --- a/src/docs/id-ID/admin/faq.md +++ b/src/docs/id-ID/admin/faq.md @@ -1,5 +1,5 @@ -# よãã‚ã‚‹è³ªå• -ã“ã“ã§ã¯ã€ã‚µãƒ¼ãƒãƒ¼ç®¡ç†è€…å‘ã‘ã®ã‚ˆãã‚る質å•ã‚’掲載ã—ã¦ã„ã¾ã™ã€‚ +# Pertanyaan Yang Sering Ditanyakan (FAQ) +Dokumen ini ditujukan kepada administrator server dan memberikan daftar jawaban untuk pertanyaan yang sering ditanyakan. -## デフォルトテーマをè¨å®šã—ãŸã„ -ç¾åœ¨ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ†ãƒ¼ãƒžè¨å®šæ©Ÿèƒ½ã¯å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。 +## "Aku ingin menyetel tema bawaan untuk instansi milikku" +Untuk saat ini belum ada fitur yang membolehkan kamu untuk menyetel tema default instansi milikmu. diff --git a/src/docs/id-ID/general/changelog.md b/src/docs/id-ID/general/changelog.md index 6766a63b20a31572d0e00e60b05ea8fe03e108f0..3b00e6acb198e023d68e8bad2aa81722f3c833f7 100644 --- a/src/docs/id-ID/general/changelog.md +++ b/src/docs/id-ID/general/changelog.md @@ -1,5 +1,5 @@ -# æ›´æ–°å±¥æ´ -<div class="info">â„¹ï¸ ã“ã®ã‚µãƒ¼ãƒãƒ¼ã®æ›´æ–°å±¥æ´ã§ã™ã€‚Misskeyã®æœ€æ–°ã®ãƒªãƒªãƒ¼ã‚¹ã«ã¤ã„ã¦ã¯ã€<a href="https://github.com/misskey-dev/misskey/blob/master/CHANGELOG.md" target="_blank">GitHub</a>ã‚’ã”確èªãã ã•ã„。</div> +# Catatan Rilis +<div class="info">â„¹ï¸ Catatan rilis ini hanya berlaku pada versi terakhir dari server ini.Untuk membaca catatan rilis Misskey paling terbaru, mohon periksa ke <a href="https://github.com/misskey-dev/misskey/blob/master/CHANGELOG.md" target="_blank">GitHub</a>.</div> <!-- For translators: Do not edit these comments. --> <!--[CHANGELOG]--> diff --git a/src/docs/id-ID/general/faq.md b/src/docs/id-ID/general/faq.md index c272b2ad425a090129251eb3d4a6ad0dbe765ac0..b82f0986f7711e1972f12299d339de0583c7c182 100644 --- a/src/docs/id-ID/general/faq.md +++ b/src/docs/id-ID/general/faq.md @@ -1,4 +1,4 @@ -# よãã‚ã‚‹è³ªå• +# Pertanyaan Yang Sering Ditanyakan (FAQ) ã“ã“ã§ã¯åˆ©ç”¨ä¸Šã®ã‚ˆãã‚る質å•ã«ã¤ã„ã¦æŽ²è¼‰ã—ã¦ã„ã¾ã™ã€‚ Misskeyã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆè‡ªä½“ã«ã¤ã„ã¦ã®ã‚ˆãã‚る質å•ã¯[ã“ã¡ã‚‰](./misskey)ã«æŽ²è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚ ## iOS/Androidã®ã‚¢ãƒ—リã¯ã‚ã‚Šã¾ã™ã‹ï¼Ÿ diff --git a/src/docs/id-ID/general/glossary.md b/src/docs/id-ID/general/glossary.md index 95945e8f004ab47dbca0d630fa90a894e310a982..b98b3b1114bf81e7c7681aa345e3d3e3ba512d40 100644 --- a/src/docs/id-ID/general/glossary.md +++ b/src/docs/id-ID/general/glossary.md @@ -1,35 +1,35 @@ -# 用語集 -Misskeyã«é–¢ã™ã‚‹ç”¨èªžé›†ã§ã™ã€‚ +# Kosakata +Kosakata yang terkait dengan Misskey. ## ActivityPub -(èªã¿: ã‚ãã¦ãƒã³ã¦ãƒã±ã¶) 分散型を実ç¾ã™ã‚‹ãŸã‚ã«ç”¨ã„られるプãƒãƒˆã‚³ãƒ«(仕様)。ã“ã®ãƒ—ãƒãƒˆã‚³ãƒ«ã«å‰‡ã£ã¦ã‚µãƒ¼ãƒãƒ¼åŒå£«é€šä¿¡ã‚’è¡Œã†ã“ã¨ã§ã€é€£åˆãŒè¡Œã‚ã‚Œã€Fediverseã‚’å½¢æˆã—ã¦ã„ã¾ã™ã€‚ +Protokol yang digunakan untuk memungkinkan distribusi dari Misskey.Dengan mengikuti protokol ini, komunikasi dengan server lainnya yang juga mengikuti protokol ini menjadi mungkin, yang mana membentuk suatu semesta yang disebut sebagai Fediverse. ## AiScript -(èªã¿: ã‚ã„ã™ãã‚Šã·ã¨) Misskey上ã§ä½¿ç”¨ã§ãるプãƒã‚°ãƒ©ãƒŸãƒ³ã‚°è¨€èªžã§ã™ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../advanced/aiscript) +Bahasa pemrograman yang tersedia untuk digunakan dalam Misskey.Untuk detilnya, [lihat disini.](../advanced/aiscript) ## API -(èªã¿: ãˆãƒ¼ã´ãƒ¼ã‚ã„) Misskeyã®ã‚µãƒ¼ãƒãƒ¼ãŒå…¬é–‹ã—ã¦ã„ã‚‹ã€ãƒ—ãƒã‚°ãƒ©ãƒ ã‹ã‚‰Misskeyを扱ã†ãŸã‚ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../advanced/api) +Antarmuka yang dapat digunakan untuk berinteraksi dengan Misskey melalui program, tersedia untuk setiap instansi individual.Untuk detilnya, [lihat disini.](../advanced/api) ## Bot -(èªã¿: ã¼ã£ã¨) プãƒã‚°ãƒ©ãƒ ã«ã‚ˆã£ã¦å‹•ä½œã—ã¦ã„るアカウント。 +Sebuah akun yang dikendalikan oleh program. ## CW -(èªã¿: ã“ã‚“ã¦ã‚“ã¤ã‚ーã«ã‚“ã) Contents Warningã®ç•¥ã€‚ノートã®å†…容をã€æ“作ãªã—ã«ã¯è¡¨ç¤ºã—ãªã„よã†ã«ã§ãる機能。主ã«é•·å¤§ãªå†…å®¹ã‚’éš ã™ãŸã‚ã‚„ã€ãƒã‚¿ãƒãƒ¬é˜²æ¢ãªã©ã«ä½¿ã‚ã‚Œã¾ã™ã€‚ +Singkatan dari "Content Warning".Sebuah fitur untuk menyembunyikan konten dari catatan kecuali diminta untuk diperlihatkan oleh pengguna.Utamanya digunakan untuk menyembunyikan konten catatan panjang atau untuk mencegah postingan spoiler secara publik. ## Fediverse -(èªã¿: ãµã‡ã§ãƒã°ãƒ¼ã™) Misskeyã‚’å«ã‚€æ§˜ã€…ãªåˆ†æ•£åž‹ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã®ã‚µãƒ¼ãƒãƒ¼ã§æ§‹æˆã•ã‚ŒãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã€‚ +Sebuah jaringan server yang terdiri dari berbagai platform berbeda yang saling berkomunikasi, termasuk Misskey. ## GTL -ã‚°ãƒãƒ¼ãƒãƒ«ã‚¿ã‚¤ãƒ ライン(Global TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +Singkatan dari "Global TimeLine" (Linimasa Global).Untuk informasi lebih lanjut tentang linimasa, mohon [lihat disini](../features/timeline). ## HTL -ホームタイムライン(Home TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +Singkatan dari "Home TimeLine" (Linimasa Beranda).Untuk informasi lebih lanjut tentang linimasa, mohon [lihat disini](../features/timeline) ## LTL -ãƒãƒ¼ã‚«ãƒ«ã‚¿ã‚¤ãƒ ライン(Local TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +Singkatan dari "Local TimeLine" (Linimasa Lokal).Untuk informasi lebih lanjut tentang linimasa, mohon [lihat disini](../features/timeline) ## MFM -(èªã¿: ãˆã‚€ãˆãµãˆã‚€) Misskey Flavored Markdownã®ç•¥ã§ã€Misskey上ã§ä½¿ç”¨ã§ãるマークアップ言語ã§ã™ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/mfm) +Singkatan dari "Misskey Flavored Markdown", sebuah bahasa markdown yang tersedia untuk digunakan pada Misskey.Untuk detilnya, [lihat disini.](../features/mfm) ## NSFW (èªã¿: ã®ã£ã¨ã›ãƒ¼ãµãµã‰ãƒ¼ã‚ーã) Not Safe For Workã®ç•¥ã€‚ç”»åƒã‚’「閲覧注æ„ã€æ‰±ã„ã«ã—ã€æ“作ãªã—ã«ã¯è¡¨ç¤ºã—ãªã„よã†ã«ã™ã‚‹ã“ã¨ãŒã§ãる機能。 @@ -38,21 +38,21 @@ Misskeyã«é–¢ã™ã‚‹ç”¨èªžé›†ã§ã™ã€‚ (èªã¿: ã‚Šã®ãƒ¼ã¨) æ—¢ã«ã‚るノートを引用ã€ã‚‚ã—ãã¯ãã®ãƒŽãƒ¼ãƒˆã‚’æ–°ã—ã„ノートã¨ã—ã¦å…±æœ‰ã™ã‚‹è¡Œç‚ºã€ã¾ãŸãã‚Œã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸãƒŽãƒ¼ãƒˆã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/note) ## STL -ソーシャルタイムライン(Social TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +Singkatan dari "Social TimeLine" (Linimasa Sosial).Untuk informasi lebih lanjut tentang linimasa, mohon [lihat disini](../features/timeline) -## è— -(èªã¿: ã‚ã„) Misskeyã®çœ‹æ¿å¨˜(å…¬å¼ã‚ャラクター)ã§ã™ã€‚ +## Ai +Ai adalah maskot resmi milik Misskey. -## アクティブユーザー -インスタンスã«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’作ã£ã¦ã„るユーザーã®ã†ã¡ã€ç¾åœ¨ã‚‚実際ã«ã‚µãƒ¼ãƒ“スを利用ã—ã¦ã„るユーザーã®ã“ã¨ã€‚ +## Pengguna Aktif +Para pengguna di antara semua pengguna yang ada yang terus menggunakan akun mereka. ## Instansi todo ## Emoji kustom -サーãƒãƒ¼ã§ç”¨æ„ã•ã‚ŒãŸçµµæ–‡å—。カスタム絵文å—ã§ã¯ãªã„通常ã®çµµæ–‡å—ã¯ã€ŒUnicode絵文å—ã€ã¨åŒºåˆ¥ã—ã¦å‘¼ã°ã‚Œã‚‹ã€‚ +Emoji yang disediakan oleh server kamu.Emoji yang spesifik tidak disediakan oleh server kamu tetapi tersedia secara bawaan adalah "Unicode Emoji". -## コントãƒãƒ¼ãƒ«ãƒ‘ãƒãƒ« +## Panel kontrol インスタンスã®è¨å®šç”»é¢ã®ã“ã¨ã€‚ ## Server @@ -73,8 +73,8 @@ Misskeyã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’管ç†ã™ã‚‹æ©Ÿèƒ½ã€‚詳細ã¯[ ## Catatan Misskeyã«æŠ•ç¨¿ã•ã‚Œã‚‹ã€æ–‡ç« ã€ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¢ãƒ³ã‚±ãƒ¼ãƒˆãªã©ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãるコンテンツ。詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/note) -## ミスã‚スト -Misskeyを使ã†äººã®ã“ã¨ã€‚ +## Misskist +Pengguna dari Misskey. ## Moderator スパムã®å‡çµãŠã‚ˆã³ã‚µã‚¤ãƒ¬ãƒ³ã‚¹ã‚„ä¸é©åˆ‡ãªæŠ•ç¨¿ã®å‰Šé™¤ãªã©ã€ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£é‹å–¶ã«é–¢ã™ã‚‹æ¨©é™ã‚’æŒã¤ãƒ¦ãƒ¼ã‚¶ãƒ¼ã€‚ diff --git a/src/docs/id-ID/general/misskey.md b/src/docs/id-ID/general/misskey.md index 18e74c63dbae0f5b46b7ce97de690a1d5573e5c1..a843f2888ff2c266715083b1229eec1abb87c59b 100644 --- a/src/docs/id-ID/general/misskey.md +++ b/src/docs/id-ID/general/misskey.md @@ -1,87 +1,87 @@ # Tentang Misskey -Misskeyã¯ã‚ªãƒ¼ãƒ—ンソースã®åˆ†æ•£åž‹ãƒžã‚¤ã‚¯ãƒãƒ–ãƒã‚°ãƒ—ラットフォームプãƒã‚¸ã‚§ã‚¯ãƒˆã§ã™ã€‚ 開発ã¯æ—¥æœ¬ã§syuiloã«ã‚ˆã£ã¦2014å¹´ã‹ã‚‰é–‹å§‹ã•ã‚Œã¾ã—ãŸã€‚ ドライブã€ãƒªã‚¢ã‚¯ã‚·ãƒ§ãƒ³ãªã©ã®è±Šå¯Œãªæ©Ÿèƒ½ã‚„ã€é«˜ã„カスタマイズ性を備ãˆãŸUIã‚’æŒã¤ã“ã¨ãŒç‰¹å¾´ã§ã™ã€‚ +Misskey adalah platform sumber terbuka dan terdistribusi untuk mikroblogging. Pengembangan dimulai dari 2014 oleh syuilo di Jepang. Memiliki banyak fitur seperti Drive atau Reaksi dan juga kustomisasi UI yang tinggi. -## æ´å² +## Sejarah 開発当åˆã¯æŽ²ç¤ºæ¿ãŒãƒ¡ã‚¤ãƒ³ã®ã‚µãƒ¼ãƒ“スã§ã—ãŸãŒã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒçŸæ–‡ã‚’投稿ã—ã€ãれを時系列ã§æµã‚Œã‚‹ã‚¿ã‚¤ãƒ ãƒ©ã‚¤ãƒ³æ©Ÿèƒ½ã‚’è¿½åŠ ã—ãŸã¨ã“ã‚人気ãŒé«˜ã¾ã‚Šã€å¾ã€…ã«ãã‚ŒãŒãƒ¡ã‚¤ãƒ³ã¨ã—ã¦é–‹ç™ºãŒé€²ã‚€ã‚ˆã†ã«ãªã‚Šã¾ã—ãŸã€‚ 当åˆã¯åˆ†æ•£åž‹ã§ã¯ã‚ã‚Šã¾ã›ã‚“ã§ã—ãŸãŒã€2018å¹´ã«ActivityPubを実装ã—分散型ã«ãªã£ãŸã“ã¨ã§ã€ã‚ˆã‚Šå¤šãã®æ–¹ã«èªçŸ¥ã•ã‚Œåˆ©ç”¨ã•ã‚Œã‚‹ã‚µãƒ¼ãƒ“スã«ãªã‚Šã€ç¾åœ¨ã«è‡³ã‚Šã¾ã™ã€‚ <div class="info">â„¹ï¸ Misskeyã¨ã„ã†åå‰ã¯ã€syuiloãŒå½“時è´ã„ã¦ã„ãŸMay'nã¨ã„ã†ã‚¢ãƒ¼ãƒ†ã‚£ã‚¹ãƒˆã®æ¥½æ›²ã€Brain Diverã®æŒè©žã«ç”±æ¥ã—ã¾ã™ã€‚</div> 誰ã§ã‚‚開発ã«å‚åŠ ã™ã‚‹ã“ã¨ãŒã§ãã€ç¾åœ¨ã§ã‚‚活発ã«é–‹ç™ºãŒç¶šã„ã¦ã„ã¾ã™ã€‚ -## 分散型ã¨ã¯ä½•ã‹ï¼Ÿ +## Apa yang dimaksud dengan "Terdistribusi"? <b>分散(distributed)åž‹</b>ã¨ã¯ã€<b>éžä¸å¤®é›†æ¨©(decentralized)</b>ã¨ã‚‚呼ã°ã‚Œã€ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ãŒå¤šæ•°ã®ã‚µãƒ¼ãƒãƒ¼ã«åˆ†æ•£ã—ã¦å˜åœ¨ã—ã€ãれらãŒç›¸äº’ã«<b>通信(連åˆã€federation)</b>ã™ã‚‹ã“ã¨ã§ã‚³ãƒ³ãƒ†ãƒ³ãƒ„共有<b>ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯(Fediverse)</b>ã‚’å½¢æˆã—ã¦ã„ã‚‹ã“ã¨ãŒç‰¹å¾´ã®ã‚µãƒ¼ãƒ“スã§ã™ã€‚ å˜ä¸€ã®ã‚µãƒ¼ãƒãƒ¼ã—ã‹å˜åœ¨ã—ãªã„ã€ã‚‚ã—ãã¯è¤‡æ•°å˜åœ¨ã—ã¦ã‚‚互ã„ã«ç‹¬ç«‹ã—ã¦ã„ã‚‹å ´åˆã¯ä¸å¤®é›†æ¨©ãªã‚µãƒ¼ãƒ“スã¨è¨€ã‚ã‚Œã€ä¾‹ãˆã°Twitterã‚„Facebookãªã©ã»ã¨ã‚“ã©ã®ã‚µãƒ¼ãƒ“スãŒãã‚Œã«è©²å½“ã—ã¾ã™ã€‚ 分散型ã®ãƒ¡ãƒªãƒƒãƒˆã¯ã€è‡ªåˆ†ã«åˆã£ãŸé‹å–¶è€…やテーマã®ã‚µãƒ¼ãƒãƒ¼ã‚’é¸æŠžã§ãã‚‹ã“ã¨ã§ã™ã€‚自分ã§ã‚µãƒ¼ãƒãƒ¼ã‚’作æˆã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚連åˆã™ã‚‹ãŠã‹ã’ã§ã€ã©ã®ã‚µãƒ¼ãƒãƒ¼ã‚’é¸ã‚“ã§ã‚‚ã€åŒã˜ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ -## 常ã«ã‚ªãƒ¼ãƒ—ンソース -Misskeyã¯ã“ã‚Œã¾ã§ã‚‚ã“ã‚Œã‹ã‚‰ã‚‚ã€ã‚ªãƒ¼ãƒ—ンソースã§ã‚り続ã‘ã¾ã™ã€‚オープンソースã¨ã¯ã€ç°¡å˜ã«è¨€ã†ã¨<b>ソフトウェアã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰(プãƒã‚°ãƒ©ãƒ )ãŒå…¬é–‹ã•ã‚Œã¦ã„ã‚‹</b>ã“ã¨ã§ã™ã€‚ソースコードã®ä¿®æ£ã‚„å†é…布ãŒå¯èƒ½ã§ã‚ã‚‹ã“ã¨ã‚’定義ã«å«ã‚ã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚ Misskeyã®ã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã¯[AGPL](https://github.com/misskey-dev/misskey/blob/develop/LICENSE)ã¨ã„ã†ã‚ªãƒ¼ãƒ—ンソースライセンスã®ä¸‹ã«[公開](https://github.com/misskey-dev)ã•ã‚Œã¦ã„ã¦ã€èª°ã§ã‚‚自由ã«é–²è¦§ã€ä½¿ç”¨ã€ä¿®æ£ã€æ”¹å¤‰ã€å†é…布をã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ オープンソースã¯ã€è‡ªåˆ†ã§å¥½ããªã‚ˆã†ã«å¤‰ãˆãŸã‚Šã€æœ‰å®³ãªå‡¦ç†ãŒå«ã¾ã‚Œã¦ã„ãªã„ã“ã¨ã‚’確èªã™ã‚‹ã“ã¨ãŒã§ããŸã‚Šã€èª°ã§ã‚‚開発ã«å‚åŠ ã§ãã‚‹ãªã©ã®ã€æ§˜ã€…ãªãƒ¡ãƒªãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚ 上述ã®åˆ†æ•£åž‹ã‚’実ç¾ã™ã‚‹ãŸã‚ã«ã‚‚ã€ã‚ªãƒ¼ãƒ—ンソースã§ã‚ã‚‹ã¨ã„ã†ã“ã¨ã¯å¿…è¦ä¸å¯æ¬ ãªè¦ç´ ã§ã™ã€‚ å†ã³å¼•ãåˆã„ã«å‡ºã—ã¾ã™ãŒã€Twitterã‚„Facebookãªã©ã®åˆ©ç›Šã‚’å¾—ã¦ã„ã‚‹ã»ã¨ã‚“ã©ã®ã‚µãƒ¼ãƒ“スã¯ã‚ªãƒ¼ãƒ—ンソースã§ã¯ã‚ã‚Šã¾ã›ã‚“。 +## Selalu sumber-terbuka +Misskey sudah selalu, dan akan selalu menjadi perangkat lunak sumber terbuka.オープンソースã¨ã¯ã€ç°¡å˜ã«è¨€ã†ã¨<b>ソフトウェアã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰(プãƒã‚°ãƒ©ãƒ )ãŒå…¬é–‹ã•ã‚Œã¦ã„ã‚‹</b>ã“ã¨ã§ã™ã€‚ソースコードã®ä¿®æ£ã‚„å†é…布ãŒå¯èƒ½ã§ã‚ã‚‹ã“ã¨ã‚’定義ã«å«ã‚ã‚‹ã“ã¨ã‚‚ã‚ã‚Šã¾ã™ã€‚ Misskeyã®ã™ã¹ã¦ã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã¯[AGPL](https://github.com/misskey-dev/misskey/blob/develop/LICENSE)ã¨ã„ã†ã‚ªãƒ¼ãƒ—ンソースライセンスã®ä¸‹ã«[公開](https://github.com/misskey-dev)ã•ã‚Œã¦ã„ã¦ã€èª°ã§ã‚‚自由ã«é–²è¦§ã€ä½¿ç”¨ã€ä¿®æ£ã€æ”¹å¤‰ã€å†é…布をã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ オープンソースã¯ã€è‡ªåˆ†ã§å¥½ããªã‚ˆã†ã«å¤‰ãˆãŸã‚Šã€æœ‰å®³ãªå‡¦ç†ãŒå«ã¾ã‚Œã¦ã„ãªã„ã“ã¨ã‚’確èªã™ã‚‹ã“ã¨ãŒã§ããŸã‚Šã€èª°ã§ã‚‚開発ã«å‚åŠ ã§ãã‚‹ãªã©ã®ã€æ§˜ã€…ãªãƒ¡ãƒªãƒƒãƒˆãŒã‚ã‚Šã¾ã™ã€‚ 上述ã®åˆ†æ•£åž‹ã‚’実ç¾ã™ã‚‹ãŸã‚ã«ã‚‚ã€ã‚ªãƒ¼ãƒ—ンソースã§ã‚ã‚‹ã¨ã„ã†ã“ã¨ã¯å¿…è¦ä¸å¯æ¬ ãªè¦ç´ ã§ã™ã€‚ å†ã³å¼•ãåˆã„ã«å‡ºã—ã¾ã™ãŒã€Twitterã‚„Facebookãªã©ã®åˆ©ç›Šã‚’å¾—ã¦ã„ã‚‹ã»ã¨ã‚“ã©ã®ã‚µãƒ¼ãƒ“スã¯ã‚ªãƒ¼ãƒ—ンソースã§ã¯ã‚ã‚Šã¾ã›ã‚“。 <div class="info">â„¹ï¸ æŠ€è¡“çš„ã«è¨€ã†ã¨ã€Misskeyã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã¯Gitã§ç®¡ç†ã•ã‚Œã¦ã„ã¦ã€ãƒªãƒã‚¸ãƒˆãƒªã¯<a href="https://github.com/misskey-dev" target="_blank">GitHub上ã§ãƒ›ã‚¹ãƒ†ã‚£ãƒ³ã‚°ã•ã‚Œã¦ã„ã¾ã™ã€‚</a></div> -## 開発ã«å‚åŠ ã™ã‚‹ã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚’支æ´ã™ã‚‹ +## Ikut mengembangkan dan mendukung proyek Misskeyã‚’æ°—ã«å…¥ã£ã¦ã„ãŸã ã‘ãŸã‚‰ã€ãœã²ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚’支æ´ã—ã¦ãã ã•ã„。プãƒã‚¸ã‚§ã‚¯ãƒˆã«è²¢çŒ®ã™ã‚‹ã«ã¯ã€ä»¥ä¸‹ã§ç´¹ä»‹ã™ã‚‹ã‚ˆã†ã«ã„ã‚ã„ã‚ãªæ–¹æ³•ãŒã‚ã‚Šã¾ã™ã€‚方法ã«ã‚ˆã£ã¦ã¯é–‹ç™ºã®ã‚¹ã‚ルã¯ä¸è¦ãªã®ã§ã€èª°ã§ã‚‚気軽ã«å‚åŠ ã—貢献ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã„ã¤ã§ã‚‚ãŠå¾…ã¡ã—ã¦ã„ã¾ã™ã€‚ -### æ©Ÿèƒ½ã‚’è¿½åŠ ã—ãŸã‚Šã€ãƒã‚°ã‚’ä¿®æ£ã™ã‚‹ +### Menambahkan fitur atau memperbaiki bug ソフトウェアエンジニアã®ã‚¹ã‚ルをãŠæŒã¡ã®æ–¹ã§ã‚ã‚Œã°ã€ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã‚’編集ã™ã‚‹å½¢ã§ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã«è²¢çŒ®ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ 貢献ã«ã¤ã„ã¦ã®ã‚¬ã‚¤ãƒ‰ã¯[ã“ã¡ã‚‰](https://github.com/misskey-dev/misskey/blob/develop/CONTRIBUTING.md)ã§ã™ã€‚ -### è°è«–ã«å‚åŠ ã™ã‚‹ +### Berpartisipasi dalam diskusi æ–°ã—ã„機能ã€ã¾ãŸã¯æ—¢å˜ã®æ©Ÿèƒ½ã«ã¤ã„ã¦æ„見を述ã¹ãŸã‚Šã€ä¸å…·åˆã‚’å ±å‘Šã—ãŸã‚Šã™ã‚‹ã“ã¨ã§ã‚‚貢献ã§ãã¾ã™ã€‚ ãã®ã‚ˆã†ãªãƒ‡ã‚£ã‚¹ã‚«ãƒƒã‚·ãƒ§ãƒ³ã¯[GitHub](https://github.com/misskey-dev)上ã‹ã€[フォーラム](https://forum.misskey.io/)ç‰ã§è¡Œã‚ã‚Œã¾ã™ã€‚ -### テã‚ストを翻訳ã™ã‚‹ +### Menerjemahkan teks Misskeyã¯æ§˜ã€…ãªè¨€èªžã«å¯¾å¿œã—ã¦ã„ã¾ã™(i18n -internationalizationã®ç•¥- ã¨å‘¼ã°ã‚Œã¾ã™)。元ã®è¨€èªžã¯åŸºæœ¬çš„ã«æ—¥æœ¬èªžã§ã™ãŒã€æœ‰å¿—ã«ã‚ˆã£ã¦ä»–ã®è¨€èªžã¸ã¨ç¿»è¨³ã•ã‚Œã¦ã„ã¾ã™ã€‚ ãã®ç¿»è¨³ä½œæ¥ã«åŠ ã‚ã£ã¦ã„ãŸã ãã“ã¨ã§ã‚‚Misskeyã«è²¢çŒ®ã§ãã¾ã™ã€‚ Misskeyã¯[Crowdinã¨ã„ã†ã‚µãƒ¼ãƒ“スを使用ã—ã¦ç¿»è¨³ã®ç®¡ç†ã‚’è¡Œã£ã¦ã„ã¾ã™ã€‚](https://crowdin.com/project/misskey) -### 感想を投稿ã™ã‚‹ +### Berbagi impresimu ä¸å…·åˆå ±å‘Šç‰ã ã‘ã§ã¯ãªãã€Misskeyã®è‰¯ã„点ã€æ¥½ã—ã„点ã¨ã„ã£ãŸãƒã‚¸ãƒ†ã‚£ãƒ–ãªæ„見もãœã²å…±æœ‰ã—ã¦ãã ã•ã„。開発ã®åŠ±ã¿ã«ãªã‚Šã€ãã‚Œã¯é–“接的ã§ã™ãŒãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¸ã®è²¢çŒ®ã§ã™ã€‚ -### ミスã‚ストを増や㙠+### Menambahkan jumlah Misskist ミスã‚ストã¨ã¯ã€Misskeyを使用ã™ã‚‹äººã®ã“ã¨ã§ã™ã€‚ 知りåˆã„ã«ç´¹ä»‹ã™ã‚‹ãªã©ã—ã¦Misskeyを広ã‚ã¦ã„ãŸã ã‘ã‚Œã°ã€ãƒŸã‚¹ã‚ストãŒå¢—ãˆé–‹ç™ºã®ãƒ¢ãƒãƒ™ãƒ¼ã‚·ãƒ§ãƒ³ãŒä¸ŠãŒã‚Šã¾ã™ã€‚ -### 寄付をã™ã‚‹ +### Membuat donasi Misskeyã¯ãƒ“ジãƒã‚¹ã§ã¯ãªãã€åˆ©ç”¨ã¯ç„¡æ–™ã§ã‚ã‚‹ãŸã‚ã€åŽç›Šã¯çš†æ§˜ã‹ã‚‰ã®å¯„付ã®ã¿ã§ã™ã€‚(インスタンスã«ã‚ˆã£ã¦ã¯åºƒå‘ŠåŽå…¥ã‚’å¾—ã¦ã„るよã†ãªå ´åˆã‚‚ã‚ã‚Šã¾ã™ãŒã€ãã‚Œã¯é‹å–¶è€…ã®åŽå…¥ã§ã‚り直接開発者ã¸ã®åŽå…¥ã«ã¯ãªã‚Šã¾ã›ã‚“) 寄付をã—ã¦ã„ãŸã ã‘ã‚Œã°ã€ä»Šå¾Œã‚‚開発を続ã‘ã‚‹ã“ã¨ãŒå¯èƒ½ã«ãªã‚Šã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¸ã®è²¢çŒ®ã«ãªã‚Šã¾ã™ã€‚ 寄付ã¯åŸºæœ¬çš„ã«ã¯[Patreon](https://www.patreon.com/syuilo)ã§å—ã‘付ã‘ã¦ã„ã¾ã™ã€‚ 一定é¡å¯„付ã—ã¦ã„ãŸã ã‘ã‚‹ã¨ã€Misskeyã®[æƒ…å ±ãƒšãƒ¼ã‚¸](/about-misskey)ã«åå‰ã‚’記載ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ ã¾ãŸã€ã‚µãƒ¼ãƒãƒ¼ã®é‹å–¶è€…ã‚‚ã€åŸºæœ¬çš„ã«ã¯åŽç›Šã‚’å¾—ã¦ã„ã¾ã›ã‚“。サーãƒãƒ¼ã®é‹å–¶ã«ã¯ã‚³ã‚¹ãƒˆãŒã‹ã‹ã‚‹ã®ã§ã€é‹å–¶è€…ã®æ”¯æ´ã‚’ã™ã‚‹ã“ã¨ã‚‚ã”検討ãã ã•ã„。 開発ã«ã¯ç›´æŽ¥é–¢ä¿‚ã—ã¾ã›ã‚“ãŒã€ã‚µãƒ¼ãƒãƒ¼ãŒã‚ã£ã¦ã“ãã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãªã®ã§ã€é‹å–¶ãŒç¶æŒã•ã‚Œã‚‹ã¨ã„ã†ã®ã¯é–‹ç™ºã¨åŒã˜ãらã„é‡è¦ãªã“ã¨ã§ã™ã€‚ -## クレジット +## Kredit Misskeyã®é–‹ç™ºè€…ã‚„ã€Misskeyã«å¯„付をã—ã¦ãã ã•ã£ãŸæ–¹ã®ä¸€è¦§ã¯[ã“ã¡ã‚‰](/about-misskey)ã§è¦‹ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ -## よãã‚ã‚‹è³ªå• -### プãƒã‚¸ã‚§ã‚¯ãƒˆã¯ä½•ã‚’目指ã—ã¦ã„ã¾ã™ã‹ï¼Ÿ +## Pertanyaan Yang Sering Ditanyakan (FAQ) +### Apa yang ingin dicapai dari project ini? å¼·ã„ã¦è¨€ã†ã¨ã€æ¼ 然的ã«ãªã‚Šã¾ã™ãŒåºƒã使ã‚れる汎用的ãªãƒ—ラットフォームã«ãªã‚‹ã“ã¨ã‚’目指ã—ã¦ã„ã¾ã™ã€‚ Misskeyã¯ä»–ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¨ã¯é•ã„ã€ä½•ã‚‰ã‹ã®æ€æƒ³(例ãˆã°ã€åä¸å¤®é›†æ¨©)やビジョンã«åŸºã¥ã„ã¦é–‹ç™ºãŒè¡Œã‚ã‚Œã¦ã„ã‚‹ã‚ã‘ã§ã¯ãªãã€ãã®ç‚¹ã§ã¯ãƒ•ãƒ©ãƒƒãƒˆã§ã™ã€‚ ãã‚ŒãŒé€†ã«ã€ç‰¹å®šã®æ–¹å‘性ã«ç¸›ã‚‰ã‚Œãªã„フレã‚シブルã•ã‚’生ã¿å‡ºã™ã“ã¨ã«ç¹‹ãŒã£ã¦ã„ã‚‹ã¨æ„Ÿã˜ã¦ã„ã¾ã™ã€‚ <!-- TODO: ã“ã“ã«ãƒãƒ¼ãƒ‰ãƒžãƒƒãƒ—ã¸ã®ãƒªãƒ³ã‚¯ --> -### ä¼æ¥ã«ã‚ˆã£ã¦é–‹ç™ºã•ã‚Œã¦ã„ã¾ã™ã‹ï¼Ÿ +### Apakah Misskey dikembangkan oleh perusahaan? ã„ã„ãˆã€‚Misskeyã®é–‹ç™ºã¯å€‹äººã§è¡Œã‚ã‚Œã¦ãŠã‚Šã€å•†æ¥çš„ã§ã‚‚ãªã„ãŸã‚ã€ç‰¹å®šã®ä¼æ¥ã®é–¢ã‚Šã¯ã‚ã‚Šã¾ã›ã‚“。 開発メンãƒãƒ¼ã‚‚基本的ã«ã¯ãƒœãƒ©ãƒ³ãƒ†ã‚£ã‚¢ã§ã™ã€‚ ã¾ãŸã€é–‹ç™ºã«å¯¾ã—ä¼æ¥ã®ã‚¹ãƒãƒ³ã‚µãƒ¼ãŒã¤ãã“ã¨ã‚‚ã‚ã‚Šã¾ã™ãŒã€ãã®å ´åˆã§ã‚‚ã‚„ã¯ã‚Šé–‹ç™ºã¯å€‹äººã®ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ãŒä¸»ä½“ã§ã™ã€‚ -### 誰ãŒé‹å–¶ã—ã¦ã„ã¾ã™ã‹ï¼Ÿ +### Siapa yang mengelola Misskey? Misskeyã¯åˆ†æ•£åž‹ãªãŸã‚ã€å„サーãƒãƒ¼ã«ãã‚Œãžã‚Œç•°ãªã£ãŸé‹å–¶è€…ãŒã„ã¾ã™ã€‚従ã£ã¦ã€ç‰¹å®šã®å€‹äººã‚„ä¼æ¥ã«ã‚ˆã£ã¦ã€Misskeyã®å…¨ã¦ãŒé‹å–¶ã•ã‚Œã¦ã„ã‚‹ã‚ã‘ã§ã¯ã‚ã‚Šã¾ã›ã‚“。 ã¾ãŸã€é–‹ç™ºãƒãƒ¼ãƒ ãŒé‹å–¶ã‚’è¡Œã†ã‚ã‘ã§ã‚‚ãªã„ãŸã‚ã€é‹å–¶ã«é–¢ã™ã‚‹é€£çµ¡ã¯ã€ãŠä½¿ã„ã®ã‚µãƒ¼ãƒãƒ¼ã®é‹å–¶è€…ã«è¡Œã£ã¦ãã ã•ã„。 サーãƒãƒ¼ã®é‹å–¶è€…ã¯ã€[ã“ã®ãƒšãƒ¼ã‚¸](/about)ã§ç¢ºèªã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ ã‚ãªãŸãŒã‚µãƒ¼ãƒãƒ¼ã‚’作æˆã™ã‚Œã°ã€ã‚ãªãŸãŒé‹å–¶è€…ã«ãªã‚Šã¾ã™ã€‚ -### ã©ã®ã‚µãƒ¼ãƒãƒ¼ã‚’é¸ã¹ã°ã„ã„ã§ã™ã‹ï¼Ÿ +### Server mana yang seharusnya aku pilih? [サーãƒãƒ¼ä¸€è¦§ãŒå…¬é–‹ã•ã‚Œã¦ã„ã¾ã™ã€‚](https://join.misskey.page/ja-JP/instances) サーãƒãƒ¼ã«ã‚ˆã£ã¦ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã®ãƒ†ãƒ¼ãƒž(特定ã®ã“ã¨ã€ã‚‚ã®ãŒå¥½ã ç‰)ãŒæ±ºã‚られã¦ã„ã‚‹å ´åˆãŒã‚ã‚‹ã®ã§ã€è‡ªåˆ†ã«åˆã£ãŸãƒ†ãƒ¼ãƒžã®ã‚µãƒ¼ãƒãƒ¼ãŒã‚ã‚Œã°ã€ãã“ã‚’é¸ã¶ã¨è‰¯ã„ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。 ä»–ã«ã‚‚ã€ã‚µãƒ¼ãƒãƒ¼ã®è¦æ¨¡ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼å±¤ã€å›½ãŠã‚ˆã³è¨€èªžã€é‹å–¶è€…ãŒä¿¡é ¼ã§ãã‚‹ã‹ã©ã†ã‹ã€ãªã©ã®è¦³ç‚¹ãŒã‚ã‚Šã¾ã™ã€‚ ãªãŠã€Misskeyå…¬å¼ã®ã‚µãƒ¼ãƒãƒ¼ã¨ã„ã†ã‚‚ã®ã¯ã‚ã‚Šã¾ã›ã‚“。自身ã§æ–°ã—ãサーãƒãƒ¼ã‚’作æˆã™ã‚‹ã¨ã„ã†é¸æŠžè‚¢ã‚‚ã‚ã‚Šã¾ã™ã€‚ 基本的ã«ã©ã®ã‚µãƒ¼ãƒãƒ¼ã‚’é¸ã‚“ã ã¨ã—ã¦ã‚‚ã€ä»–ã®å…¨ã¦ã®ã‚µãƒ¼ãƒãƒ¼ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¨ç¹‹ãŒã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ -### サーãƒãƒ¼ã‚’建ã¦ã‚‹ã«ã¯ã©ã†ã—ãŸã‚‰ã„ã„ã§ã™ã‹ï¼Ÿ +### Bagaimana cara untuk membuat server milikku sendiri? Misskeyサーãƒãƒ¼ã®ä½œæˆã«èˆˆå‘³ã‚’æŒã£ã¦ã„ãŸã ãã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚ 2021å¹´ç¾åœ¨ã€Misskeyã®ãƒ›ã‚¹ãƒ†ã‚£ãƒ³ã‚°ã‚µãƒ¼ãƒ“スã¯å˜åœ¨ã—ãªã„ãŸã‚ã€ã‚µãƒ¼ãƒãƒ¼ã®ä½œæˆã«ã¯ã‚る程度ã®çŸ¥è˜ãŒå¿…è¦ã§ã™ã€‚ サーãƒãƒ¼ã®ä½œæˆæ–¹æ³•ã«ã¤ã„ã¦ã¯[ã“ã¡ã‚‰](todo)ã‚’ã”覧ãã ã•ã„。 -### ã©ã®ã‚ˆã†ãªæŠ€è¡“を使用ã—ã¦ã„ã¾ã™ã‹ï¼Ÿ +### Teknologi apa yang Misskey gunakan? Misskeyã¯é–‹ç™ºãŒé€²ã‚€ã«ã¤ã‚Œä½¿ç”¨ã™ã‚‹æŠ€è¡“も大ãã変ã‚ã£ã¦ãã¾ã—ãŸã€‚開発当åˆã¯MySQL + PHP + jQueryã¨ã„ã£ãŸæ§‹æˆã§ã—ãŸãŒã€ç¾åœ¨ã¯ä»¥ä¸‹ã®ã‚ˆã†ã«ãªã£ã¦ã„ã¾ã™ã€‚ -- サーãƒãƒ¼ã‚µã‚¤ãƒ‰: Node.js -- データベース: PostgreSQLã€Redis -- UIフレームワーク: Vue.js -- プãƒã‚°ãƒ©ãƒŸãƒ³ã‚°è¨€èªž: TypeScript +- Server: Node.js +- Database: PostgreSQL, Redis +- UI Framework: Vue.js +- Bahasa Pemrograman: TypeScript ã¾ãŸã€MFMã‚„AiScriptãªã©ã®ã€Misskeyã‹ã‚‰æ´¾ç”Ÿã—ã¦ç‹¬è‡ªã®æŠ€è¡“も開発ã—ã¦ã„ã¾ã™ã€‚ -### Mastodonã®ãƒ•ã‚©ãƒ¼ã‚¯ã§ã™ã‹ï¼Ÿ +### Apakah ini fork dari Mastodon? ã„ã„ãˆã€‚Misskeyã¯Mastodonã‚„ãã®ä»–ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¨ã¯å…¨ã別ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã§ã™ã€‚ 開発ã«é–¢ã—ã¦ã‚‚ã€Misskeyã®æ–¹ãŒæ˜”ã‹ã‚‰é–‹ç™ºã•ã‚Œã¦ã„ã¾ã™ã€‚ãŸã ã—ã€åˆ†æ•£åž‹ã«ãªã£ãŸã®ã¯Mastodonã®ç™»å ´ã‚ˆã‚Šå¾Œã§ã™ã€‚ åŒã˜ActivityPubã¨ã„ã†åˆ†æ•£ã®ãŸã‚ã®ãƒ—ãƒãƒˆã‚³ãƒ«ã‚’実装ã—ã¦ã„ã‚‹ã¨ã„ã†ç‚¹ä»¥å¤–ã€ä¸¡è€…ã«ç‰¹ã«é–¢ã‚ŠãŒã‚ã‚‹ã‚ã‘ã§ã‚‚ã‚ã‚Šã¾ã›ã‚“。 -### iOS/Androidã®ã‚¢ãƒ—リã¯ã‚ã‚Šã¾ã™ã‹ï¼Ÿ +### Apakah ada aplikasi untuk iOS / Android tersedia? å…¬å¼ã«ã¯ãã†ã„ã£ãŸOSã®ãƒã‚¤ãƒ†ã‚£ãƒ–アプリを開発ã—ã¦ã„ã¾ã›ã‚“ãŒã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティ製ã®ã‚¢ãƒ—リãŒã„ãã¤ã‹ã‚ã‚Šã¾ã™ã€‚ 詳ã—ãã¯[ã“ã¡ã‚‰](./apps)ã‚’ã”覧ãã ã•ã„。 ãŸã ã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティ製アプリã¯ã©ã†ã—ã¦ã‚‚機能ã¸ã®å¯¾å¿œãŒé…ã‚Œã¦ã—ã¾ã†ãŸã‚ã€ã¨ãã«æ‹˜ã‚ŠãŒãªã‘ã‚Œã°å…¬å¼ã®Webクライアントã®åˆ©ç”¨ã‚’ãŠã™ã™ã‚ã—ã¾ã™ã€‚ ãªãŠã€Misskeyã®Webクライアントã¯PWAã«å¯¾å¿œã—ã¦ã„ã‚‹ã®ã§ã€ãƒã‚¤ãƒ†ã‚£ãƒ–アプリã®ã‚ˆã†ã«å‹•ä½œã•ã›ã‚‹ã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚ 詳ã—ãã¯[ã“ã¡ã‚‰](todo)ã‚’ã”覧ãã ã•ã„。 -### Misskeyã®ãƒã‚´ã€ã‚¢ã‚¤ã‚³ãƒ³ã¯ã©ã“ã§å…¥æ‰‹ã§ãã¾ã™ã‹ï¼Ÿ -(準備ä¸) +### Dimana aku bisa mengunduh logo atau ikon Misskey? +(Sedang dipersiapkan) -### 時折目ã«ã™ã‚‹çŒ«è€³ã®å¯æ„›ã„女ã®åã¯ï¼Ÿ +### Siapa gadis imut bertelinga kucing yang sering muncul di Misskey? Misskeyã®å®ˆã‚Šç¥žã€è—ã¡ã‚ƒã‚“ã§ã™ã€‚アイï¾ï½¬ï¾ï½¶ï¾œï½²ï½²ï¾”ッター! <div class="info">â„¹ï¸ è—ã¡ã‚ƒã‚“ã«ã¤ã„ã¦ã¯<a href="https://xn--931a.moe/" target="_blank">ã“ã¡ã‚‰</a>ã§ã™ã€‚</div> diff --git a/src/docs/pt-PT/features/timeline.md b/src/docs/pt-PT/features/timeline.md index b9392fbdc880ae06e77cfac3ad5d89da7827da33..0951157033b94a59fd2132c065a8a8994d3fa7e4 100644 --- a/src/docs/pt-PT/features/timeline.md +++ b/src/docs/pt-PT/features/timeline.md @@ -1,31 +1,31 @@ -# Timeline +# Linha do tempo タイムラインã¯ã€[ノート](./note)ãŒæ™‚系列ã§è¡¨ç¤ºã•ã‚Œã‚‹æ©Ÿèƒ½ã§ã™ã€‚ タイムラインã«ã¯ä»¥ä¸‹ã§ç¤ºã™ç¨®é¡žãŒã‚ã‚Šã€ç¨®é¡žã«ã‚ˆã£ã¦è¡¨ç¤ºã•ã‚Œã‚‹ãƒŽãƒ¼ãƒˆã‚‚ç•°ãªã‚Šã¾ã™ã€‚ ãªãŠã€ã‚¿ã‚¤ãƒ ラインã®ç¨®é¡žã«ã‚ˆã£ã¦ã¯ã‚µãƒ¼ãƒãƒ¼ã«ã‚ˆã‚Šç„¡åŠ¹ã«ãªã£ã¦ã„ã‚‹å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ -## ホーム-自分ã®ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„るユーザーã®æŠ•ç¨¿ãŒæµã‚Œã¾ã™ã€‚HTLã¨ç•¥ã•ã‚Œã¾ã™ã€‚ +## InÃcio +Postagens de usuários que você segue serão mostradas.Abreviado como HTL. -## ãƒãƒ¼ã‚«ãƒ« +## Local å…¨ã¦ã®ãƒãƒ¼ã‚«ãƒ«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã€Œãƒ›ãƒ¼ãƒ ã€æŒ‡å®šã•ã‚Œã¦ã„ãªã„投稿ãŒæµã‚Œã¾ã™ã€‚LTLã¨ç•¥ã•ã‚Œã¾ã™ã€‚ -## ソーシャル +## Social 自分ã®ãƒ•ã‚©ãƒãƒ¼ã—ã¦ã„るユーザーã®æŠ•ç¨¿ã¨ã€å…¨ã¦ã®ãƒãƒ¼ã‚«ãƒ«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã€Œãƒ›ãƒ¼ãƒ ã€æŒ‡å®šã•ã‚Œã¦ã„ãªã„投稿ãŒæµã‚Œã¾ã™ã€‚STLã¨ç•¥ã•ã‚Œã¾ã™ã€‚ -## ã‚°ãƒãƒ¼ãƒãƒ« +## Global å…¨ã¦ã®ãƒãƒ¼ã‚«ãƒ«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã€Œãƒ›ãƒ¼ãƒ ã€æŒ‡å®šã•ã‚Œã¦ã„ãªã„投稿ã¨ã€ã‚µãƒ¼ãƒãƒ¼ã«å±Šã„ãŸå…¨ã¦ã®ãƒªãƒ¢ãƒ¼ãƒˆãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã€Œãƒ›ãƒ¼ãƒ ã€æŒ‡å®šã•ã‚Œã¦ã„ãªã„投稿ãŒæµã‚Œã¾ã™ã€‚GTLã¨ç•¥ã•ã‚Œã¾ã™ã€‚ -## 比較 -| ソース | | | Timeline | | | -| ------------ | ----- | --- | -------- | ----- | ----- | -| Usuários | 公開範囲 | ホーム| ãƒãƒ¼ã‚«ãƒ« | ソーシャル | ã‚°ãƒãƒ¼ãƒãƒ« | -| ãƒãƒ¼ã‚«ãƒ« (フォãƒãƒ¼) | 公開 | ✔ | ✔ | ✔ | ✔ | -| | ホーム| ✔ | | ✔ | | -| | フォãƒãƒ¯ãƒ¼ | ✔ | ✔ | ✔ | ✔ | -| リモート (フォãƒãƒ¼) | 公開 | ✔ | | ✔ | ✔ | -| | ホーム| ✔ | | ✔ | | -| | フォãƒãƒ¯ãƒ¼ | ✔ | | ✔ | ✔ | -| ãƒãƒ¼ã‚«ãƒ« (未フォãƒãƒ¼) | 公開 | | ✔ | ✔ | ✔ | -| | ホーム| | | | | -| | フォãƒãƒ¯ãƒ¼ | | | | | -| リモート (未フォãƒãƒ¼) | 公開 | | | | ✔ | -| | ホーム| | | | | -| | フォãƒãƒ¯ãƒ¼ | | | | | +## Comparação +| Fonte | | | Linha do tempo | | | +| --------------- | ------------ | ------ | -------------- | ------ | ------ | +| Usuários | Visibilidade | InÃcio | Local | Social | Global | +| Local (seguir) | Público | ✔ | ✔ | ✔ | ✔ | +| | InÃcio | ✔ | | ✔ | | +| | Seguidores | ✔ | ✔ | ✔ | ✔ | +| Remoto (seguir) | Público | ✔ | | ✔ | ✔ | +| | InÃcio | ✔ | | ✔ | | +| | Seguidores | ✔ | | ✔ | ✔ | +| ãƒãƒ¼ã‚«ãƒ« (未フォãƒãƒ¼) | Público | | ✔ | ✔ | ✔ | +| | InÃcio | | | | | +| | Seguidores | | | | | +| リモート (未フォãƒãƒ¼) | Público | | | | ✔ | +| | InÃcio | | | | | +| | Seguidores | | | | | diff --git a/src/docs/ru-RU/features/mfm.md b/src/docs/ru-RU/features/mfm.md index 5be2df4f304351b517fd18791f314253633356e3..3fb13a82b5be1d0b61772784fa72f6acd5c23289 100644 --- a/src/docs/ru-RU/features/mfm.md +++ b/src/docs/ru-RU/features/mfm.md @@ -1,12 +1,12 @@ # MFM -MFMã¯ã€Misskey Flavored Markdownã®ç•¥ã§ã€Misskeyã®æ§˜ã€…ãªå ´æ‰€ã§ä½¿ç”¨ã§ãる専用ã®ãƒžãƒ¼ã‚¯ã‚¢ãƒƒãƒ—言語ã§ã™ã€‚ MFMã§ä½¿ç”¨å¯èƒ½ãªæ§‹æ–‡ã¯[MFMãƒãƒ¼ãƒˆã‚·ãƒ¼ãƒˆ](/mfm-cheat-sheet)ã§ç¢ºèªã§ãã¾ã™ã€‚ +MFM, Misskey Flavored Markdown — Ñто Ñзык разметки, который можно иÑпользовать Ð´Ð»Ñ Ð¾Ñ„Ð¾Ñ€Ð¼Ð»ÐµÐ½Ð¸Ñ Ñ‚ÐµÐºÑта, и он доÑтупен много где на Ñайте. ЕÑÑ‚ÑŒ [шпагралка по MFM](/mfm-cheat-sheet), в которой можно поÑмотреть ÑинтакÑиÑ. -## MFMãŒä½¿ç”¨å¯èƒ½ãªå ´æ‰€ã®ä¾‹ -- ノート本文 -- CW注釈 -- ユーザーã®åå‰ -- ユーザーã®è‡ªå·±ç´¹ä»‹ +## Примеры Ñлучаев, где полезен MFM +- оформление заметок; +- предупреждение Ð´Ð»Ñ Ñодержимого не Ð´Ð»Ñ Ð²Ñех; +- имена пользователей; +- ÑамопредÑтавление. -## 開発者å‘ã‘æƒ…å ± -MFMã®ãƒ‘ーサー実装ã¯ãƒ©ã‚¤ãƒ–ラリã¨ã—ã¦å…¬é–‹ã•ã‚Œã¦ãŠã‚Šã€ç°¡å˜ã«ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«MFMを組ã¿è¾¼ã‚€ã“ã¨ãŒå¯èƒ½ã§ã™ã€‚ -- [misskey-dev/mfm.js](https://github.com/misskey-dev/mfm.js) - JavaScriptパーサー実装 +## Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð´Ð»Ñ Ñ€Ð°Ð·Ð°Ð±Ð¾Ñ‚Ñ‡Ð¸ÐºÐ¾Ð² +Ð ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ñ‚Ñ€Ð°Ð½ÑлÑтора MFM опубликована в виде библиотеки, так что его неÑложно вÑтроить в программу-клиент. +- Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ñ‚Ñ€Ð°Ð½ÑлÑтора MFM на Javascript: [misskey-dev/mfm.js](https://github.com/misskey-dev/mfm.js). diff --git a/src/docs/ru-RU/general/apps.md b/src/docs/ru-RU/general/apps.md index 1f4c85fe8f1f4ba69d15e657b56dd53fc8e7371a..2e30a092af5767203894bc39ab45a2a505ea347d 100644 --- a/src/docs/ru-RU/general/apps.md +++ b/src/docs/ru-RU/general/apps.md @@ -1,6 +1,6 @@ -# サードパーティアプリã®ãƒªã‚¹ãƒˆ -## クライアント -todo +# СпиÑок Ñторонних приложений +## Клиент +(пока не готово) -## 連æºã‚µãƒ¼ãƒ“ス -todo +## СвÑзанные Ñлужбы +(в процеÑÑе) diff --git a/src/docs/ru-RU/general/changelog.md b/src/docs/ru-RU/general/changelog.md index 6766a63b20a31572d0e00e60b05ea8fe03e108f0..30a4afd01365d6778e738c15d498d98fc1ae461c 100644 --- a/src/docs/ru-RU/general/changelog.md +++ b/src/docs/ru-RU/general/changelog.md @@ -1,5 +1,5 @@ -# æ›´æ–°å±¥æ´ -<div class="info">â„¹ï¸ ã“ã®ã‚µãƒ¼ãƒãƒ¼ã®æ›´æ–°å±¥æ´ã§ã™ã€‚Misskeyã®æœ€æ–°ã®ãƒªãƒªãƒ¼ã‚¹ã«ã¤ã„ã¦ã¯ã€<a href="https://github.com/misskey-dev/misskey/blob/master/CHANGELOG.md" target="_blank">GitHub</a>ã‚’ã”確èªãã ã•ã„。</div> +# Журнал изменений +<div class="info">â„¹ï¸ Ðтот журнал отражает только Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² поÑледней верÑии на данном Ñайте.ПоÑледние Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñмотрите в репозитории на <a href="https://github.com/misskey-dev/misskey/blob/master/CHANGELOG.md" target="_blank">GitHub</a>.</div> <!-- For translators: Do not edit these comments. --> <!--[CHANGELOG]--> diff --git a/src/docs/ru-RU/general/faq.md b/src/docs/ru-RU/general/faq.md index c272b2ad425a090129251eb3d4a6ad0dbe765ac0..0b3a1e272ce0d929e60e8d2c540c76b8bd76446f 100644 --- a/src/docs/ru-RU/general/faq.md +++ b/src/docs/ru-RU/general/faq.md @@ -1,28 +1,28 @@ -# よãã‚ã‚‹è³ªå• -ã“ã“ã§ã¯åˆ©ç”¨ä¸Šã®ã‚ˆãã‚る質å•ã«ã¤ã„ã¦æŽ²è¼‰ã—ã¦ã„ã¾ã™ã€‚ Misskeyã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆè‡ªä½“ã«ã¤ã„ã¦ã®ã‚ˆãã‚る質å•ã¯[ã“ã¡ã‚‰](./misskey)ã«æŽ²è¼‰ã•ã‚Œã¦ã„ã¾ã™ã€‚ +# ЧаÑто задаваемые вопроÑÑ‹ +ЗдеÑÑŒ Ñобраны чаÑтые вопроÑÑ‹ об иÑпользовании Misskey. ВопроÑÑ‹, каÑающиеÑÑ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð° как такового — на [отдельной Ñтранице](./misskey). -## iOS/Androidã®ã‚¢ãƒ—リã¯ã‚ã‚Šã¾ã™ã‹ï¼Ÿ -å…¬å¼ã«ã¯ãã†ã„ã£ãŸOSã®ãƒã‚¤ãƒ†ã‚£ãƒ–アプリを開発ã—ã¦ã„ã¾ã›ã‚“ãŒã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティ製ã®ã‚¢ãƒ—リãŒã„ãã¤ã‹ã‚ã‚Šã¾ã™ã€‚ 詳ã—ãã¯[ã“ã¡ã‚‰](./apps)ã‚’ã”覧ãã ã•ã„。 +## СущеÑтвуют ли Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ iOS или Android? +Мы не делаем официальных приложений Misskey Ð´Ð»Ñ ÐºÐ°ÐºÐ¾Ð¹-либо ОС, однако ÑущеÑтвуют Ñторонние программы. [ПоÑмотрите наш ÑпиÑок приложений, еÑли интереÑно.](./apps) -ãŸã ã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティ製アプリã¯ã©ã†ã—ã¦ã‚‚機能ã¸ã®å¯¾å¿œãŒé…ã‚Œã¦ã—ã¾ã†ãŸã‚ã€ã¨ãã«æ‹˜ã‚ŠãŒãªã‘ã‚Œã°å…¬å¼ã®Webクライアントã®åˆ©ç”¨ã‚’ãŠã™ã™ã‚ã—ã¾ã™ã€‚ ãªãŠã€Misskeyã®Webクライアントã¯PWAã«å¯¾å¿œã—ã¦ã„ã‚‹ã®ã§ã€ãƒã‚¤ãƒ†ã‚£ãƒ–アプリã®ã‚ˆã†ã«å‹•ä½œã•ã›ã‚‹ã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚ 詳ã—ãã¯[ã“ã¡ã‚‰](todo)ã‚’ã”覧ãã ã•ã„。 +Обратите внимание, что новые функции в Ñторонних приложениÑÑ… неизбежно будут поÑвлÑÑ‚ÑŒÑÑ Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð¹ задержкой, так что, еÑли Ñто Ð²Ð°Ñ Ð½Ðµ уÑтраивает, лучше пользуйтеÑÑŒ официальным веб-клиентом. Кроме того, веб-клиент Misskey полноÑтью ÑоответÑтвует требованиÑм технологии PWA, то еÑÑ‚ÑŒ, его можно заÑтавить работать практичеÑки так же, как обычное приложение. [По ÑÑылке еÑÑ‚ÑŒ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± Ñтом.](todo) -## Mastodonクライアントã§ãƒã‚°ã‚¤ãƒ³ã§ããªã„ã®ã§ã™ãŒï¼Ÿ -Misskeyã¯Mastodonã®APIã¨äº’æ›æ€§ãŒãªã„ãŸã‚ã€ä¸€éƒ¨ã‚’除ãMastodonクライアントã§Misskeyを利用ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 +## Можно ли войти в Misskey через клиент Mastodon? +Программный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Misskey за мелкими иÑключениÑми неÑовмеÑтим Ñ Ñ‚Ð°ÐºÐ¾Ð²Ñ‹Ð¼ у Mastodon, так что иÑпользовать клиенты Mastodon не получитÑÑ. -## ä»–ã®ã‚µãƒ¼ãƒãƒ¼ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’フォãƒãƒ¼ã™ã‚‹ã¨ãã¯ï¼Ÿ -メニューã‹ã‚‰æ¤œç´¢ã‚’é¸ã³ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼åをホスト込ã¿ã§å…¥åŠ›ã—ã¾ã™ã€‚例: `@syuilo@misskey.io` +## Как подпиÑатьÑÑ Ð½Ð° Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ Ñайта? +Выберите «ПоиÑк» из меню, и введите Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð²Ð¼ÐµÑте Ñ Ð´Ð¾Ð¼ÐµÐ½Ð½Ñ‹Ð¼ именем Ñайта.Ðапример, `@syuilo@misskey.io`. ## Renoteを削除ã™ã‚‹ã«ã¯ï¼Ÿ -Renoteã®æ™‚刻表示ã®éš£ã«ã‚る「...ã€ã‚’押ã—ã€ã€ŒRenote解除ã€ã‚’é¸æŠžã—ã¾ã™ã€‚ Renoteã«ã¤ã„ã¦ã¯[ã“ã¡ã‚‰](../features/note)ã‚’ã”確èªãã ã•ã„。 +Ðажмите три точки «•••» около даты репоÑта, и выберите «Отмена репоÑта». [Про репоÑÑ‚Ñ‹ можно почитать по ÑÑылке.](../features/note) -## URLã®ãƒ—レビューを表示ã•ã›ãŸããªã„ -MFMã«ã¯ã€ãã®URLã®ãƒ—レビューを無効ã«ã™ã‚‹æ§‹æ–‡ãŒã‚ã‚Šã¾ã™ã€‚詳細ã¯[MFMãƒãƒ¼ãƒˆã‚·ãƒ¼ãƒˆ](/mfm-cheat-sheet)ã‚’ã”確èªãã ã•ã„。 +## Что Ñделать, чтобы не отображалÑÑ Ð¿Ñ€ÐµÐ´Ð²Ð°Ñ€Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ð¹ проÑмотр ÑÑылки? +Можно убрать предварительной проÑмотр поÑредÑтвом MFM.Об Ñтом еÑÑ‚ÑŒ в [шпаргалке по MFM](/mfm-cheat-sheet). -## カスタム絵文å—ã‚’è¿½åŠ ã—ãŸã„ -é‹å–¶è€…ã®ã¿ãŒã‚«ã‚¹ã‚¿ãƒ 絵文å—ã‚’è¿½åŠ ã€ç·¨é›†ã€å‰Šé™¤ã§ãã¾ã™ã€‚ãれらを希望ã™ã‚‹å ´åˆã¯é‹å–¶è€…ã«ä¾é ¼ã—ã¦ãã ã•ã„。 +## Хочу новые, ÑобÑтвенные Ñмодзи! +Добавить Ñмодзи может только админиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ñервера, как и менÑÑ‚ÑŒ и удалÑÑ‚ÑŒ их.С такими пожеланиÑми обращайтеÑÑŒ к админиÑтраторам Ñвоего Ñайта. -## Botを開発ã—ãŸã„ -Misskey APIを利用ã—ã¦Botã®é–‹ç™ºãŒå¯èƒ½ã§ã™ã€‚[ã“ã¡ã‚‰](../advanced/develop-bot)ã‚’ã”確èªãã ã•ã„。 +## Желаю разрабатывать бота +Программный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Misskey позволÑет делать ботов.[ЕÑÑ‚ÑŒ Ð¾Ñ‚Ð´ÐµÐ»ÑŒÐ½Ð°Ñ Ñтраница Ð´Ð»Ñ Ñ‚ÐµÑ…, кому Ñто интереÑно](../advanced/develop-bot). -## ノートã®ç¿»è¨³æ©Ÿèƒ½ã¯ã©ã®ã‚µãƒ¼ãƒ“スを使用ã—ã¦ã„ã¾ã™ã‹ï¼Ÿ -[DeepL](https://www.deepl.com/)を使用ã—ã¦ã„ã¾ã™ã€‚ +## Какой ÑÐµÑ€Ð²Ð¸Ñ Ð¸ÑпользуетÑÑ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ²Ð¾Ð´Ð° заметок? +Ð”Ð»Ñ Ñтого применÑетÑÑ [DeepL](https://www.deepl.com/). diff --git a/src/docs/ru-RU/general/glossary.md b/src/docs/ru-RU/general/glossary.md index c87e622a020a256e0321fccaec4901feb9f9e99c..1525e971a3579bb618874aa566671b3f8e24a22b 100644 --- a/src/docs/ru-RU/general/glossary.md +++ b/src/docs/ru-RU/general/glossary.md @@ -1,89 +1,89 @@ -# 用語集 -Misskeyã«é–¢ã™ã‚‹ç”¨èªžé›†ã§ã™ã€‚ +# ГлоÑÑарий +Ðто — Ñловарь Ñпециальных терминов, иÑпользуемых в Misskey. ## ActivityPub -(èªã¿: ã‚ãã¦ãƒã³ã¦ãƒã±ã¶) 分散型を実ç¾ã™ã‚‹ãŸã‚ã«ç”¨ã„られるプãƒãƒˆã‚³ãƒ«(仕様)。ã“ã®ãƒ—ãƒãƒˆã‚³ãƒ«ã«å‰‡ã£ã¦ã‚µãƒ¼ãƒãƒ¼åŒå£«é€šä¿¡ã‚’è¡Œã†ã“ã¨ã§ã€é€£åˆãŒè¡Œã‚ã‚Œã€Fediverseã‚’å½¢æˆã—ã¦ã„ã¾ã™ã€‚ +/ÑктиÌвити-паÌб/ протокол, иÑпользуемый Ð´Ð»Ñ Ð´ÐµÑ†ÐµÐ½Ñ‚Ñ€Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ Misskey.ВзаимодейÑтвием Ñерверов по Ñтому протоколу реализуетÑÑ Ñ„ÐµÐ´ÐµÑ€Ð°Ñ†Ð¸Ñ, за Ñчёт чего и образуетÑÑ Ð¤ÐµÐ´Ð¸Ð²ÐµÑ€Ñ (Fediverse). ## AiScript -(èªã¿: ã‚ã„ã™ãã‚Šã·ã¨) Misskey上ã§ä½¿ç”¨ã§ãるプãƒã‚°ãƒ©ãƒŸãƒ³ã‚°è¨€èªžã§ã™ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../advanced/aiscript) +/ай-Ñкрипт/ Ñзык программированиÑ, доÑтупный в Misskey.[ПодробноÑти — по ÑÑылке.](../advanced/aiscript) ## API -(èªã¿: ãˆãƒ¼ã´ãƒ¼ã‚ã„) Misskeyã®ã‚µãƒ¼ãƒãƒ¼ãŒå…¬é–‹ã—ã¦ã„ã‚‹ã€ãƒ—ãƒã‚°ãƒ©ãƒ ã‹ã‚‰Misskeyを扱ã†ãŸã‚ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ãƒ¼ã‚¹ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../advanced/api) +/Ñй-пи-ай/ интерфейÑ, поÑредÑтвом которого клиентÑÐºÐ°Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð° может взаимодейÑтвовать Ñ Ñервером Misskey.[Смотрите подробноÑти здеÑÑŒ.](../advanced/api) -## Bot -(èªã¿: ã¼ã£ã¨) プãƒã‚°ãƒ©ãƒ ã«ã‚ˆã£ã¦å‹•ä½œã—ã¦ã„るアカウント。 +## Бот +ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ, которой управлÑет программа. ## CW -(èªã¿: ã“ã‚“ã¦ã‚“ã¤ã‚ーã«ã‚“ã) Contents Warningã®ç•¥ã€‚ノートã®å†…容をã€æ“作ãªã—ã«ã¯è¡¨ç¤ºã—ãªã„よã†ã«ã§ãる機能。主ã«é•·å¤§ãªå†…å®¹ã‚’éš ã™ãŸã‚ã‚„ã€ãƒã‚¿ãƒãƒ¬é˜²æ¢ãªã©ã«ä½¿ã‚ã‚Œã¾ã™ã€‚ +(Content Warning) Ñокращение Ð´Ð»Ñ Ñ„Ñ€Ð°Ð·Ñ‹ «предупреждение о Ñодержимом не Ð´Ð»Ñ Ð²Ñех».ФункциÑ, ÑÐºÑ€Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ñодержимое заметки до тех пор, пока пользователь вручную не откроет его.ПрименÑетÑÑ Ð² оÑновном чтобы Ñвернуть длинный текÑÑ‚ или не показывать Ñпойлер (неожиданный поворот Ñюжета). ## Fediverse -(èªã¿: ãµã‡ã§ãƒã°ãƒ¼ã™) Misskeyã‚’å«ã‚€æ§˜ã€…ãªåˆ†æ•£åž‹ã‚½ãƒ•ãƒˆã‚¦ã‚§ã‚¢ã®ã‚µãƒ¼ãƒãƒ¼ã§æ§‹æˆã•ã‚ŒãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã€‚ +/федивеÌÑ€Ñ/ множеÑтво Ñерверов, в том чиÑле на Misskey, которые взаимодейÑтвуют друг Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð¼, и тем Ñамым образуют единую раÑпределённую Ñеть. -## GTL -ã‚°ãƒãƒ¼ãƒãƒ«ã‚¿ã‚¤ãƒ ライン(Global TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +## ВЛ (GTL) +Ñокращение Ð´Ð»Ñ Â«Ð²ÑÐµÐ¾Ð±Ñ‰Ð°Ñ Ð»ÐµÐ½Ñ‚Ð°Â».[Про ленты Ñмотрите ÑÑылку.](../features/timeline) -## HTL -ホームタイムライン(Home TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +## ДЛ (HTL) +Ñокращение Ð´Ð»Ñ Â«Ð´Ð¾Ð¼Ð°ÑˆÐ½ÑÑ Ð»ÐµÐ½Ñ‚Ð°Â».[Про ленты Ñмотрите ÑÑылку.](../features/timeline) -## LTL -ãƒãƒ¼ã‚«ãƒ«ã‚¿ã‚¤ãƒ ライン(Local TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +## МЛ (LTL) +Ñокращение Ð´Ð»Ñ Â«Ð¼ÐµÑÑ‚Ð½Ð°Ñ Ð»ÐµÐ½Ñ‚Ð°Â»[Про ленты Ñмотрите ÑÑылку.](../features/timeline) ## MFM -(èªã¿: ãˆã‚€ãˆãµãˆã‚€) Misskey Flavored Markdownã®ç•¥ã§ã€Misskey上ã§ä½¿ç”¨ã§ãるマークアップ言語ã§ã™ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/mfm) +/Ñм-ÑÑ„-Ñм/ Ñзык разметки, иÑпользуемый в Misskey (Misskey Flavored Markdown)[См. ÑÑылку.](../features/mfm) -## NSFW -(èªã¿: ã®ã£ã¨ã›ãƒ¼ãµãµã‰ãƒ¼ã‚ーã) Not Safe For Workã®ç•¥ã€‚ç”»åƒã‚’「閲覧注æ„ã€æ‰±ã„ã«ã—ã€æ“作ãªã—ã«ã¯è¡¨ç¤ºã—ãªã„よã†ã«ã™ã‚‹ã“ã¨ãŒã§ãる機能。 +## Содержимое не Ð´Ð»Ñ Ð²Ñех (NSFW) +то, что может быть неприемлемо Ð´Ð»Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… людей.Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¿Ð¾Ð¼ÐµÑ‚ÐºÐ¸ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ ÐºÐ°Ðº «не Ð´Ð»Ñ Ð²Ñех» и ÑÐºÑ€Ñ‹Ñ‚Ð¸Ñ ÐµÐ³Ð¾ до тех пор, пока пользователь Ñам не откроет его. ## РепоÑÑ‚ -(èªã¿: ã‚Šã®ãƒ¼ã¨) æ—¢ã«ã‚るノートを引用ã€ã‚‚ã—ãã¯ãã®ãƒŽãƒ¼ãƒˆã‚’æ–°ã—ã„ノートã¨ã—ã¦å…±æœ‰ã™ã‚‹è¡Œç‚ºã€ã¾ãŸãã‚Œã«ã‚ˆã£ã¦ä½œæˆã•ã‚ŒãŸãƒŽãƒ¼ãƒˆã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/note) +Цитирование в неизменном виде уже ÑущеÑтвующей заметки, Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð½Ð°Ñ Ð¿ÑƒÐ±Ð»Ð¸ÐºÐ°Ñ†Ð¸Ñ.[См. ÑÑылку.](../features/note) -## STL -ソーシャルタイムライン(Social TimeLine)ã®ç•¥ã€‚タイムラインã®è©³ç´°ã¯[ã“ã¡ã‚‰ã€‚](../features/timeline) +## СЛ (STL) +Ñокращение Ð´Ð»Ñ Â«ÑÐ¾Ñ†Ð¸Ð°Ð»ÑŒÐ½Ð°Ñ Ð»ÐµÐ½Ñ‚Ð°Â».[Про ленты Ñмотрите ÑÑылку.](../features/timeline) -## è— -(èªã¿: ã‚ã„) Misskeyã®çœ‹æ¿å¨˜(å…¬å¼ã‚ャラクター)ã§ã™ã€‚ +## Ðй +официальный маÑкот Misskey. -## アクティブユーザー -インスタンスã«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’作ã£ã¦ã„るユーザーã®ã†ã¡ã€ç¾åœ¨ã‚‚実際ã«ã‚µãƒ¼ãƒ“スを利用ã—ã¦ã„るユーザーã®ã“ã¨ã€‚ +## Ðктивные пользователи +пользователи, пользующиеÑÑ Ñвоей учётной запиÑью по наÑтоÑщее времÑ. ## ИнÑÑ‚Ð°Ð½Ñ -todo +(в планах) ## Ðмодзи Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -サーãƒãƒ¼ã§ç”¨æ„ã•ã‚ŒãŸçµµæ–‡å—。カスタム絵文å—ã§ã¯ãªã„通常ã®çµµæ–‡å—ã¯ã€ŒUnicode絵文å—ã€ã¨åŒºåˆ¥ã—ã¦å‘¼ã°ã‚Œã‚‹ã€‚ +Ñмодзи, предоÑтавлÑемые вашим Ñервером.Ðмодзи, что не предоÑтавлÑÑŽÑ‚ÑÑ Ñервером, но доÑтупны по умолчанию, называютÑÑ Â«ÑŽÐ½Ð¸ÐºÐ¾Ð´Ð½Ñ‹Ðµ Ñмодзи». -## コントãƒãƒ¼ãƒ«ãƒ‘ãƒãƒ« -インスタンスã®è¨å®šç”»é¢ã®ã“ã¨ã€‚ +## Панель ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ +Ñтраница наÑтройки инÑтанÑа. ## Сервер -todo +(в планах) ## Заглушить -ノートをパブリックãªå…¬é–‹ç¯„囲ã§æŠ•ç¨¿ã§ããªãã•ã‚Œã¦ã„る状態。モデレーターã®åˆ¤æ–ã§ãƒ¦ãƒ¼ã‚¶ãƒ¼ã”ã¨ã«è¨å®šã•ã‚Œã¾ã™ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/silence) +Ñкрыть заметки из общих лент.ДейÑтвие может применÑÑ‚ÑŒÑÑ Ð¼Ð¾Ð´ÐµÑ€Ð°Ñ‚Ð¾Ñ€Ð°Ð¼Ð¸ в отношении отдельных пользователей.[См. ÑÑылку.](../features/silence) ## Очередь заданий -アクティビティé…é€ãªã©ã‚’é †ç•ªã«è¡Œã†ãŸã‚ã®ã‚·ã‚¹ãƒ†ãƒ 。 +СредÑтво поÑледовательной транÑлÑции активноÑти на другие Ñервера. ## Заморозить -アカウントãŒä½¿ç”¨ä¸å¯ã«è¨å®šã•ã‚Œã¦ã„る状態。 +Ñделать учётную запиÑÑŒ недоÑтупной Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ. ## ДиÑк -Misskeyã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’管ç†ã™ã‚‹æ©Ÿèƒ½ã€‚詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/drive) +ÑредÑтво Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ и Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² пользователей.[См. ÑÑылку.](../features/drive) -## Заметки -Misskeyã«æŠ•ç¨¿ã•ã‚Œã‚‹ã€æ–‡ç« ã€ãƒ•ã‚¡ã‚¤ãƒ«ã€ã‚¢ãƒ³ã‚±ãƒ¼ãƒˆãªã©ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãるコンテンツ。詳細ã¯[ã“ã¡ã‚‰ã€‚](../features/note) +## Заметка +Сообщение, могущее Ñодержать текÑÑ‚, изображениÑ, опроÑÑ‹ и прочее, которое публикуетÑÑ Ð² Misskey.[См. ÑÑылку.](../features/note) -## ミスã‚スト -Misskeyを使ã†äººã®ã“ã¨ã€‚ +## МиÑкиец +пользователь Misskey. ## Модератор -スパムã®å‡çµãŠã‚ˆã³ã‚µã‚¤ãƒ¬ãƒ³ã‚¹ã‚„ä¸é©åˆ‡ãªæŠ•ç¨¿ã®å‰Šé™¤ãªã©ã€ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£é‹å–¶ã«é–¢ã™ã‚‹æ¨©é™ã‚’æŒã¤ãƒ¦ãƒ¼ã‚¶ãƒ¼ã€‚ +Пользователь Ñ Ð¿Ñ€Ð°Ð²Ð°Ð¼Ð¸ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑообщеÑтвом, который может, например, удалÑÑ‚ÑŒ недопуÑтимые публикации, или замораживать учётные запиÑи, Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… раÑÑылаетÑÑ Ñпам. -## С других Ñайтов -他サーãƒãƒ¼ã®ã“ã¨ã‚’指ã—ã¾ã™ã€‚リモートユーザーã¨ã„ã£ãŸã‚ˆã†ã«æŽ¥é 辞ã¨ã—ã¦ã‚‚使ã‚ã‚Œã¾ã™ã€‚ãƒãƒ¼ã‚«ãƒ«ã®é€†ã§ã™ã€‚ +## Удалённый, Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ Ñайта +то, что передано на данный Ñервер Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾.ИÑпользуетÑÑ Ñ‚Ð°ÐºÐ¶Ðµ как определение Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… Ñлов: например «пользователь Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ Ñайта».ПротивоположноÑÑ‚ÑŒ «меÑтному». ## Ð¤ÐµÐ´ÐµÑ€Ð°Ñ†Ð¸Ñ -サーãƒãƒ¼ä¸Šã§ä½œæˆã•ã‚ŒãŸæƒ…å ±ãŒä»–ã®ã‚µãƒ¼ãƒãƒ¼ã«ä¼ã‚ã‚‹ã“ã¨ã€‚ +ÑвÑзь Ñервера Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼Ð¸, позволÑÑŽÑ‰Ð°Ñ Ñ‚Ñ€Ð°Ð½Ñлировать активноÑÑ‚ÑŒ между ними. -## МеÑÑ‚Ð½Ð°Ñ -自サーãƒãƒ¼ã®ã“ã¨ã‚’指ã—ã¾ã™ã€‚ãƒãƒ¼ã‚«ãƒ«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã€ãƒãƒ¼ã‚«ãƒ«ã‚¿ã‚¤ãƒ ラインã¨ã„ã£ãŸã‚ˆã†ã«æŽ¥é 辞ã¨ã—ã¦ã‚‚使ã‚ã‚Œã¾ã™ã€‚リモートã®é€†ã§ã™ã€‚ +## МеÑтный, Ñ Ñтого Ñайта +то, что отноÑитÑÑ Ðº тому же Ñерверу.ИÑпользуетÑÑ Ñ‚Ð°ÐºÐ¶Ðµ как определение Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… Ñлов, например, «пользователь Ñ Ñтого Ñайта».ПротивоположноÑÑ‚ÑŒ «удалённому». diff --git a/src/docs/ru-RU/general/links.md b/src/docs/ru-RU/general/links.md index c893801b49c8afca6a7ebd857ca4e0b80296dfc6..3b55b66abe3d9669362ade52a16378fb1fb9e8f4 100644 --- a/src/docs/ru-RU/general/links.md +++ b/src/docs/ru-RU/general/links.md @@ -1,12 +1,12 @@ -# リンク集 +# Полезные ÑÑылки -## Webサイト -- [Official Discord](https://discord.gg/Wp8gVStHW3) - Misskeyå…¬å¼Discordサーãƒãƒ¼ -- [Misskey Forum](https://forum.misskey.io/) - Misskeyã«é–¢ã™ã‚‹è©±é¡Œã‚’扱ã†ãƒ•ã‚©ãƒ¼ãƒ©ãƒ +## Веб-Ñайты +- [Официальный Discord](https://discord.gg/Wp8gVStHW3) — официальный Discord-Ñервер Misskey. +- [Форум Misskey](https://forum.misskey.io/) — форум Ð´Ð»Ñ Ð¾Ð±ÑÑƒÐ¶Ð´ÐµÐ½Ð¸Ñ Ñ€Ð°Ð·Ð½Ñ‹Ñ… вопроÑов и Misskey. ## Учётные запиÑи -- [@repo@misskey.io](https://misskey.io/@repo) - Misskeyã®ãƒªãƒã‚¸ãƒˆãƒªã®æ›´æ–°ã‚’投稿ã™ã‚‹bot +- [@repo@misskey.io](https://misskey.io/@repo) — бот, публикующий информацию об обновлениÑÑ… в репозитории Misskey. -## ライブラリ -- [misskey-dev/misskey.js](https://github.com/misskey-dev/misskey.js) - JavaScriptã®Misskey SDK -- [misskey-dev/mfm.js](https://github.com/misskey-dev/mfm.js) - JavaScriptã®MFMパーサー実装 +## Библиотеки +- [misskey-dev/misskey.js](https://github.com/misskey-dev/misskey.js) — набор ÑредÑтв разработки на Javascript Ð´Ð»Ñ Misskey. +- [misskey-dev/mfm.js](https://github.com/misskey-dev/mfm.js) — Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ñ‚Ñ€Ð°Ð½ÑлÑтора MFM на Javascript. diff --git a/src/docs/ru-RU/general/misskey.md b/src/docs/ru-RU/general/misskey.md index f2426925db786f67cca95b82768c64d418ac6231..8b8c10b978d4ef8904484c3d8dabbd4cf73814e6 100644 --- a/src/docs/ru-RU/general/misskey.md +++ b/src/docs/ru-RU/general/misskey.md @@ -91,7 +91,7 @@ Misskey — некоммерчеÑкий проект, он беÑплатен ### Какой узел выбрать? -[По ÑÑылке еÑÑ‚ÑŒ (неполный) ÑпиÑок узлов.](https://join.misskey.page/ja-JP/instances) У какого-то узла может быть заÑвлена объединÑÑŽÑ‰Ð°Ñ Ð²Ñех тематика (какое-то кино или хобби, например). ЕÑли такое Ð²Ð°Ñ Ð¸Ð½Ñ‚ÐµÑ€ÐµÑует, приÑоединитьÑÑ Ð±ÑƒÐ´ÐµÑ‚ неплохим выбором. Кроме того, Ð´Ð»Ñ Ð²Ð°Ñ Ð¼Ð¾Ð³ÑƒÑ‚ быть важны размер Ñервера, коллектив, Ñтрана, Ñзык, или доверÑете ли вы его хозÑевам. Какого-то оÑобого «официального» Ñервера у Misskey нет.Ко вÑему прочему вы можете Ñоздать Ñвой ÑобÑтвенный узел на личном Ñервере. +[По ÑÑылке еÑÑ‚ÑŒ (неполный) ÑпиÑок узлов.](https://join.misskey.page/ja-JP/instances) Ðекоторые узлы поÑвÑщены определённой тематике, например, какому-нибудь кино, или хобби. ЕÑли такое Ð²Ð°Ñ Ð¸Ð½Ñ‚ÐµÑ€ÐµÑует, Ñтот узел будет неплохим выбором. Кроме того, Ð´Ð»Ñ Ð²Ð°Ñ Ð¼Ð¾Ð³ÑƒÑ‚ быть важны размер Ñервера, коллектив, Ñтрана, Ñзык, или доверÑете ли вы его хозÑевам. Какого-то оÑобого «официального» Ñервера у Misskey нет.Ко вÑему прочему вы можете Ñоздать Ñвой ÑобÑтвенный узел на личном Ñервере. По большому Ñчёту не важно, какой узел вы Ñебе выберете. ÐезавиÑимо от Ñтого вы будете на ÑвÑзи Ñо вÑеми оÑтальными узлами Ñети. @@ -99,34 +99,34 @@ Misskey — некоммерчеÑкий проект, он беÑплатен ### Как поднÑÑ‚ÑŒ Ñвой ÑобÑтвенный Ñервер? -Misskeyサーãƒãƒ¼ã®ä½œæˆã«èˆˆå‘³ã‚’æŒã£ã¦ã„ãŸã ãã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚ 2021å¹´ç¾åœ¨ã€Misskeyã®ãƒ›ã‚¹ãƒ†ã‚£ãƒ³ã‚°ã‚µãƒ¼ãƒ“スã¯å˜åœ¨ã—ãªã„ãŸã‚ã€ã‚µãƒ¼ãƒãƒ¼ã®ä½œæˆã«ã¯ã‚る程度ã®çŸ¥è˜ãŒå¿…è¦ã§ã™ã€‚ サーãƒãƒ¼ã®ä½œæˆæ–¹æ³•ã«ã¤ã„ã¦ã¯[ã“ã¡ã‚‰](todo)ã‚’ã”覧ãã ã•ã„。 +Ð”Ð»Ñ Ð½Ð°Ñ‡Ð°Ð»Ð° хотим выразить признательноÑÑ‚ÑŒ за ваш Ð¸Ð½Ñ‚ÐµÑ€ÐµÑ Ðº Ñозданию Ñвоего Ñервера. Ðа текущий 2021 год не ÑущеÑтвует Ñпециальных провайдеров Ð´Ð»Ñ Ñ…Ð¾Ñтинга Misskey, так что Ð´Ð»Ñ ÐµÐ³Ð¾ уÑтановки понадобитÑÑ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ðµ умение. [Узнать, как поднÑÑ‚ÑŒ Ñвой Ñервер, можете по ÑÑылке.](todo) ### Какие технологии иÑпользует Misskey? -Misskeyã¯é–‹ç™ºãŒé€²ã‚€ã«ã¤ã‚Œä½¿ç”¨ã™ã‚‹æŠ€è¡“も大ãã変ã‚ã£ã¦ãã¾ã—ãŸã€‚開発当åˆã¯MySQL + PHP + jQueryã¨ã„ã£ãŸæ§‹æˆã§ã—ãŸãŒã€ç¾åœ¨ã¯ä»¥ä¸‹ã®ã‚ˆã†ã«ãªã£ã¦ã„ã¾ã™ã€‚ +По ходу Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Misskey иÑпользуемые технологии уÑпели значительно поменÑÑ‚ÑŒÑÑ.Ð’ начале иÑпользовалаÑÑŒ ÑвÑзка MySQL + PHP + jQuery, но теперь иÑпользуетÑÑ Ñледующее: -- ПО на Ñтороне Ñервера: Node.js -- СиÑтема ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð±Ð°Ð·Ð¾Ð¹ данных: PostgreSQL, Redis -- Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ: Vue.js -- Язык программированиÑ: TypeScript +- ПО на Ñтороне Ñервера: Node.js; +- ÑиÑтема ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð±Ð°Ð·Ð¾Ð¹ данных: PostgreSQL, Redis; +- Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ: Vue.js; +- Ñзык программированиÑ: TypeScript; -ã¾ãŸã€MFMã‚„AiScriptãªã©ã®ã€Misskeyã‹ã‚‰æ´¾ç”Ÿã—ã¦ç‹¬è‡ªã®æŠ€è¡“も開発ã—ã¦ã„ã¾ã™ã€‚ +и, кроме, того, технологии, родившиеÑÑ Ð² Ñамом Misskey, как например AiScript. ### Рне клон ли Ñто Mastodon? -Ðет.Misskeyã¯Mastodonã‚„ãã®ä»–ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¨ã¯å…¨ã別ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã§ã™ã€‚ 開発ã«é–¢ã—ã¦ã‚‚ã€Misskeyã®æ–¹ãŒæ˜”ã‹ã‚‰é–‹ç™ºã•ã‚Œã¦ã„ã¾ã™ã€‚ãŸã ã—ã€åˆ†æ•£åž‹ã«ãªã£ãŸã®ã¯Mastodonã®ç™»å ´ã‚ˆã‚Šå¾Œã§ã™ã€‚ åŒã˜ActivityPubã¨ã„ã†åˆ†æ•£ã®ãŸã‚ã®ãƒ—ãƒãƒˆã‚³ãƒ«ã‚’実装ã—ã¦ã„ã‚‹ã¨ã„ã†ç‚¹ä»¥å¤–ã€ä¸¡è€…ã«ç‰¹ã«é–¢ã‚ŠãŒã‚ã‚‹ã‚ã‘ã§ã‚‚ã‚ã‚Šã¾ã›ã‚“。 +Ðет. Проект Misskey не имеет никакого Ð¾Ñ‚Ð½Ð¾ÑˆÐµÐ½Ð¸Ñ Ðº Mastodon и ему подобным проектам. Что каÑаетÑÑ Ñ€Ð°Ð·Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ¸, то она велаÑÑŒ уже давно.Однако децентрализованным он Ñтал уже поÑле поÑÐ²Ð»ÐµÐ½Ð¸Ñ Mastodon. Помимо того, что в обоих иÑпользуетÑÑ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð» децентрализации ActivityPub, между Ñтим проектами нет ничего общего. ### СущеÑтвуют ли Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ iOS или Android? -å…¬å¼ã«ã¯ãã†ã„ã£ãŸOSã®ãƒã‚¤ãƒ†ã‚£ãƒ–アプリを開発ã—ã¦ã„ã¾ã›ã‚“ãŒã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティ製ã®ã‚¢ãƒ—リãŒã„ãã¤ã‹ã‚ã‚Šã¾ã™ã€‚ 詳ã—ãã¯[ã“ã¡ã‚‰](./apps)ã‚’ã”覧ãã ã•ã„。 +Мы не делаем официальных приложений Misskey Ð´Ð»Ñ ÐºÐ°ÐºÐ¾Ð¹-либо ОС, однако ÑущеÑтвуют Ñторонние программы. [ПоÑмотрите наш ÑпиÑок приложений, еÑли интереÑно.](./apps) -ãŸã ã€ã‚µãƒ¼ãƒ‰ãƒ‘ーティ製アプリã¯ã©ã†ã—ã¦ã‚‚機能ã¸ã®å¯¾å¿œãŒé…ã‚Œã¦ã—ã¾ã†ãŸã‚ã€ã¨ãã«æ‹˜ã‚ŠãŒãªã‘ã‚Œã°å…¬å¼ã®Webクライアントã®åˆ©ç”¨ã‚’ãŠã™ã™ã‚ã—ã¾ã™ã€‚ ãªãŠã€Misskeyã®Webクライアントã¯PWAã«å¯¾å¿œã—ã¦ã„ã‚‹ã®ã§ã€ãƒã‚¤ãƒ†ã‚£ãƒ–アプリã®ã‚ˆã†ã«å‹•ä½œã•ã›ã‚‹ã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚ 詳ã—ãã¯[ã“ã¡ã‚‰](todo)ã‚’ã”覧ãã ã•ã„。 +Обратите внимание, что новые функции в Ñторонних приложениÑÑ… неизбежно будут поÑвлÑÑ‚ÑŒÑÑ Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð¹ задержкой, так что, еÑли Ñто Ð²Ð°Ñ Ð½Ðµ уÑтраивает, лучше пользуйтеÑÑŒ официальным веб-клиентом. Кроме того, веб-клиент Misskey полноÑтью ÑоответÑтвует требованиÑм технологии PWA, то еÑÑ‚ÑŒ, его можно заÑтавить работать практичеÑки так же, как обычное приложение. [По ÑÑылке еÑÑ‚ÑŒ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± Ñтом.](todo) diff --git a/src/docs/ru-RU/general/report-issue.md b/src/docs/ru-RU/general/report-issue.md index 63527e32af59a111a31f3d333e94c3aa08d5df72..ac9a5272f1f2e5d68e4846307efb0d732870f2e8 100644 --- a/src/docs/ru-RU/general/report-issue.md +++ b/src/docs/ru-RU/general/report-issue.md @@ -1,8 +1,8 @@ -# ä¸å…·åˆã®å ±å‘Š -ä¸å…·åˆã¨æ€ã‚れる状æ³ã«éé‡ã—ãŸã¨ãã¯ã€ã¾ãš[トラブルシューティング](./troubleshooting)ã‚’ã”一èªãã ã•ã„。 ãã‚Œã§ã‚‚å•é¡ŒãŒè§£æ±ºã—ãªã„ã¨ãã¯ã€ä»¥ä¸‹ã®æƒ…å ±ã‚’å«ã‚ã¦[フォーラム](https://forum.misskey.io/)ã«æŠ•ç¨¿ã—ã¦ãã ã•ã„。 投稿ã™ã‚‹ã“ã¨ã§ã€è§£æ±ºç–ãŒè¦‹ã¤ã‹ã£ãŸã‚Šã€ä¸å…·åˆã¨åˆ¤æ–ã•ã‚Œã‚Œã°é–‹ç™ºãƒãƒ¼ãƒ ã«ã‚ˆã£ã¦ä¿®æ£ãŒè¡Œã‚ã‚Œã¾ã™ã€‚ +# Как Ñообщить об ошибке +ЕÑли вы ÑтолкнулиÑÑŒ Ñ Ñ‡ÐµÐ¼-то, похожим на программную ошибку, Ñначала заглÑните на Ñтраницу [«Разрешение проблем»](./troubleshooting), возможно, там еÑÑ‚ÑŒ еÑÑ‚ÑŒ решение. ЕÑли поÑле Ñтого не Ñмогли ÑправитьÑÑ Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ð¾Ð¹ ÑамоÑтоÑтельно, напишите об Ñтом на [Форуме](https://forum.misskey.io/), включив ÑведениÑ, перечиÑленные ниже. Ðе иÑключено, что там вам помогут найти решение. ЕÑли же Ñто и правда ошибка, команда разработчиков об Ñтом узнает и Ñможет её иÑправить. -## å«ã‚ã‚‹æƒ…å ± -- Misskeyã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³([æƒ…å ±ãƒšãƒ¼ã‚¸](/about)ã§ç¢ºèªã§ãã¾ã™) -- ãŠä½¿ã„ã®ãƒ–ラウザã®ç¨®é¡žã¨ãƒãƒ¼ã‚¸ãƒ§ãƒ³ -- ãŠä½¿ã„ã®OSã®ç¨®é¡žã¨ãƒãƒ¼ã‚¸ãƒ§ãƒ³ -- å•é¡Œã®å†ç¾æ‰‹é † +## О чём пиÑать в Ñообщении +- верÑию Misskey (её можно на Ñтранице [«О Misskey»](/about)); +- наименование и верÑию вашего браузера; +- наименование и верÑию вашей операционной ÑиÑтемы; +- поÑледовательноÑÑ‚ÑŒ дейÑтвий, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¿Ñ€Ð¸Ð²ÐµÐ»Ð° к опиÑываемой вами проблеме. diff --git a/src/docs/ru-RU/general/troubleshooting.md b/src/docs/ru-RU/general/troubleshooting.md index e325e4e944f366915c9394e9dcc5cd0f7453c5cf..bbe13f35fa3da93c6ce04d5a2767949befd08044 100644 --- a/src/docs/ru-RU/general/troubleshooting.md +++ b/src/docs/ru-RU/general/troubleshooting.md @@ -1,40 +1,40 @@ # Разрешение проблем -<div class="info">â„¹ï¸ <a href="./faq">よãã‚る質å•</a>ã‚‚åˆã‚ã›ã¦ãŠå½¹ç«‹ã¦ãã ã•ã„。</div> +<div class="info">â„¹ï¸ <a href="./faq">ЧаÑто задаваемые вопроÑÑ‹</a> также могут быть полезны.</div> -å•é¡ŒãŒç™ºç”Ÿã—ãŸã¨ãã¯ã€ã¾ãšã“ã¡ã‚‰ã‚’ã”確èªãã ã•ã„。 該当ã™ã‚‹é …ç›®ãŒç„¡ã„ã€ã‚‚ã—ãã¯æ‰‹é †ã‚’試ã—ã¦ã‚‚効果ãŒãªã„å ´åˆã¯ã€ã‚µãƒ¼ãƒãƒ¼ã®ç®¡ç†è€…ã«é€£çµ¡ã™ã‚‹ã‹[ä¸å…·åˆã‚’å ±å‘Š](./report-issue)ã—ã¦ãã ã•ã„。 +При возникновении каких-либо проблем, Ñначала поищите решение здеÑÑŒ. ЕÑли не нашли подходÑщего пункта, или Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ изложенного здеÑÑŒ не удалоÑÑŒ решить вопроÑ, обратитеÑÑŒ к админиÑтрации Ñвоего узла или [Ñообщите об ошибке разработчикам](./report-issue). -## クライアントãŒèµ·å‹•ã—ãªã„ -ã»ã¨ã‚“ã©ã®å ´åˆã€ãŠä½¿ã„ã®ãƒ–ラウザã¾ãŸã¯OSã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒå¤ã„ã“ã¨ãŒåŽŸå› ã§ã™ã€‚ ブラウザãŠã‚ˆã³OSã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’最新ã®ã‚‚ã®ã«æ›´æ–°ã—ã¦ã‹ã‚‰ã€å†åº¦è©¦ã—ã¦ã¿ã¦ãã ã•ã„。 +## Клиент не запуÑкаетÑÑ +Ð’ большинÑтве Ñлучаев виной Ñтому оказываетÑÑ Ñлишком ÑÑ‚Ð°Ñ€Ð°Ñ Ð²ÐµÑ€ÑÐ¸Ñ Ð±Ñ€Ð°ÑƒÐ·ÐµÑ€Ð° или ОС. Попробуйте обновить браузер и ОС до поÑледней верÑии и попытайтеÑÑŒ Ñнова. -ã“ã‚Œã¯ç¨€ã§ã™ãŒã€ãã‚Œã§ã‚‚èµ·å‹•ã—ãªã„å ´åˆã¯ã€ã‚ャッシュãŒåŽŸå› ã®å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ブラウザã®ã‚ャッシュをクリアã—ã¦ã€å†åº¦è©¦ã—ã¦ã¿ã¦ãã ã•ã„。 +Иногда клиент не запуÑкаетÑÑ Ð¸Ð·-за проблемы Ñ ÐºÑшем.ОчиÑтите кÑш браузера и попробуйте ещё раз. -## ページãŒèªã¿è¾¼ã‚ãªã„ -クライアントãŒèµ·å‹•ã™ã‚‹ã‚‚ã®ã®ãƒšãƒ¼ã‚¸ãŒèªã¿è¾¼ã‚ãªã„ã¨ã„ã†ã‚¨ãƒ©ãƒ¼ãŒå‡ºã‚‹å ´åˆã¯ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«å•é¡ŒãŒãªã„ã‹ç¢ºèªã—ã¦ãã ã•ã„。ã¾ãŸã€ã‚µãƒ¼ãƒãƒ¼ãŒãƒ€ã‚¦ãƒ³ã—ã¦ã„ãªã„ã‹ç¢ºèªã—ã¦ãã ã•ã„。 +## Содержимое Ñтраницы не загружаетÑÑ +ЕÑли клиент запуÑкаетÑÑ, но выдаёт Ñообщение, что Ñодержимое не может быть загружено, проверьте Ñетевое Ñоединение на наличие проблем.Также проверьте, что нужный Ñервер не отключен, например, на обÑлуживание. -ã“ã‚Œã¯ç¨€ã§ã™ãŒã€ã‚ャッシュãŒåŽŸå› ã®å ´åˆãŒã‚ã‚Šã¾ã™ã€‚ブラウザã®ã‚ャッシュをクリアã—ã¦ã€å†åº¦è©¦ã—ã¦ã¿ã¦ãã ã•ã„。 +Ð’ редких ÑлучаÑÑ… может быть дело в кÑше.ОчиÑтите кÑш браузера и попробуйте ещё раз. -ã¾ã å•é¡ŒãŒã‚ã‚‹å ´åˆã¯ã€ã‚µãƒ¼ãƒãƒ¼ã®å•é¡Œã¨æ€ã‚れるã®ã§ã‚µãƒ¼ãƒãƒ¼ã®ç®¡ç†è€…ã«é€£çµ¡ã—ã¦ãã ã•ã„。 +ОÑтальные проблемы в оÑновном ÑвÑзаны Ñ Ñерверной чаÑтью, так что, еÑли напиÑанное не помогло, поÑтарайтеÑÑŒ ÑвÑзатьÑÑ Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтрацией Ñервера. -## クライアントã®å‹•ä½œãŒé…ã„ -以下を試ã—ã¦ã¿ã¦ãã ã•ã„: +## Клиент тормозит +Попробуйте Ñледующее: -- クライアントè¨å®šã§ã€ŒUIã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’減らã™ã€ã‚’有効ã«ã™ã‚‹ -- クライアントè¨å®šã§ã€Œãƒ¢ãƒ¼ãƒ€ãƒ«ã«ã¼ã‹ã—効果を使用ã€ã‚’無効ã«ã™ã‚‹ -- ãŠä½¿ã„ã®ãƒ–ラウザã®è¨å®šã§ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ã‚¢ã‚¯ã‚»ãƒ©ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’有効ã«ã™ã‚‹ -- ãŠä½¿ã„ã®ãƒ‡ãƒã‚¤ã‚¹ã®ã‚¹ãƒšãƒƒã‚¯ã‚’上ã’ã‚‹ +- включите в наÑтройках клиента пункт «Уменьшить анимацию в пользовательÑком интерфейÑе»; +- выключите пункт «Размывка под формой поверх вÑего» там же; +- включите в наÑтройках браузера аппаратное уÑкорение графики; +- проведите апгрейд. -## UIã®ä¸€éƒ¨ã®è¡¨ç¤ºãŒãŠã‹ã—ã„(背景ãŒé€æ˜Žã«ãªã£ã¦ã„ã‚‹ç‰) -アップデートã«ã‚ˆã‚ŠUIã®æ”¹ä¿®ãŒè¡Œã‚ã‚ŒãŸã¨ãã«ã€ãƒ†ãƒ¼ãƒžã®ã‚ャッシュシステムã®å½±éŸ¿ã§ãã®ã‚ˆã†ãªè¡¨ç¤ºã«ãªã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚ クライアントã®è¨å®šã®ã€Œã‚ャッシュをクリアã€ã™ã‚‹ã¨ç›´ã‚Šã¾ã™ã€‚ -<div class="warn">âš ï¸ ã€Œã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ã€ã‚ャッシュクリアã§ã™ã€‚「ブラウザã®ã€ã‚ャッシュクリアã¯è¡Œã‚ãªã„ã§ãã ã•ã„。</div> +## Ðекоторые Ñлементы интерфейÑа выглÑдÑÑ‚ Ñтранно и неудобно (например, фон Ñтал прозрачным) +Такое может проиÑходить из-за кÑÑˆÐ¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ‚ÐµÐ¼, когда проиÑходит изменение интерфейÑа при обновлении. ИÑправить Ñто можно нажав на кнопку «ОчиÑтить кÑш» в наÑтройках клиента. +<div class="warn">âš ï¸ ÐžÑ‡Ð¸Ñ‰Ð°Ñ‚ÑŒ нужно именно кÑш клиента!ОчиÑтка кÑша браузера тут не поможет. Ðе нужно делать Ñтого.</div> -## 通知やアンテナç‰ã®ç‚¹æ»…ãŒæ¶ˆãˆãªã„ -点滅ã¯ã€æœªèªã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ãŒã‚ã‚‹ã“ã¨ã‚’示ã—ã¦ã„ã¾ã™ã€‚通常点滅ãŒæ¶ˆãˆãªã„å ´åˆã¯ã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’é¡ã‚‹ã¨æœªèªãªã‚³ãƒ³ãƒ†ãƒ³ãƒ„ãŒæ®‹ã£ã¦ã„ã¾ã™ã€‚ ã™ã¹ã¦æ—¢èªã«ã—ãŸã¨æ€ã‚れるã®ã«ã€ãã‚Œã§ã‚‚ãªãŠç‚¹æ»…ãŒç¶šãå ´åˆ(ãŠãらãä¸å…·åˆã¨æ€ã‚ã‚Œã¾ã™)ã¯è¨å®šã‹ã‚‰å¼·åˆ¶çš„ã«ã™ã¹ã¦æ—¢èªæ‰±ã„ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ +## Мигающий индикатор при «Ðнтенне» не пропадает. +Мигающий индикатор означает, что здеÑÑŒ еÑÑ‚ÑŒ что-то ещё не прочитанное.Обычно такое проиÑходит, когда непрочитанное уползает далеко из-за большого количеÑтва новых заметок. ЕÑли вы уверены, что вÑÑ‘ прочитали, но значок вÑÑ‘ ещё на меÑте (возможно, из-за ошибки), то можете Ñвно пометить вÑÑ‘ как прочитанное в наÑтройках. -## RenoteãŒã§ããªã„ -フォãƒãƒ¯ãƒ¼é™å®šã®ãƒŽãƒ¼ãƒˆã¯Renoteã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 +## ÐедоÑтупен репоÑÑ‚. +ÐÐµÐ»ÑŒÐ·Ñ Ñ€ÐµÐ¿Ð¾Ñтить заметки, предназначенные только Ð´Ð»Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñчиков. -## UI上ã§ç‰¹å®šã®è¦ç´ ãŒè¡¨ç¤ºã•ã‚Œãªã„ -広告ブãƒãƒƒã‚«ãƒ¼ã‚’使用ã—ã¦ã„ã‚‹ã¨ãã®ã‚ˆã†ãªä¸å…·åˆãŒç™ºç”Ÿã™ã‚‹ã“ã¨ãŒã‚ã‚Šã¾ã™ã€‚Misskeyã§ã¯ã‚ªãƒ•ã«ã—ã¦ã”利用ãã ã•ã„。 +## Ðекоторые нужные Ñлементы интерфейÑа не отображаютÑÑ +Проблемы вроде Ñтой могут проÑвлÑÑ‚ÑŒÑÑ Ð¿Ñ€Ð¸ иÑпользовании блокировщика рекламы.Отключите его при иÑпользовании Misskey. -## UI上ã§æœªç¿»è¨³ã®éƒ¨åˆ†ãŒã‚ã‚‹ -ã»ã¨ã‚“ã©ã®å ´åˆã€å˜ã«ç¿»è¨³ãŒé–“ã«åˆã£ã¦ã„ãªã„ã ã‘ã§ã€ä¸å…·åˆã§ã¯ã‚ã‚Šã¾ã›ã‚“。翻訳ãŒçµ‚ã‚ã‚‹ã¾ã§ãŠå¾…ã¡ãã ã•ã„。 [翻訳ã«å‚åŠ ](./misskey)ã—ã¦ã„ãŸã ãã“ã¨ã‚‚å¯èƒ½ã§ã™ã€‚ +## Ðекоторые Ñлементы интерфейÑа на иноÑтранном Ñзыке +Обычно Ñто не Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°, а проÑто перевод интерфейÑа отÑтаёт от текущей верÑии.Подождите, пока переводчики Ñделают Ñвоё дело. Или [помогите переводу](./misskey) Ñами. diff --git a/src/docs/zh-CN/advanced/reversi-bot.md b/src/docs/zh-CN/advanced/reversi-bot.md index c89ec0cbe3000537dc5712ba380c2bde5e2ab365..86637b775e642b8eb2d6de0ae9bbfa2bc5f1c182 100644 --- a/src/docs/zh-CN/advanced/reversi-bot.md +++ b/src/docs/zh-CN/advanced/reversi-bot.md @@ -1,4 +1,4 @@ -# Misskeyリãƒãƒ¼ã‚·Botã®é–‹ç™º +# Misskeyé»‘ç™½æ£‹æœºå™¨äººå¼€å‘ Misskeyã®ãƒªãƒãƒ¼ã‚·æ©Ÿèƒ½ã«å¯¾å¿œã—ãŸBotã®é–‹ç™ºæ–¹æ³•ã‚’ã“ã“ã«è¨˜ã—ã¾ã™ã€‚ 1. `games/reversi`ストリームã«ä»¥ä¸‹ã®ãƒ‘ラメータを付ã‘ã¦æŽ¥ç¶šã™ã‚‹: diff --git a/src/docs/zh-CN/features/keyboard-shortcut.md b/src/docs/zh-CN/features/keyboard-shortcut.md index 5279eb9bd4c6a6f8c45e6459501002103e8c90ed..b555e34f406d4da1f59a5982a98b2838b7c10606 100644 --- a/src/docs/zh-CN/features/keyboard-shortcut.md +++ b/src/docs/zh-CN/features/keyboard-shortcut.md @@ -31,7 +31,7 @@ <tr><td><kbd class="key">F</kbd>, <kbd class="key">B</kbd></td><td>ãŠæ°—ã«å…¥ã‚Šã«ç™»éŒ²</td><td><b>F</b>avorite, <b>B</b>ookmark</td></tr> <tr><td><kbd class="key">Del</kbd>, <kbd class="group"><kbd class="key">Ctrl</kbd> + <kbd class="key">D</kbd></kbd></td><td>投稿を削除</td><td><b>D</b>elete</tr> <tr><td><kbd class="key">M</kbd>, <kbd class="key">O</kbd></td><td>投稿ã«å¯¾ã™ã‚‹ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚’é–‹ã</td><td><b>M</b>ore, <b>O</b>ther</td></tr> - <tr><td><kbd class="key">S</kbd></td><td>CWã§éš ã•ã‚ŒãŸéƒ¨åˆ†ã‚’表示 or éš ã™</td><td><b>S</b>how, <b>S</b>ee</td></tr> + <tr><td><kbd class="key">S</kbd></td><td>显示或éšè—CWçš„éšè—部分</td><td><b>S</b>how, <b>S</b>ee</td></tr> <tr><td><kbd class="key">Esc</kbd></td><td>フォーカスを外ã™</td><td>-</td></tr> </tbody> </table> diff --git a/src/docs/zh-CN/features/mfm.md b/src/docs/zh-CN/features/mfm.md index 5be2df4f304351b517fd18791f314253633356e3..d42350edf01fd8daccaf4178ebf63596c3c7e8bd 100644 --- a/src/docs/zh-CN/features/mfm.md +++ b/src/docs/zh-CN/features/mfm.md @@ -3,7 +3,7 @@ MFMã¯ã€Misskey Flavored Markdownã®ç•¥ã§ã€Misskeyã®æ§˜ã€…ãªå ´æ‰€ã§ä½¿ç”¨ ## MFMãŒä½¿ç”¨å¯èƒ½ãªå ´æ‰€ã®ä¾‹ - ノート本文 -- CW注釈 +- CW注释 - ユーザーã®åå‰ - ユーザーã®è‡ªå·±ç´¹ä»‹ diff --git a/src/docs/zh-CN/features/note.md b/src/docs/zh-CN/features/note.md index 9030cd384d708be8d1cdb2c6cc7c2ccfd8d3a0ac..b3ed79c8ea85d5860f06e55060c4fae1f9e83288 100644 --- a/src/docs/zh-CN/features/note.md +++ b/src/docs/zh-CN/features/note.md @@ -8,7 +8,7 @@ ノートを[ãŠæ°—ã«å…¥ã‚Š](./favorite)登録ã™ã‚‹ã“ã¨ã§ã€å¾Œã§ç°¡å˜ã«è¦‹è¿”ã™ã“ã¨ãŒã§ãã¾ã™ã€‚ ## ノートを作æˆã™ã‚‹ -ノートを作æˆã™ã‚‹ã«ã¯ã€ç”»é¢ä¸Šã«ã‚る鉛ç†ãƒžãƒ¼ã‚¯ã®ãƒœã‚¿ãƒ³ã‚’押ã—ã¦ã€ä½œæˆãƒ•ã‚©ãƒ¼ãƒ ã‚’é–‹ãã¾ã™ã€‚作æˆãƒ•ã‚©ãƒ¼ãƒ ã«å†…容を入力ã—ã€ã€ŒãƒŽãƒ¼ãƒˆã€ãƒœã‚¿ãƒ³ã‚’押ã™ã“ã¨ã§ãƒŽãƒ¼ãƒˆãŒä½œæˆã•ã‚Œã¾ã™ã€‚ ノートã«ã¯ã€ç”»åƒã€å‹•ç”»ãªã©ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚„ã€[アンケート](./poll)を添付ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã¾ãŸã€æœ¬æ–‡ä¸ã«ã¯[MFM](./mfm)ãŒä½¿ç”¨ã§ãã€[メンション](./mention)ã‚„[ãƒãƒƒã‚·ãƒ¥ã‚¿ã‚°](./hashtag)ã‚’å«ã‚ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ ä»–ã«ã‚‚ã€CWや公開範囲ã¨ã„ã£ãŸè¨å®šã‚‚è¡Œãˆã¾ã™(詳細ã¯å¾Œè¿°)。 +ノートを作æˆã™ã‚‹ã«ã¯ã€ç”»é¢ä¸Šã«ã‚る鉛ç†ãƒžãƒ¼ã‚¯ã®ãƒœã‚¿ãƒ³ã‚’押ã—ã¦ã€ä½œæˆãƒ•ã‚©ãƒ¼ãƒ ã‚’é–‹ãã¾ã™ã€‚作æˆãƒ•ã‚©ãƒ¼ãƒ ã«å†…容を入力ã—ã€ã€ŒãƒŽãƒ¼ãƒˆã€ãƒœã‚¿ãƒ³ã‚’押ã™ã“ã¨ã§ãƒŽãƒ¼ãƒˆãŒä½œæˆã•ã‚Œã¾ã™ã€‚ ノートã«ã¯ã€ç”»åƒã€å‹•ç”»ãªã©ä»»æ„ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚„ã€[アンケート](./poll)を添付ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚您还å¯ä»¥é€šè¿‡åœ¨æ–‡æœ¬ä¸ä½¿ç”¨[MFM](./mfm)æ¥å°†[æåŠ](./mention)å’Œ[Hashæ ‡ç¾](./hashtag)包å«åœ¨å†…。 å¦å¤–还å¯ä»¥è®¾ç½®CWçš„å¯è§èŒƒå›´ç‰(详细说明è§åŽæ–‡)。 <div class="info">â„¹ï¸ ã‚³ãƒ³ãƒ”ãƒ¥ãƒ¼ã‚¿ãƒ¼ã®ã‚¯ãƒªãƒƒãƒ—ボードã«ç”»åƒãƒ‡ãƒ¼ã‚¿ãŒã‚る状態ã§ã€ãƒ•ã‚©ãƒ¼ãƒ 内ã®ãƒ†ã‚ストボックスã«ãƒšãƒ¼ã‚¹ãƒˆã™ã‚‹ã¨ãã®ç”»åƒã‚’添付ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚</div> <div class="info">â„¹ï¸ ãƒ†ã‚ストボックス内ã§<kbd class="key">Ctrl + Enter</kbd>を押ã™ã“ã¨ã§ã‚‚投稿ã§ãã¾ã™ã€‚</div> diff --git a/src/misc/download-url.ts b/src/misc/download-url.ts index 43e061c71595af2b8b197f9a528b9d45ec1681d6..8a8640a8cd9f97c22cd657ed08c51120da7c58e4 100644 --- a/src/misc/download-url.ts +++ b/src/misc/download-url.ts @@ -1,13 +1,13 @@ import * as fs from 'fs'; import * as stream from 'stream'; import * as util from 'util'; -import { URL } from 'url'; -import fetch from 'node-fetch'; -import { getAgentByUrl } from './fetch'; -import { AbortController } from 'abort-controller'; +import got, * as Got from 'got'; +import { httpAgent, httpsAgent } from './fetch'; import config from '@/config/index'; import * as chalk from 'chalk'; import Logger from '@/services/logger'; +import * as IPCIDR from 'ip-cidr'; +const PrivateIp = require('private-ip'); const pipeline = util.promisify(stream.pipeline); @@ -15,26 +15,72 @@ export async function downloadUrl(url: string, path: string) { const logger = new Logger('download'); logger.info(`Downloading ${chalk.cyan(url)} ...`); - const controller = new AbortController(); - setTimeout(() => { - controller.abort(); - }, 60 * 1000); - const response = await fetch(new URL(url).href, { + const timeout = 30 * 1000; + const operationTimeout = 60 * 1000; + const maxSize = config.maxFileSize || 262144000; + + const req = got.stream(url, { headers: { 'User-Agent': config.userAgent }, - timeout: 10 * 1000, - signal: controller.signal, - agent: getAgentByUrl, - }); + timeout: { + lookup: timeout, + connect: timeout, + secureConnect: timeout, + socket: timeout, // read timeout + response: timeout, + send: timeout, + request: operationTimeout, // whole operation timeout + }, + agent: { + http: httpAgent, + https: httpsAgent, + }, + retry: 0, + }).on('response', (res: Got.Response) => { + if ((process.env.NODE_ENV === 'production' || process.env.NODE_ENV === 'test') && !config.proxy && res.ip) { + if (isPrivateIp(res.ip)) { + logger.warn(`Blocked address: ${res.ip}`); + req.destroy(); + } + } - if (!response.ok) { - logger.error(`Got ${response.status} (${url})`); - throw response.status; - } + const contentLength = res.headers['content-length']; + if (contentLength != null) { + const size = Number(contentLength); + if (size > maxSize) { + logger.warn(`maxSize exceeded (${size} > ${maxSize}) on response`); + req.destroy(); + } + } + }).on('downloadProgress', (progress: Got.Progress) => { + if (progress.transferred > maxSize) { + logger.warn(`maxSize exceeded (${progress.transferred} > ${maxSize}) on downloadProgress`); + req.destroy(); + } + }).on('error', (e: any) => { + if (e.name === 'HTTPError') { + const statusCode = e.response?.statusCode; + const statusMessage = e.response?.statusMessage; + e.name = `StatusError`; + e.statusCode = statusCode; + e.message = `${statusCode} ${statusMessage}`; + } + }); - await pipeline(response.body, fs.createWriteStream(path)); + await pipeline(req, fs.createWriteStream(path)); logger.succ(`Download finished: ${chalk.cyan(url)}`); } + +function isPrivateIp(ip: string) { + for (const net of config.allowedPrivateNetworks || []) { + const cidr = new IPCIDR(net); + if (cidr.contains(ip)) { + return false; + } + } + + return PrivateIp(ip); +} diff --git a/src/server/api/index.ts b/src/server/api/index.ts index 55083261ee40b39614db3165e8ef1c6510038ae3..db35fdf9e07df1f4659b3c92e5170c7ffc460f93 100644 --- a/src/server/api/index.ts +++ b/src/server/api/index.ts @@ -16,6 +16,7 @@ import discord from './service/discord'; import github from './service/github'; import twitter from './service/twitter'; import { Instances, AccessTokens, Users } from '@/models/index'; +import config from '@/config'; // Init app const app = new Koa(); @@ -37,7 +38,11 @@ app.use(bodyParser({ // Init multer instance const upload = multer({ - storage: multer.diskStorage({}) + storage: multer.diskStorage({}), + limits: { + fileSize: config.maxFileSize || 262144000, + files: 1, + } }); // Init router diff --git a/src/server/file/send-drive-file.ts b/src/server/file/send-drive-file.ts index c455de6447d3753941aef7e4f60d374dfff92ccd..a73164ed21c79d0cdfe3a8fb68869dffcdec7a62 100644 --- a/src/server/file/send-drive-file.ts +++ b/src/server/file/send-drive-file.ts @@ -83,10 +83,10 @@ export default async function(ctx: Koa.Context) { ctx.set('Content-Type', image.type); ctx.set('Cache-Control', 'max-age=31536000, immutable'); } catch (e) { - serverLogger.error(e); + serverLogger.error(e.statusCode); - if (typeof e == 'number' && e >= 400 && e < 500) { - ctx.status = e; + if (typeof e.statusCode === 'number' && e.statusCode >= 400 && e.statusCode < 500) { + ctx.status = e.statusCode; ctx.set('Cache-Control', 'max-age=86400'); } else { ctx.status = 500; diff --git a/src/server/proxy/proxy-media.ts b/src/server/proxy/proxy-media.ts index fb38a5c07badf7ec570960fb21d90ce983fc2531..3bd65dfe67ee1fe62674b01c3b26fb2738a7f599 100644 --- a/src/server/proxy/proxy-media.ts +++ b/src/server/proxy/proxy-media.ts @@ -39,8 +39,8 @@ export async function proxyMedia(ctx: Koa.Context) { } catch (e) { serverLogger.error(e); - if (typeof e == 'number' && e >= 400 && e < 500) { - ctx.status = e; + if (typeof e.statusCode === 'number' && e.statusCode >= 400 && e.statusCode < 500) { + ctx.status = e.statusCode; } else { ctx.status = 500; } diff --git a/webpack.config.ts b/webpack.config.ts index 296813caa0131ba5e238d9bfd9002a6e105c8aa1..e9f3aa6e4788ea3cf3fd683207f708ddc9fbedba 100644 --- a/webpack.config.ts +++ b/webpack.config.ts @@ -164,6 +164,7 @@ module.exports = { ], alias: { '@client': __dirname + '/src/client', + '@lib': __dirname + '/lib', '@': __dirname + '/src', 'const.styl': __dirname + '/src/client/const.styl' } diff --git a/yarn.lock b/yarn.lock index ccfee76557afa287306dab066a448d94c003f572..8151dfe089e0ae6831d45e280cd76115ab338d14 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5742,6 +5742,27 @@ ioredis@^4.27.0: redis-parser "^3.0.0" standard-as-callback "^2.1.0" +ip-address@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-7.1.0.tgz#4a9c699e75b51cbeb18b38de8ed216efa1a490c5" + integrity sha512-V9pWC/VJf2lsXqP7IWJ+pe3P1/HCYGBMZrrnT62niLGjAfCbeiwXMUxaeHvnVlz19O27pvXP4azs+Pj/A0x+SQ== + dependencies: + jsbn "1.1.0" + sprintf-js "1.1.2" + +ip-cidr@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/ip-cidr/-/ip-cidr-3.0.4.tgz#a915c47e00f47ea8d5f8ed662ea6161471c44375" + integrity sha512-pKNiqmBlTvEkhaLAa3+FOmYSY0/jjADVxxjA3NbujZZTT8mjLI90Q+6mwg6kd0fNm0RuAOkWJ1u1a/ETmlrPNQ== + dependencies: + ip-address "^7.1.0" + jsbn "^1.1.0" + +ip-regex@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-4.3.0.tgz#687275ab0f57fa76978ff8f4dddc8a23d5990db5" + integrity sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q== + ip@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" @@ -6238,6 +6259,11 @@ js-yaml@~3.7.0: argparse "^1.0.7" esprima "^2.6.0" +jsbn@1.1.0, jsbn@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" + integrity sha1-sBMHyym2GKHtJux56RH4A8TaAEA= + jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" @@ -7440,6 +7466,11 @@ nested-property@4.0.0: resolved "https://registry.yarnpkg.com/nested-property/-/nested-property-4.0.0.tgz#a67b5a31991e701e03cdbaa6453bc5b1011bb88d" integrity sha512-yFehXNWRs4cM0+dz7QxCd06hTbWbSkV0ISsqBfkntU6TOY4Qm3Q88fRRLOddkGh2Qq6dZvnKVAahfhjcUvLnyA== +netmask@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" + integrity sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg== + next-line@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/next-line/-/next-line-1.1.0.tgz#fcae57853052b6a9bae8208e40dd7d3c2d304603" @@ -8861,6 +8892,14 @@ prismjs@1.24.1: resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.24.1.tgz#c4d7895c4d6500289482fa8936d9cdd192684036" integrity sha512-mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow== +private-ip@2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/private-ip/-/private-ip-2.2.1.tgz#4fe167d04e12eca5c67cdcbd3224e86b38c79253" + integrity sha512-jN1WT/br/VNW9xEcwHr6DjtOKxQ5qOIqmh7o+co2TWgq56pZJw99iO3UT1tWdfgsQiyK9FqG4ji3ykwpjFqITA== + dependencies: + ip-regex "^4.3.0" + netmask "^2.0.2" + probe-image-size@7.2.1: version "7.2.1" resolved "https://registry.yarnpkg.com/probe-image-size/-/probe-image-size-7.2.1.tgz#df0c924e67e247bc94f8fcb0fad7f0081061fc44" @@ -10103,6 +10142,11 @@ split@^1.0.0: dependencies: through "2" +sprintf-js@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" + integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug== + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"