From 167bec488b9f1054003bbfd30b2a9a3f74061102 Mon Sep 17 00:00:00 2001 From: YuevUwU <96368079+YuevUwU@users.noreply.github.com> Date: Sat, 11 May 2024 15:01:11 +0800 Subject: [PATCH] feat: Update en translations (#2) * feat: generate en.po from Poedit 3.4.2 * feat: modify headers of en.po * feat: translate en.po with 3 PDFs by PingTKP * feat: more translated string or don't need to translate * fix: remove extra space * feat: merge part of translation by sjfhsjfh * fix: quotation mark & header & fuzzy * feat: add more shader translation * fix: uniform use of period * feat: PingTKP updated translations * feat: Respack, Chart feature, Built-in shaders, some UML expression * feat: Video unlock, UML Operator * fix(en): typos * fix(en): other minor changes * feat(en): match latest TeamFlos branch --------- Co-authored-by: PingTKP <75591605+PingTKP@users.noreply.github.com> --- po/en.po | 1237 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 631 insertions(+), 606 deletions(-) diff --git a/po/en.po b/po/en.po index dcea276..5bea76b 100644 --- a/po/en.po +++ b/po/en.po @@ -1,9 +1,10 @@ msgid "" msgstr "" "Project-Id-Version: Phira Documents\n" -"POT-Creation-Date: 2024-02-28T17:18:27+08:00\n" -"PO-Revision-Date: 2024-03-14 16:31+0800\n" -"Last-Translator: sjfhsjfh \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-03-01T19:25:15+08:00\n" +"PO-Revision-Date: 2024-03-24 14:44+0800\n" +"Last-Translator: PingTKP <75591605+PingTKP@users.noreply.github.com>\n" "Language-Team: English\n" "Language: en\n" "MIME-Version: 1.0\n" @@ -23,7 +24,7 @@ msgstr "Introduction" #: src/SUMMARY.md:5 src/respack/index.md:1 msgid "资源包" -msgstr "ResPack" +msgstr "Respack" #: src/SUMMARY.md:7 src/feature/index.md:1 msgid "谱面特性" @@ -36,7 +37,7 @@ msgstr "Effects" #: src/SUMMARY.md:11 src/feature/effect/index.md:72 #: src/feature/effect/builtin/index.md:1 msgid "内置着色器" -msgstr "Built-in shader" +msgstr "Built-in shaders" #: src/SUMMARY.md:13 src/feature/effect/builtin/chromatic.md:1 msgid "`chromatic`" @@ -80,7 +81,7 @@ msgstr "`vignette`" #: src/SUMMARY.md:24 src/feature/effect/custom-shader.md:1 msgid "自行编写着色器" -msgstr "Write your own shader" +msgstr "Writing your own shaders" #: src/SUMMARY.md:26 src/feature/video/index.md:1 msgid "视频背景" @@ -92,7 +93,7 @@ msgstr "Unlock animation" #: src/SUMMARY.md:30 msgid "UML文档" -msgstr "UMLdocumentation" +msgstr "UML documentation" #: src/SUMMARY.md:32 src/uml/syntax/index.md:1 msgid "语法" @@ -188,13 +189,12 @@ msgstr "Phira-docs Instruction" #: src/index.md:3 msgid "" -"这里是 Phira 相关的文档说明, 可前往 [GitHub](https://github.com/TeamFlos/" -"phira-docs) 提出问题或者贡献文档, 其他语言请通过修改 url 来访问, 如 [`/en/`]" -"(./en/)" +"这里是 Phira 相关的文档说明, 可前往 [GitHub](https://github.com/TeamFlos/phira-" +"docs) 提出问题或者贡献文档, 其他语言请通过修改 url 来访问, 如 [`/en/`](./en/)" msgstr "" -"This is the instruction of Phira-related documentation, visit [GitHub]" -"(https://github.com/TeamFlos/phira-docs) to submit feedbacks or contribute, " -"read in other language by editing the url, for example [`/en/`](./en/)" +"This is the instruction of Phira-related documentation, visit [GitHub](https://" +"github.com/TeamFlos/phira-docs) to submit feedbacks or contribute, read in other " +"language by editing the url, for example [`/en/`](./en/)" #: src/index.md:5 msgid "如果希望提供翻译, 请参考" @@ -202,41 +202,43 @@ msgstr "If you’re willing to provide translation, please refer to" #: src/index.md:7 msgid "" -"[mdbook-i18n-helpers 的指引](https://github.com/google/mdbook-i18n-helpers/" -"blob/main/i18n-helpers/USAGE.md)" +"[mdbook-i18n-helpers 的指引](https://github.com/google/mdbook-i18n-helpers/blob/" +"main/i18n-helpers/USAGE.md)" msgstr "" "[Instructions in mdbook-i18n-helpers](https://github.com/google/mdbook-i18n-" "helpers/blob/main/i18n-helpers/USAGE.md)" #: src/index.md:8 msgid "" -"[comprehensive-rust 的示例](https://github.com/google/comprehensive-rust/" -"blob/main/TRANSLATIONS.md)" +"[comprehensive-rust 的示例](https://github.com/google/comprehensive-rust/blob/main/" +"TRANSLATIONS.md)" msgstr "" -"[Examples in comprehensive-rust](https://github.com/google/comprehensive-" -"rust/blob/main/TRANSLATIONS.md)" +"[Examples in comprehensive-rust](https://github.com/google/comprehensive-rust/blob/" +"main/TRANSLATIONS.md)" #: src/index.md:10 msgid "" "在 PR 内提供相应的翻译后 `.po` 文件, 并在 `.github/mdbook.yml` 的 `env` 的 " -"`LANGUAGES` 中添加对应的语言, 语言代码见 [ISO 639](https://en.wikipedia.org/" -"wiki/List_of_ISO_639_language_codes)" +"`LANGUAGES` 中添加对应的语言, 语言代码见 [ISO 639](https://en.wikipedia.org/wiki/" +"List_of_ISO_639_language_codes)" msgstr "" -"Provide the translated `.po` file in the Pull Request, and add the " -"corresponding language code in `LANGUAGES` in `env` in the `.github/mdbook." -"yml` file, visit [ISO 639](https://en.wikipedia.org/wiki/" -"List_of_ISO_639_language_codes) for language code reference" +"Provide the translated `.po` file in the Pull Request, and add the corresponding " +"language code in `LANGUAGES` in `env` in the `.github/mdbook.yml` file, visit [ISO " +"639](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) for language " +"code reference" +# "在测试群或频道中找到资源包" is not translated because at that time there is no phira discord server and alot of the players are unable to access QQ. So I left the translation out. +# by PingTKP #: src/respack/index.md:3 msgid "" -"在 prpr 中,你可以自定义资源包。资源包包含了音符的样式、粒子效果、打击音效等" -"等元素。你可以在测试群或频道中找到资源包,也可以选择自己制作资源包。以下将具" -"体阐述资源包的文件结构。" +"在 prpr 中,你可以自定义资源包。资源包包含了音符的样式、粒子效果、打击音效等等元" +"素。你可以在测试群或频道中找到资源包,也可以选择自己制作资源包。以下将具体阐述资源" +"包的文件结构。" msgstr "" -"In prpr, you can customize resource packs. Resource packs contain elements " -"such as note styles, particle effects, hit sounds, and more. You can find " -"res-packs in testing groups or channels, or you can choose to make your own. " -"The following describes the file structure of a resource pack." +"In prpr, you can customize the respack. The respack consists of how the notes " +"look, particle effects, hit sound effects, etc. You can find premade respacks, or " +"you choose to make one yourself. The file structure of the respack is explained in " +"detailed below." #: src/respack/index.md:5 msgid "结构" @@ -244,12 +246,12 @@ msgstr "Structure" #: src/respack/index.md:7 msgid "" -"资源包是单个 zip 压缩文件,其中包含了配置文件 `info.yml` 和其他的资源文件。其" -"中,资源文件有些是必须存在,有些则是可选的。" +"资源包是单个 zip 压缩文件,其中包含了配置文件 `info.yml` 和其他的资源文件。其中,资" +"源文件有些是必须存在,有些则是可选的。" msgstr "" -"A resource pack is a single zip archive containing the configuration file " -"`info.yml` and other resource files. Some of the resource files are required " -"and some are optional." +"A Respack is a single zip archive containing the configuration file `info.yml` and " +"other resource files. Some of the resource files are required and some are " +"optional." #: src/respack/index.md:9 msgid "资源文件" @@ -257,63 +259,64 @@ msgstr "Resource files" #: src/respack/index.md:11 msgid "资源文件必须包括:" -msgstr "The resource file must include:" +msgstr "The resource files must include:" #: src/respack/index.md:13 msgid "`click.png` 和 `click_mh.png`:Click 音符的皮肤,`mh` 代表双押;" msgstr "" -"`click.png` and `click_mh.png`: skins for the Click note, `mh` for multi-" -"hint(simultaneous note highlight);" +"`click.png` and `click_mh.png`: The note skin for click notes, `mh` represents " +"simultaneous clicks." #: src/respack/index.md:14 msgid "`drag.png` 和 `drag_mh.png`:Drag 音符的皮肤,`mh` 代表双押;" msgstr "" -"`drag.png` and `drag_mh.png`: skins for Drag notes, `mh` for multi-" -"hint(simultaneous note highlight);" +"`drag.png` and `drag_mh.png`: The note skin for drag notes, `mh` represents " +"simultaneous drags." #: src/respack/index.md:15 msgid "`flick.png` 和 `flick_mh.png`:Flick 音符的皮肤,`mh` 代表双押;" msgstr "" -"`flick.png` and `flick_mh.png`: skins for Flick notes, `mh` for multi-" -"hit(simultaneous note highlight);" +"`flick.png` and `flick_mh.png`: The note skin for flick notes, `mh` represents " +"simultaneous flicks." #: src/respack/index.md:16 msgid "`hold.png` 和 `hold_mh.png`:Hold 音符的皮肤,`mh` 代表双押;" msgstr "" -"`hold.png` and `hold_mh.png`: skins for Hold notes, `mh` for mult-" -"hint(simultaneous note highlight);" +"`hold.png` and `hold_mh.png`: The note skin for hold notes, `mh` represents " +"simultaneous holds." #: src/respack/index.md:17 msgid "`hit_fx.png`:打击特效图片。" -msgstr "`hit_fx.png`: picture of the hit effect." +msgstr "`hit_fx.png`: The image for hit effect." #: src/respack/index.md:19 msgid "资源文件可以包括(即若不包括,将使用默认):" msgstr "" -"Resource files can be included (i.e. if not, the default will be used):" +"The resource files can also include (If they are not included, the default will be " +"used):" #: src/respack/index.md:21 msgid "" "`click.ogg`、`drag.ogg` 和 `flick.ogg`:对应音符的打击音效,注意采样率必须为 " "44100Hz,否则在渲染时(prpr-render)会导致崩溃;" msgstr "" -"`click.ogg`, `drag.ogg` and `flick.ogg`: percussive sound effects " -"corresponding to notes, note that the sample rate must be 44100Hz or it will " -"cause a crash during rendering (prpr-render);" +"`click.ogg`, `drag.ogg` and `flick.ogg`: The sound effects for the corresponding " +"notes, note that the sampling rate must be 44100 Hz, or else it will cause crashes " +"during rendering (prpr-render)." #: src/respack/index.md:22 msgid "`ending.mp3`:结算界面背景音乐。" -msgstr "`ending.mp3`: background music for the gameplay result screen." +msgstr "`ending.mp3`: The background music for the score screen." #: src/respack/index.md:24 msgid "配置文件" -msgstr "configuration file" +msgstr "Configuration file" #: src/respack/index.md:26 msgid "配置文件采用 yml,其中必填项如下(以默认资源包为例):" msgstr "" -"The configuration file is in yml, with the following required fields (in the " -"case of the default respack):" +"The configuration file uses yml format, with the following required fields (using " +"a default respack as an example):" #: src/respack/index.md:29 msgid "name" @@ -345,221 +348,222 @@ msgstr "holdAtlasMH" #: src/respack/index.md:36 msgid "`name`:资源包的名字;" -msgstr "`name`: the name of the respack;" +msgstr "`name`: The name of the respack." #: src/respack/index.md:37 msgid "`author`:资源包的作者;" -msgstr "`author`: the author of the respack;" +msgstr "`author`: The author/creator of the respack." #: src/respack/index.md:38 msgid "`description`:资源包介绍;" -msgstr "`description`: description of the respack;" +msgstr "`description`: The description/introduction of the respack." #: src/respack/index.md:39 msgid "" -"`hitFx`:打击特效宽、高的帧数。打击特效是将多帧动画存储在一张图中的,因此需要" -"指定这张图中横竖各有几帧,例如,在 [此图](image/hit_fx.jpg) 中横、竖的帧数分" -"别为 5 与 6(最后一行不太看得见,但是是存在的)(图片为了便于辨识使用了黑色背" -"景,但在制作资源包时应当使用透明背景);" +"`hitFx`:打击特效宽、高的帧数。打击特效是将多帧动画存储在一张图中的,因此需要指定这" +"张图中横竖各有几帧,例如,在 [此图](image/hit_fx.jpg) 中横、竖的帧数分别为 5 与 6" +"(最后一行不太看得见,但是是存在的)(图片为了便于辨识使用了黑色背景,但在制作资源" +"包时应当使用透明背景);" msgstr "" -"`hitFx`: the number of frames for the width and height of the hit effect. " -"Hit FXs store multiple frames of animation in a single image, so you need to " -"specify how many frames are in the image horizontally and vertically, e.g. 5 " -"and 6 frames horizontally and vertically (the last line is not quite " -"visible, but it’s there) in [this image](image/hit_fx.jpg) (the image has a " -"black background for legibility, but you should have used a transparent " -"background for the respack);" +"`hitFx`: The frame count of the width and height of the hit effect. Hit effects " +"are stored as multiple frames in a single image, thus, it is necessary to specify " +"the number of horizontal and vertical frames in the image. For example, in [this " +"image](image/hit_fx.jpg), the horizontal and vertical frame count is 5 and 6 " +"respectively (the last row is not very visible, but it is present there) (the " +"image uses a black background for the ease of viewing, but a transparent " +"background should be used when creating a respack)." #: src/respack/index.md:40 msgid "" -"`holdAtlas`:Hold 贴图的尾、头高度。Hold 的皮肤是 **一张图片**,从上到下分别" -"为 Hold 的尾部、中间和头部。而 `holdAtlas` 的两个数字则分别指定了图片中尾部和" -"头部的高度。例如,在 [此图](image/hold.png) 中,尾部和头部高度均为 50 像素。" +"`holdAtlas`:Hold 贴图的尾、头高度。Hold 的皮肤是 **一张图片**,从上到下分别为 " +"Hold 的尾部、中间和头部。而 `holdAtlas` 的两个数字则分别指定了图片中尾部和头部的高" +"度。例如,在 [此图](image/hold.png) 中,尾部和头部高度均为 50 像素。" msgstr "" -"`holdAtlas`: the height of the tail and head of the Hold mapping. hold’s " -"skin is **an image**, from top to bottom are the tail, center and head of " -"the Hold. The two numbers in `holdAtlas` specify the height of the tail and " -"head of the image. For example, in [this image](image/hold.png), the height " -"of the tail and head are both 50 pixels." +"`holdAtlas`: The height of the tail and head of the hold image. The note skin of " +"the hold is **an image**, it has the tail section, middle section and the head " +"section, from top to bottom of the image. The 2 numbers of `holdAtlas` specify the " +"height of the tail and head respectively in the image. For example, in [this image]" +"(image/hold.png), the height of the tail and head section are both 50 pixels." #: src/respack/index.md:41 msgid "`holdAtlasMH`:意义与上一条类似,指定多押 Hold 的相关信息。" msgstr "" -"`holdAtlasMH`: similar in meaning to the previous entry, specifying " -"information about the multi-hint(simultaneous note highlight)." +"`holdAtlasMH`: Similar to the previous bullet point, specifies the related details " +"for simultaneous holds." #: src/respack/index.md:43 msgid "此外还有选填项:" -msgstr "There are also optional items:" +msgstr "In addition, there are these optional fields:" #: src/respack/index.md:45 msgid "`hitFxDuration`(小数,默认 `0.5`):打击特效的持续时间,以秒为单位;" msgstr "" -"`hitFxDuration` (decimal, default `0.5`): duration of the hit effect, in " -"seconds;" +"`hitFxDuration` (float, default value: `0.5`): The duration of the hit effect in " +"seconds." #: src/respack/index.md:46 msgid "`hitFxScale`(小数,默认 `1.0`):打击特效缩放比例;" -msgstr "`hitFxScale` (decimal, default `1.0`): hitFx scale;" +msgstr "`hitFxScale` (float, default value: `1.0`): The scale of the hit effect." #: src/respack/index.md:47 msgid "`hitFxRotate`(布尔值,默认 `false`):打击特效是否随 Note 旋转;" msgstr "" -"`hitFxRotate` (boolean, default `false`): if or not the hit effect rotates " -"with the note;" +"`hitFxRotate` (bool, default value: `false`): Whether the hit effect rotates with " +"the note." #: src/respack/index.md:48 msgid "`hitFxTinted`(布尔值,默认 `true`):打击特效是否依照判定线颜色着色;" msgstr "" -"`hitFxTinted` (boolean, default `true`): If or not the hit effect is tinted " -"according to the judge line color;" +"`hitFxTinted` (bool, default value: `true`): Whether the hit effect is colored " +"according to the color of the judgement line." #: src/respack/index.md:49 msgid "`hideParticles`(布尔值,默认 `false`):打击时是否隐藏方形粒子效果;" msgstr "" -"`hideParticles` (boolean, default `false`): whether or not to hide the " -"square particle effect when striking;" +"`hideParticles` (bool, default value: `false`): Whether the hit effect particles " +"are hidden." #: src/respack/index.md:50 msgid "`holdKeepHead`(布尔值,默认 `false`):Hold 触线后是否还显示头部;" msgstr "" -"`holdKeepHead` (boolean, default `false`): whether or not the head is still " -"displayed after Hold touches the line;" +"`holdKeepHead` (bool, default value: `false`): Whether to keep showing the hold’s " +"head section once it touches the line." #: src/respack/index.md:51 msgid "" -"`holdRepeat`(布尔值,默认 `false`):Hold 的中间部分是否采用重复式拉伸。[这" -"里的三张图](image/hold_repeat.jpg) 从左到右依次是 Hold 资源图、不启用 " -"`holdRepeat` 时的长条和启用 `holdRepeat` 时的长条;" +"`holdRepeat`(布尔值,默认 `false`):Hold 的中间部分是否采用重复式拉伸。[这里的三" +"张图](image/hold_repeat.jpg) 从左到右依次是 Hold 资源图、不启用 `holdRepeat` 时的长" +"条和启用 `holdRepeat` 时的长条;" msgstr "" -"`holdRepeat` (boolean, default `false`): whether or not the middle part of " -"the Hold uses repetitive stretching. [The three images here](image/" -"hold_repeat.jpg) are, from left to right, the Hold resource map, the long " -"bar without `holdRepeat` enabled, and the long bar with `holdRepeat` enabled;" +"`holdRepeat` (bool. default value: `false`): Whether the middle section of the " +"hold is repetitively stretched. [The below shows 3 images](image/hold_repeat.jpg), " +"the hold’s image on the left, the image of how the hold will look like when " +"`holdRepeat` is false on the middle, and the image of how the hold will look like " +"when `holdRepeat` is true on the right." #: src/respack/index.md:52 msgid "" -"`holdCompact`(布尔值,默认 `false`):是否把 Hold 的头部和尾部与 Hold 中间重" -"叠。还是用上面的 [示例](image/hold_repeat.jpg),如果不开启 `holdCompact`,效" -"果就会是左边第一张图,Hold 的头尾是和中间隔开的;而右边两张图都是开启了 " -"`holdCompact` 的效果;" +"`holdCompact`(布尔值,默认 `false`):是否把 Hold 的头部和尾部与 Hold 中间重叠。还" +"是用上面的 [示例](image/hold_repeat.jpg),如果不开启 `holdCompact`,效果就会是左边" +"第一张图,Hold 的头尾是和中间隔开的;而右边两张图都是开启了 `holdCompact` 的效果;" msgstr "" -"`holdCompact` (boolean, default `false`): if or not overlap the head and " -"tail of the Hold with the middle of the Hold. Still using the above [example]" -"(image/hold_repeat.jpg), if you don’t enable `holdCompact`, the effect will " -"be that in the first image on the left, the head and tail of the Hold are " -"separated from the center, while the two images on the right are both with " -"`holdCompact` enabled;" +"`holdCompact` (bool, default value: `false`): Whether to overlap the hold’s head " +"and tail section with the middle section. Using the previous [example](image/" +"hold_repeat.jpg), if `holdCompact` is false, the hold will look like the image on " +"the left, you can see that the tail and head section are separated from the middle " +"section. If `holdCompact` is true, the hold will look like the image on the middle " +"and right." #: src/respack/index.md:53 msgid "" -"`colorPerfect`(十六进制颜色代码,默认 `0xe1ffec9f`):AP(全 Perfect)情况下" -"的判定线颜色;" +"`colorPerfect`(十六进制颜色代码,默认 `0xe1ffec9f`):AP(全 Perfect)情况下的判定" +"线颜色;" msgstr "" -"`colorPerfect` (hexadecimal color code, default `0xe1ffec9f`): the color of " -"the judgment line in the AP (All Perfect) case;" +"`colorPerfect` (Hexadecimal color code, default value: `0xe1ffec9f`): The color of " +"the judgement line when it is still AP (All Perfect)." #: src/respack/index.md:54 msgid "" -"`colorGood`(十六进制颜色代码,默认 `0xebb4e1ff`):FC(全连)情况下的判定线" -"颜色。" +"`colorGood`(十六进制颜色代码,默认 `0xebb4e1ff`):FC(全连)情况下的判定线颜色。" msgstr "" -"`colorGood` (hexadecimal color code, default `0xebb4e1ff`): the color of the " -"judgment line in the FC (full combo) case." +"`colorGood` (Hexadecimal color code, default value: `0xebb4e1ff`): The color of " +"the judgement line when it is still FC (Full Combo)." #: src/feature/index.md:3 #, fuzzy msgid "" -"prpr 在支持 Phigros 官方谱面格式、`pec` 格式和 `rpe` 格式之外,加入了一些谱面" -"特性。这些谱面特性目前只在 prpr 及基于其构建的客户端上可用。它们包括:" +"prpr 在支持 Phigros 官方谱面格式、`pec` 格式和 `rpe` 格式之外,加入了一些谱面特性。" +"这些谱面特性目前只在 prpr 及基于其构建的客户端上可用。它们包括:" msgstr "" -"prpr 在支持 Phigros 官方谱面格式、`pec` 格式和 `rpe` 格式之外,加入了一些谱面" -"特性。这些谱面特性目前只在 prpr 及基于其构建的客户端上可用。它们包括:" +"prpr not only supports the official Phigros, 'pec', and 'rpe' chart format, but " +"also added some unique features. These chart features can only be used in prpr and " +"other clients that built on top of prpr. These features include:" #: src/feature/index.md:5 #, fuzzy msgid "[特效](./effect/index.md)" -msgstr "[特效](./effect/index.md)" +msgstr "[Effects](./effect/index.md)" #: src/feature/index.md:6 #, fuzzy msgid "[视频背景](./video/index.md)" -msgstr "[视频背景](./video/index.md)" +msgstr "[Video Background](./video/index.md)" +# Compressed file can be used instead of zip file as well #: src/feature/index.md:8 #, fuzzy msgid "" -"关于特性的配置需要全部存储在压缩包根目录的 `extra.json` 中。为了使用谱面特" -"性,你需要手动编辑 JSON 文件。如果你不知道 JSON 是什么,请参阅 [JSON 教程]" -"(http://c.biancheng.net/json/)。" +"关于特性的配置需要全部存储在压缩包根目录的 `extra.json` 中。为了使用谱面特性,你需" +"要手动编辑 JSON 文件。如果你不知道 JSON 是什么,请参阅 [JSON 教程](http://c." +"biancheng.net/json/)。" msgstr "" -"关于特性的配置需要全部存储在压缩包根目录的 `extra.json` 中。为了使用谱面特" -"性,你需要手动编辑 JSON 文件。如果你不知道 JSON 是什么,请参阅 [JSON 教程]" -"(http://c.biancheng.net/json/)。" +"The configuration of chart features need to be saved in `extra.json` which can be " +"found in the root directory of the zip file. In order to use the chart features, " +"you need to edit the JSON file manually. If you don't know what JSON is, see [JSON " +"Tutorial](http://c.biancheng.net/json/)." #: src/feature/index.md:10 #, fuzzy msgid "BPM 配置" -msgstr "BPM 配置" +msgstr "BPM Config" #: src/feature/index.md:12 -#, fuzzy -msgid "" -"**在进行相关配置前,你需要在 `extra.json` 中预先设定好曲目的 BPM**。例如:" +msgid "**在进行相关配置前,你需要在 `extra.json` 中预先设定好曲目的 BPM**。例如:" msgstr "" -"**在进行相关配置前,你需要在 `extra.json` 中预先设定好曲目的 BPM**。例如:" +"**Before making any configurations, you need to set the BPM of the song/track in " +"`extra.json`**. For example:" #: src/feature/index.md:16 src/feature/index.md:17 src/feature/index.md:18 msgid "\"bpm\"" msgstr "\"bpm\"" -#: src/feature/index.md:17 src/feature/index.md:18 -#: src/feature/video/index.md:16 +#: src/feature/index.md:17 src/feature/index.md:18 src/feature/video/index.md:16 msgid "\"time\"" msgstr "\"time\"" #: src/feature/index.md:24 #, fuzzy msgid "这里表示歌曲最初 BPM 为 `200`,而后在十又二分之一拍是转换为 `250`。" -msgstr "这里表示歌曲最初 BPM 为 `200`,而后在十又二分之一拍是转换为 `250`。" +msgstr "" +"This shows that the song has an initial BPM of `200`, the BPM then changes to " +"`250` at the 10.5 beat." #: src/feature/index.md:26 #, fuzzy msgid "动画变量" -msgstr "动画变量" +msgstr "Animation variables" #: src/feature/index.md:28 #, fuzzy msgid "" -"在配置文件中会常常用到动画变量。例如,在 RPE 中,的 X 坐标变化事件实际上就是 " -"X 坐标作为一个动画变量。" +"在配置文件中会常常用到动画变量。例如,在 RPE 中,的 X 坐标变化事件实际上就是 X 坐标" +"作为一个动画变量。" msgstr "" -"在配置文件中会常常用到动画变量。例如,在 RPE 中,的 X 坐标变化事件实际上就是 " -"X 坐标作为一个动画变量。" +"Animation variables are often used in charts. For example, in RPE, the X " +"coordinate change event is actually the X coordinate as an animation variable." #: src/feature/index.md:30 #, fuzzy msgid "" -"prpr 的动画变量有两种格式。第一种即单个值,表示该变量不会更改,一直维持同一个" -"值。这种格式是为了方便填写而适用的。第二种格式与 RPE 中的格式相同,是由多个 " -"`Event` 组成的。单个 `Event` 格式如下所示:" +"prpr 的动画变量有两种格式。第一种即单个值,表示该变量不会更改,一直维持同一个值。这" +"种格式是为了方便填写而适用的。第二种格式与 RPE 中的格式相同,是由多个 `Event` 组成" +"的。单个 `Event` 格式如下所示:" msgstr "" -"prpr 的动画变量有两种格式。第一种即单个值,表示该变量不会更改,一直维持同一个" -"值。这种格式是为了方便填写而适用的。第二种格式与 RPE 中的格式相同,是由多个 " -"`Event` 组成的。单个 `Event` 格式如下所示:" +"There are 2 formats for prpr’s animation variables. The first is for a constant " +"value, which means that the variable will not change and will always have the same " +"value. This format is applied just for the ease of filling up the fields. The " +"second format is the same as the one in RPE and is composed of multiple `Event`. " +"The format of a single `Event` is shown below:" -#: src/feature/index.md:34 src/feature/index.md:57 -#: src/feature/effect/index.md:58 +#: src/feature/index.md:34 src/feature/index.md:57 src/feature/effect/index.md:58 msgid "\"startTime\"" msgstr "\"startTime\"" -#: src/feature/index.md:35 src/feature/index.md:58 -#: src/feature/effect/index.md:59 +#: src/feature/index.md:35 src/feature/index.md:58 src/feature/effect/index.md:59 msgid "\"endTime\"" msgstr "\"endTime\"" -#: src/feature/index.md:36 src/feature/index.md:59 -#: src/feature/effect/index.md:60 +#: src/feature/index.md:36 src/feature/index.md:59 src/feature/effect/index.md:60 msgid "\"easingType\"" msgstr "\"easingType\"" @@ -571,15 +575,13 @@ msgstr "\"easingLeft\"" msgid "\"easingRight\"" msgstr "\"easingRight\"" -#: src/feature/index.md:39 src/feature/index.md:60 -#: src/feature/effect/index.md:15 src/feature/effect/index.md:52 -#: src/feature/effect/index.md:61 +#: src/feature/index.md:39 src/feature/index.md:60 src/feature/effect/index.md:15 +#: src/feature/effect/index.md:52 src/feature/effect/index.md:61 msgid "\"start\"" msgstr "\"start\"" -#: src/feature/index.md:40 src/feature/index.md:61 -#: src/feature/effect/index.md:16 src/feature/effect/index.md:53 -#: src/feature/effect/index.md:62 +#: src/feature/index.md:40 src/feature/index.md:61 src/feature/effect/index.md:16 +#: src/feature/effect/index.md:53 src/feature/effect/index.md:62 msgid "\"end\"" msgstr "\"end\"" @@ -589,59 +591,67 @@ msgid "" "其中 `startTime`、`endTime` 是事件的开始和结束时间;`easingType` 是缓动类型;" "`easingLeft`、`easingRight` 是可选的,代表裁剪缓动的开始与结束位置。" msgstr "" -"其中 `startTime`、`endTime` 是事件的开始和结束时间;`easingType` 是缓动类型;" -"`easingLeft`、`easingRight` 是可选的,代表裁剪缓动的开始与结束位置。" +"where `startTime` and `endTime` are the event’s start time and end time " +"respectively; `easingType` is the type of easing; `easingLeft` and `easingRight` " +"are optional, it represents the start and end position of the ease." #: src/feature/index.md:46 #, fuzzy msgid "" -"`start` 和 `end` 代表该时间开始和结束处该变量的值。这里值的类型是取决于变量本" -"身的类型的,它可以是下面类型中的任意一种:" +"`start` 和 `end` 代表该时间开始和结束处该变量的值。这里值的类型是取决于变量本身的类" +"型的,它可以是下面类型中的任意一种:" msgstr "" -"`start` 和 `end` 代表该时间开始和结束处该变量的值。这里值的类型是取决于变量本" -"身的类型的,它可以是下面类型中的任意一种:" +"`start` and `end` represent the values at the beginning and end of the time. The " +"type of the value here depends on the type of the animation variable itself, which " +"can be any of the following types:" #: src/feature/index.md:48 #, fuzzy msgid "`float`:单个小数;" -msgstr "`float`:单个小数;" +msgstr "`float`: a single decimal." #: src/feature/index.md:49 #, fuzzy msgid "`vec2`:两个小数表示的二维向量,用数组表示;" -msgstr "`vec2`:两个小数表示的二维向量,用数组表示;" +msgstr "`vec2`: 2 decimal representing a 2D vector, represented as an array." #: src/feature/index.md:50 #, fuzzy msgid "`color`:四个整数(0-255)表示的颜色,格式为 `[R, G, B, A]`。" -msgstr "`color`:四个整数(0-255)表示的颜色,格式为 `[R, G, B, A]`。" +msgstr "" +"`color`: 4 integers (0-255) that represents a color, the format is `[R, G, B, A]`." #: src/feature/index.md:52 #, fuzzy msgid "例如,下面的动画变量将在特定时段内从 `0` 到 `1` 线性变化:" -msgstr "例如,下面的动画变量将在特定时段内从 `0` 到 `1` 线性变化:" +msgstr "" +"For example, the following animation variable will vary linearly from `0` to `1` " +"over a given time period:" #: src/feature/effect/index.md:3 #, fuzzy msgid "" -"特效是在一段时间内对谱面整体施加着色器效果的特性,可以用以达成一些普通谱面无" -"法实现或难以实现的视觉效果。prpr 预置了一批着色器,你也可以自己编写着色器,详" -"见 [自行编写着色器](./custom-shader.md)。" +"特效是在一段时间内对谱面整体施加着色器效果的特性,可以用以达成一些普通谱面无法实现" +"或难以实现的视觉效果。prpr 预置了一批着色器,你也可以自己编写着色器,详见 [自行编写" +"着色器](./custom-shader.md)。" msgstr "" -"特效是在一段时间内对谱面整体施加着色器效果的特性,可以用以达成一些普通谱面无" -"法实现或难以实现的视觉效果。prpr 预置了一批着色器,你也可以自己编写着色器,详" -"见 [自行编写着色器](./custom-shader.md)。" +"Effect is a feature that applies shader to the entire chart for a specified amount " +"of time. They can be used to achieve visual effects that are impossible or " +"difficult to achieve in vanilla charts. prpr has some premade shaders, or you can " +"also write your own shaders. For more details, see [Writing your own shader](./" +"custom-shader.md)." #: src/feature/effect/index.md:5 src/feature/video/index.md:5 #, fuzzy msgid "格式" -msgstr "格式" +msgstr "Format" #: src/feature/effect/index.md:7 #, fuzzy msgid "你需要在 `extra.json` 中加入 `effects` 字段,其内容为 `Effect` 的数组。" msgstr "" -"你需要在 `extra.json` 中加入 `effects` 字段,其内容为 `Effect` 的数组。" +"You need to add the `effects` field in `extra.json`, whose content is an array of " +"`Effect`." #: src/feature/effect/index.md:9 #, fuzzy @@ -651,7 +661,7 @@ msgstr "Effect" #: src/feature/effect/index.md:11 #, fuzzy msgid "单个 `Effect` 的格式如下所示:" -msgstr "单个 `Effect` 的格式如下所示:" +msgstr "The format of a single `Effect` is shown below:" #: src/feature/effect/index.md:17 src/feature/effect/index.md:54 msgid "\"shader\"" @@ -660,7 +670,7 @@ msgstr "\"shader\"" #: src/feature/effect/index.md:17 #, fuzzy msgid "\"着色器名字\"" -msgstr "\"着色器名字\"" +msgstr "\"Name of shader\"" #: src/feature/effect/index.md:18 msgid "\"global\"" @@ -674,36 +684,40 @@ msgstr "\"vars\"" #: src/feature/effect/index.md:25 #, fuzzy msgid "" -"`start` 和 `end` 指定了特效的开始和结束时间,格式与 RPE 默认的时间表示格式相" -"同(`[小节数, 分子, 分母]`)。" +"`start` 和 `end` 指定了特效的开始和结束时间,格式与 RPE 默认的时间表示格式相同" +"(`[小节数, 分子, 分母]`)。" msgstr "" -"`start` 和 `end` 指定了特效的开始和结束时间,格式与 RPE 默认的时间表示格式相" -"同(`[小节数, 分子, 分母]`)。" +"`start` and `end` specify the start and end time respectively in the same format " +"as RPE's default time format (`[bar number, numerator, denominator]`)." #: src/feature/effect/index.md:27 #, fuzzy msgid "`shader`,即着色器名字,既可以是内置着色器,也可以是自定义的着色器。" -msgstr "`shader`,即着色器名字,既可以是内置着色器,也可以是自定义的着色器。" +msgstr "" +"`shader` represents the shader's name, it can be a built-in shader, or a custom " +"shader." #: src/feature/effect/index.md:29 #, fuzzy msgid "" -"`global` 决定了该特效会不会影响到 UI 元素(连击数、暂停按钮等)。可以不填,默" -"认为 `false`。" +"`global` 决定了该特效会不会影响到 UI 元素(连击数、暂停按钮等)。可以不填,默认为 " +"`false`。" msgstr "" -"`global` 决定了该特效会不会影响到 UI 元素(连击数、暂停按钮等)。可以不填,默" -"认为 `false`。" +"`global` determines whether the effect will affect UI elements (combo count, pause " +"button, etc). This field can be left blank, and its default value is `false`." #: src/feature/effect/index.md:31 #, fuzzy msgid "" -"`vars` 是可选项,它是一个变量名字到 [`动画变量`](../index.html#动画变量) 的映" -"射,用于指定着色器的参数(或者说,着色器的 `uniform` 变量)。即,假设我需要指" -"定两个变量 `power` 和 `radius` 的值,我可以这样写:" +"`vars` 是可选项,它是一个变量名字到 [`动画变量`](../index.html#动画变量) 的映射,用" +"于指定着色器的参数(或者说,着色器的 `uniform` 变量)。即,假设我需要指定两个变量 " +"`power` 和 `radius` 的值,我可以这样写:" msgstr "" -"`vars` 是可选项,它是一个变量名字到 [`动画变量`](../index.html#动画变量) 的映" -"射,用于指定着色器的参数(或者说,着色器的 `uniform` 变量)。即,假设我需要指" -"定两个变量 `power` 和 `radius` 的值,我可以这样写:" +"`vars` is an optional parameter, it is a mapping of variable names to [animation " +"variables](../index.html#animation-variables), it is used to specify the " +"parameters of the shader (or rather: shader's `uniform` variables). i.e. suppose I " +"need to specify the values of 2 variables, `power` and `radius`, I can write it " +"like this:" #: src/feature/effect/index.md:37 src/feature/effect/index.md:56 msgid "\"power\"" @@ -716,18 +730,18 @@ msgstr "\"radius\"" #: src/feature/effect/index.md:43 src/feature/effect/custom-shader.md:36 #, fuzzy msgid "示例" -msgstr "示例" +msgstr "Example" #: src/feature/effect/index.md:45 #, fuzzy msgid "" -"下面的例子将在 `[2, 0, 1]` 到 `[4, 0, 1]` 中使用 `chromatic` 内置着色器,并" -"将 `power` 这一参数在这一时段内从 `0` 到 `0.1` 线性变化,且 `sampleCount` 被" -"固定为 `5`:" +"下面的例子将在 `[2, 0, 1]` 到 `[4, 0, 1]` 中使用 `chromatic` 内置着色器,并将 " +"`power` 这一参数在这一时段内从 `0` 到 `0.1` 线性变化,且 `sampleCount` 被固定为 " +"`5`:" msgstr "" -"下面的例子将在 `[2, 0, 1]` 到 `[4, 0, 1]` 中使用 `chromatic` 内置着色器,并" -"将 `power` 这一参数在这一时段内从 `0` 到 `0.1` 线性变化,且 `sampleCount` 被" -"固定为 `5`:" +"The following example will apply the built-in `chromatic` shader from `[2, 0, 1]` " +"to `[4, 0, 1]` and will vary the `power` parameter linearly from `0` to `0.1` in " +"this time period, with the `sampleCount` fixed at `5`:" #: src/feature/effect/index.md:50 msgid "\"effects\"" @@ -744,277 +758,289 @@ msgstr "\"sampleCount\"" #: src/feature/effect/index.md:74 #, fuzzy msgid "" -"你可以在 [这里](./builtin/index.md) 查看所有的内置着色器,以及它们的参数和相" -"关说明。" +"你可以在 [这里](./builtin/index.md) 查看所有的内置着色器,以及它们的参数和相关说" +"明。" msgstr "" -"你可以在 [这里](./builtin/index.md) 查看所有的内置着色器,以及它们的参数和相" -"关说明。" +"You can view all the built-in shaders, along with their parameters and related " +"descriptions, at [here](./builtin/index.md)." #: src/feature/effect/builtin/index.md:3 #, fuzzy msgid "该部分列举了 prpr 的内置着色器。" -msgstr "该部分列举了 prpr 的内置着色器。" +msgstr "This section lists prpr's built-in shaders." #: src/feature/effect/builtin/chromatic.md:3 #, fuzzy msgid "色差效果。" -msgstr "色差效果。" +msgstr "Chromatic effect." #: src/feature/effect/builtin/chromatic.md:5 #, fuzzy msgid "![示例](image/chromatic.png)" -msgstr "![示例](image/chromatic.png)" +msgstr "![example](image/chromatic.png)" #: src/feature/effect/builtin/chromatic.md:7 #: src/feature/effect/builtin/circleBlur.md:7 -#: src/feature/effect/builtin/fisheye.md:13 -#: src/feature/effect/builtin/glitch.md:7 -#: src/feature/effect/builtin/grayscale.md:7 -#: src/feature/effect/builtin/noise.md:7 src/feature/effect/builtin/pixel.md:7 -#: src/feature/effect/builtin/radialBlur.md:7 -#: src/feature/effect/builtin/shockwave.md:7 -#: src/feature/effect/builtin/vignette.md:7 -#, fuzzy +#: src/feature/effect/builtin/fisheye.md:13 src/feature/effect/builtin/glitch.md:7 +#: src/feature/effect/builtin/grayscale.md:7 src/feature/effect/builtin/noise.md:7 +#: src/feature/effect/builtin/pixel.md:7 src/feature/effect/builtin/radialBlur.md:7 +#: src/feature/effect/builtin/shockwave.md:7 src/feature/effect/builtin/vignette.md:7 msgid "参数" -msgstr "参数" +msgstr "Parameters" #: src/feature/effect/builtin/chromatic.md:9 #, fuzzy msgid "" -"`sampleCount`(整数,默认 `3`,范围 `1-64`):采样次数,越高显示会更连贯,开" -"销也更大;" +"`sampleCount`(整数,默认 `3`,范围 `1-64`):采样次数,越高显示会更连贯,开销也更" +"大;" msgstr "" -"`sampleCount`(整数,默认 `3`,范围 `1-64`):采样次数,越高显示会更连贯,开" -"销也更大;" +"`sampleCount` (integer, default value: `3`, Range: `1-64`): Sample count, the " +"higher the value, the display will be more coherent, and the overhead will be " +"higher." #: src/feature/effect/builtin/chromatic.md:10 #, fuzzy msgid "`power`(小数,默认 `0.01`):强度,或者说偏移距离。" -msgstr "`power`(小数,默认 `0.01`):强度,或者说偏移距离。" +msgstr "`power` (float, default value: `0.01`): The intensity, or offset distance." #: src/feature/effect/builtin/circleBlur.md:3 #, fuzzy msgid "圆点模糊。会将像素点模糊放大为亮点,建议搭配参数动画使用。" -msgstr "圆点模糊。会将像素点模糊放大为亮点,建议搭配参数动画使用。" +msgstr "" +"Dot blurring. Will enlarge the pixel blur as highlight, recommended to use with " +"parameter." #: src/feature/effect/builtin/circleBlur.md:5 #, fuzzy msgid "![示例](image/circleBlur.png)" -msgstr "![示例](image/circleBlur.png)" +msgstr "![example](image/circleBlur.png)" #: src/feature/effect/builtin/circleBlur.md:9 #, fuzzy msgid "`size`(小数,默认 `10.0`):原点的大小,以像素为单位。" -msgstr "`size`(小数,默认 `10.0`):原点的大小,以像素为单位。" +msgstr "`size` (float, default value: `10.0`): The size of the origin, in pixels." #: src/feature/effect/builtin/fisheye.md:3 #, fuzzy msgid "鱼眼效果。当 `power` 为负数时可以做出类似隧洞穿梭的效果。" -msgstr "鱼眼效果。当 `power` 为负数时可以做出类似隧洞穿梭的效果。" +msgstr "Fisheye effect. When `power` is negative, you can make tunneling effect." #: src/feature/effect/builtin/fisheye.md:5 #, fuzzy msgid "`power` 为负数:" -msgstr "`power` 为负数:" +msgstr "`power` as negative value:" #: src/feature/effect/builtin/fisheye.md:7 #, fuzzy msgid "![示例](image/fisheye-neg.png)" -msgstr "![示例](image/fisheye-neg.png)" +msgstr "![example](image/fisheye-neg.png)" #: src/feature/effect/builtin/fisheye.md:9 #, fuzzy msgid "`power` 为正数:" -msgstr "`power` 为正数:" +msgstr "`power` as positive value:" #: src/feature/effect/builtin/fisheye.md:11 #, fuzzy msgid "![示例](image/fisheye-pos.png)" -msgstr "![示例](image/fisheye-pos.png)" +msgstr "![example](image/fisheye-pos.png)" #: src/feature/effect/builtin/fisheye.md:15 #, fuzzy msgid "`power`(小数,默认 `-0.1`):鱼眼缩放比例。" -msgstr "`power`(小数,默认 `-0.1`):鱼眼缩放比例。" +msgstr "`power` (float, default value: `-0.1`): Scale of fisheye effect." #: src/feature/effect/builtin/glitch.md:3 #, fuzzy msgid "混乱 / 错误效果。该效果会随时间产生不确定的闪烁。" -msgstr "混乱 / 错误效果。该效果会随时间产生不确定的闪烁。" +msgstr "" +"Confusion/Error effect. The effect produces an indeterminate flicker over time." #: src/feature/effect/builtin/glitch.md:5 #, fuzzy msgid "![示例](image/glitch.png)" -msgstr "![示例](image/glitch.png)" +msgstr "![example](image/glitch.png)" #: src/feature/effect/builtin/glitch.md:9 #, fuzzy msgid "`power`(小数,默认 `0.3`):闪烁强度;" -msgstr "`power`(小数,默认 `0.3`):闪烁强度;" +msgstr "`power` (float, default value: `0.3`): Flicker intensity." #: src/feature/effect/builtin/glitch.md:10 #, fuzzy msgid "" -"`rate`(小数,默认 `0.6`,范围 `0-1`):闪烁频率。`0` 为总不闪烁,`1` 为总是" -"闪烁;" +"`rate`(小数,默认 `0.6`,范围 `0-1`):闪烁频率。`0` 为总不闪烁,`1` 为总是闪烁;" msgstr "" -"`rate`(小数,默认 `0.6`,范围 `0-1`):闪烁频率。`0` 为总不闪烁,`1` 为总是" -"闪烁;" +"`rate` (float, default value: `0.6`, range: `0-1`): Flicker frequency. `0` for no " +"flickers, `1` for always flicker." #: src/feature/effect/builtin/glitch.md:11 #, fuzzy msgid "`speed`(小数,默认 `5.0`):整个闪烁动画的速度;" -msgstr "`speed`(小数,默认 `5.0`):整个闪烁动画的速度;" +msgstr "`speed` (float, default value: `5.0`): Speed of flickering animation." #: src/feature/effect/builtin/glitch.md:12 #, fuzzy msgid "`blockCount`(小数,默认 `30.5`):见上图,错位条带的条数(大概);" -msgstr "`blockCount`(小数,默认 `30.5`):见上图,错位条带的条数(大概);" +msgstr "" +"`blockCount` (float, default value: `30.5`): Look at above images, number of " +"misaligned strips (approximate)." #: src/feature/effect/builtin/glitch.md:13 #, fuzzy msgid "`colorRate`(小数,默认 `0.01`,范围 `0-1`):色差的距离。" -msgstr "`colorRate`(小数,默认 `0.01`,范围 `0-1`):色差的距离。" +msgstr "" +"`colorRate` (float, default value: `0.01`, range: `0-1`): Distance of color " +"difference." #: src/feature/effect/builtin/grayscale.md:3 #, fuzzy msgid "灰度化效果。" -msgstr "灰度化效果。" +msgstr "Grayscale effect." #: src/feature/effect/builtin/grayscale.md:5 #, fuzzy msgid "![示例](image/grayscale.png)" -msgstr "![示例](image/grayscale.png)" +msgstr "![example](image/grayscale.png)" #: src/feature/effect/builtin/grayscale.md:9 #, fuzzy msgid "" -"`factor`(小数,默认 `1.0`):灰度化程度。`0` 为不进行灰度化处理,`1` 为完全" -"进行灰度化处理。" +"`factor`(小数,默认 `1.0`):灰度化程度。`0` 为不进行灰度化处理,`1` 为完全进行灰" +"度化处理。" msgstr "" -"`factor`(小数,默认 `1.0`):灰度化程度。`0` 为不进行灰度化处理,`1` 为完全" -"进行灰度化处理。" +"`factor` (float, default value: `1.0`): Grayscale level. `0` for no grayscale " +"processing, `1` for complete grayscale processing." #: src/feature/effect/builtin/noise.md:3 #, fuzzy msgid "噪音效果。向画面附加一层随机的模糊效果。" -msgstr "噪音效果。向画面附加一层随机的模糊效果。" +msgstr "Noise effect. Applies a random layer of blur to the screen." #: src/feature/effect/builtin/noise.md:5 #, fuzzy msgid "![示例](image/noise.png)" -msgstr "![示例](image/noise.png)" +msgstr "![example](image/noise.png)" #: src/feature/effect/builtin/noise.md:9 #, fuzzy msgid "" -"`seed`(小数,默认 `81.0`):用来生成随机图案的种子。通过连续地变化种子可以使" -"图案发生连续的变化。" +"`seed`(小数,默认 `81.0`):用来生成随机图案的种子。通过连续地变化种子可以使图案发" +"生连续的变化。" msgstr "" -"`seed`(小数,默认 `81.0`):用来生成随机图案的种子。通过连续地变化种子可以使" -"图案发生连续的变化。" +"`seed` (float, default value: `81.0`): Used to generate random patterns. By " +"varying the seeds continuously, the pattern can be changed continuously." #: src/feature/effect/builtin/noise.md:10 #, fuzzy msgid "" -"`power`(小数,默认 `0.03`,范围 `0-1`):见上图,模糊的程度(像素偏移范" -"围)。" +"`power`(小数,默认 `0.03`,范围 `0-1`):见上图,模糊的程度(像素偏移范围)。" msgstr "" -"`power`(小数,默认 `0.03`,范围 `0-1`):见上图,模糊的程度(像素偏移范" -"围)。" +"`power` (float, default value: `0.03`, range: `0-1`): Look at above images, " +"intensity of blur (Range of pixel offset)." #: src/feature/effect/builtin/pixel.md:3 #, fuzzy msgid "像素化效果。" -msgstr "像素化效果。" +msgstr "Pixelated effect." #: src/feature/effect/builtin/pixel.md:5 #, fuzzy msgid "![示例](image/pixel.png)" -msgstr "![示例](image/pixel.png)" +msgstr "![example](image/pixel.png)" #: src/feature/effect/builtin/pixel.md:9 #, fuzzy msgid "`size`(小数,默认 `10.0`):像素化后的单个像素大小。" -msgstr "`size`(小数,默认 `10.0`):像素化后的单个像素大小。" +msgstr "" +"`size` (float, default value: `10.0`): Size of individual pixels after pixelation." #: src/feature/effect/builtin/radialBlur.md:3 #, fuzzy msgid "放射模糊。" -msgstr "放射模糊。" +msgstr "Radial blur." #: src/feature/effect/builtin/radialBlur.md:5 #, fuzzy msgid "![示例](image/radialBlur.png)" -msgstr "![示例](image/radialBlur.png)" +msgstr "![example](image/radialBlur.png)" #: src/feature/effect/builtin/radialBlur.md:9 #, fuzzy msgid "`centerX`(小数,默认 `0.5`,范围 `0-1`):放射中心的 X 坐标;" -msgstr "`centerX`(小数,默认 `0.5`,范围 `0-1`):放射中心的 X 坐标;" +msgstr "" +"`centerX` (float, default value: `0.5`, range: `0-1`): X coordinate of the effect " +"center." #: src/feature/effect/builtin/radialBlur.md:10 #, fuzzy msgid "`centerY`(小数,默认 `0.5`,范围 `0-1`):放射中心的 Y 坐标;" -msgstr "`centerY`(小数,默认 `0.5`,范围 `0-1`):放射中心的 Y 坐标;" +msgstr "" +"`centerY` (float, default value: `0.5`, range: `0-1`): Y coordinate of the effect " +"center." #: src/feature/effect/builtin/radialBlur.md:11 #, fuzzy msgid "`power`(小数,默认 `0.01`,范围 `0-1`):放射强度;" -msgstr "`power`(小数,默认 `0.01`,范围 `0-1`):放射强度;" +msgstr "`power` (float, default value: `0.01`, range: `0-1`): Intensity of effect." #: src/feature/effect/builtin/radialBlur.md:12 #, fuzzy msgid "" -"`sampleCount`(整数,默认 `3`,范围 `1-64`):采样次数,越高显示会更连贯,开" -"销也更大。" +"`sampleCount`(整数,默认 `3`,范围 `1-64`):采样次数,越高显示会更连贯,开销也更" +"大。" msgstr "" -"`sampleCount`(整数,默认 `3`,范围 `1-64`):采样次数,越高显示会更连贯,开" -"销也更大。" +"`sampleCount` (integer, default value: `3`, range: `1-64`): Sample count, the " +"higher the value, the display will be more coherent, and the overhead will be " +"higher." #: src/feature/effect/builtin/shockwave.md:3 #, fuzzy msgid "冲击波效果。建议配合 `progress` 的参数动画使用。" -msgstr "冲击波效果。建议配合 `progress` 的参数动画使用。" +msgstr "Shockwave effect. Recommended to use with `progress` parameter." #: src/feature/effect/builtin/shockwave.md:5 #, fuzzy msgid "![示例](image/shockwave.png)" -msgstr "![示例](image/shockwave.png)" +msgstr "![example](image/shockwave.png)" #: src/feature/effect/builtin/shockwave.md:9 #, fuzzy msgid "" -"`progress`(小数,默认 `0.2`,范围 `0-1`):冲击波的进度。冲击波是一个动画," -"`0` 进度为开始,直到 `1` 进度结束;" +"`progress`(小数,默认 `0.2`,范围 `0-1`):冲击波的进度。冲击波是一个动画,`0` 进" +"度为开始,直到 `1` 进度结束;" msgstr "" -"`progress`(小数,默认 `0.2`,范围 `0-1`):冲击波的进度。冲击波是一个动画," -"`0` 进度为开始,直到 `1` 进度结束;" +"`progress` (float, default value: `0.2`, range: `0-1`): Progress of the effect. " +"Shockwave is an animation, `0` for start of animation, `1` for end of animation)." #: src/feature/effect/builtin/shockwave.md:10 #, fuzzy msgid "`centerX`(小数,默认 `0.5`,范围 `0-1`):冲击波中心的 X 坐标;" -msgstr "`centerX`(小数,默认 `0.5`,范围 `0-1`):冲击波中心的 X 坐标;" +msgstr "" +"`centerX` (float, default value: `0.5`, range: `0-1`): X coordinate of the effect " +"center." #: src/feature/effect/builtin/shockwave.md:11 #, fuzzy msgid "`centerY`(小数,默认 `0.5`,范围 `0-1`):冲击波中心的 Y 坐标;" -msgstr "`centerY`(小数,默认 `0.5`,范围 `0-1`):冲击波中心的 Y 坐标;" +msgstr "" +"`centerY` (float, default value: `0.5`, range: `0-1`): Y coordinate of the effect " +"center." #: src/feature/effect/builtin/shockwave.md:12 #, fuzzy msgid "`width`(小数,默认 `0.1`):冲击波的宽度;" -msgstr "`width`(小数,默认 `0.1`):冲击波的宽度;" +msgstr "`width` (float, default value: `0.1`): Width of the effect." #: src/feature/effect/builtin/shockwave.md:13 #, fuzzy msgid "`distortion`(小数,默认 `0.8`):冲击波扭曲程度;" -msgstr "`distortion`(小数,默认 `0.8`):冲击波扭曲程度;" +msgstr "`distortion` (float, default value: `0.8`): Intensity of distortion." #: src/feature/effect/builtin/shockwave.md:14 #, fuzzy msgid "`expand`(小数,默认 `10.0`):冲击波延伸广度。" -msgstr "`expand`(小数,默认 `10.0`):冲击波延伸广度。" +msgstr "`expand` (float, default value: `10.0`): Breadth of expansion." #: src/feature/effect/builtin/vignette.md:1 msgid "vignette" @@ -1023,62 +1049,64 @@ msgstr "vignette" #: src/feature/effect/builtin/vignette.md:3 #, fuzzy msgid "" -"虚光照效果。将屏幕的边缘调暗或调成其他颜色,可以用来模拟 Arcaea 的部分异象效" -"果。" +"虚光照效果。将屏幕的边缘调暗或调成其他颜色,可以用来模拟 Arcaea 的部分异象效果。" msgstr "" -"虚光照效果。将屏幕的边缘调暗或调成其他颜色,可以用来模拟 Arcaea 的部分异象效" -"果。" +"Virtual lighting effect. Will darken or tint the edges of the screen to other " +"colors, can be used to simulate some of Arcaea's anomaly effect." #: src/feature/effect/builtin/vignette.md:5 #, fuzzy msgid "![示例](image/vignette.png)" -msgstr "![示例](image/vignette.png)" +msgstr "![example](image/vignette.png)" #: src/feature/effect/builtin/vignette.md:9 #, fuzzy msgid "`color`(颜色,默认黑色):边缘的颜色;" -msgstr "`color`(颜色,默认黑色):边缘的颜色;" +msgstr "`color` (color, default color: `black`): Color at the edges of the screen." #: src/feature/effect/builtin/vignette.md:10 #, fuzzy msgid "" -"`extend`(小数,默认 `0.25`,范围 `0-1`):边缘的延伸程度,值越大黑色部分越" -"多;" +"`extend`(小数,默认 `0.25`,范围 `0-1`):边缘的延伸程度,值越大黑色部分越多;" msgstr "" -"`extend`(小数,默认 `0.25`,范围 `0-1`):边缘的延伸程度,值越大黑色部分越" -"多;" +"`extend` (float, default value: `0.25`, range: `0-1`): The extension from the " +"edge, the larger the value, the more black parts." #: src/feature/effect/builtin/vignette.md:11 #, fuzzy msgid "`radius`(小数,默认 `15.0`):中央光照大小,值越小受到影响的范围越大。" msgstr "" -"`radius`(小数,默认 `15.0`):中央光照大小,值越小受到影响的范围越大。" +"`radius` (float, default value: `15.0`): Size of central light, the smaller the " +"value, the greater the range affacted." +# `/shader_path` would be a placeholder. A better notation is needed. #: src/feature/effect/custom-shader.md:3 #, fuzzy msgid "" -"用于特效的着色器是片元着色器。你可以自行编写着色器并将其附加于谱面压缩包中。" -"在 `shader` 字段,你需要填写 `/shader路径`。注意这里的 `/` 是必不可少的,它将" -"内置着色器和自定义着色器区分开来。" +"用于特效的着色器是片元着色器。你可以自行编写着色器并将其附加于谱面压缩包中。在 " +"`shader` 字段,你需要填写 `/shader路径`。注意这里的 `/` 是必不可少的,它将内置着色" +"器和自定义着色器区分开来。" msgstr "" -"用于特效的着色器是片元着色器。你可以自行编写着色器并将其附加于谱面压缩包中。" -"在 `shader` 字段,你需要填写 `/shader路径`。注意这里的 `/` 是必不可少的,它将" -"内置着色器和自定义着色器区分开来。" +"Fragment shaders are used for making the special effects. You can write your own " +"shaders and attach them to the chart's zip file. In the `shader` field, you need " +"to fill in the `/shader_path`. Note that the `/` must be included and this field " +"must be filled in because it distinguishes the built-in shaders from the custom " +"shaders." #: src/feature/effect/custom-shader.md:5 #, fuzzy msgid "为保证兼容性,着色器版本要求为 GLSL 1.00。" -msgstr "为保证兼容性,着色器版本要求为 GLSL 1.00。" +msgstr "For compatibility, GLSL 1.00 is used." #: src/feature/effect/custom-shader.md:7 src/uml/syntax/variable.md:13 #, fuzzy msgid "内置变量" -msgstr "内置变量" +msgstr "Built-in variables" #: src/feature/effect/custom-shader.md:9 #, fuzzy msgid "prpr 为着色器内置了如下变量:" -msgstr "prpr 为着色器内置了如下变量:" +msgstr "prpr has the following variables used for shaders:" #: src/feature/effect/custom-shader.md:11 #, fuzzy @@ -1091,30 +1119,36 @@ msgid "" "```" msgstr "" "```glsl\n" -"varying vec2 uv; // 材质 UV\n" -"uniform vec2 screenSize; // 屏幕大小(注意是整个屏幕,并不只是谱面部分)\n" -"uniform sampler2D screenTexture; // 屏幕材质(同样也是整个屏幕的材质)\n" -"uniform float time; // 谱面时间,以秒为单位\n" +"varying vec2 uv; // UV of texture\n" +"uniform vec2 screenSize; // Size of the screen (Note that it refers to the entire " +"screen, and not just the chart/gameplay area)\n" +"uniform sampler2D screenTexture; // Texture of the screen (Refers to the texture " +"of the entire screen, and not just the chart/gameplay area)\n" +"uniform float time; // The chart's time in seconds\n" "```" #: src/feature/effect/custom-shader.md:18 #, fuzzy msgid "" -"还有一些变量是虽然存在,但在片元着色器中使用无意义的。在定义自己的变量时,你" -"应该避免与它们重名:" +"还有一些变量是虽然存在,但在片元着色器中使用无意义的。在定义自己的变量时,你应该避" +"免与它们重名:" msgstr "" -"还有一些变量是虽然存在,但在片元着色器中使用无意义的。在定义自己的变量时,你" -"应该避免与它们重名:" +"There are also variables that exists, but these variables are useless in the " +"fragment shaders. When defining your own variables, you should avoid these " +"variables' name:" #: src/feature/effect/custom-shader.md:26 #, fuzzy msgid "着色器变量" -msgstr "着色器变量" +msgstr "Shader variables" +# I think it is better to put it as plural because you can have multiple uniform variables. There are also multiple uniform vairables in the example. #: src/feature/effect/custom-shader.md:28 #, fuzzy msgid "为了在谱面中可以指定参数,你需要这样定义你的着色器 `uniform` 变量:" -msgstr "为了在谱面中可以指定参数,你需要这样定义你的着色器 `uniform` 变量:" +msgstr "" +"In order to define your own parameters in the chart, you need to define your " +"shader `uniform` variables like this:" #: src/feature/effect/custom-shader.md:30 #, fuzzy @@ -1130,16 +1164,19 @@ msgstr "" #: src/feature/effect/custom-shader.md:34 #, fuzzy msgid "" -"其中 `type` 为类型,目前支持 `float`、`vec2` 和 `vec4`;`name` 为变量名;" -"`def` 为默认值。三个都是不可缺少的。" +"其中 `type` 为类型,目前支持 `float`、`vec2` 和 `vec4`;`name` 为变量名;`def` 为默" +"认值。三个都是不可缺少的。" msgstr "" -"其中 `type` 为类型,目前支持 `float`、`vec2` 和 `vec4`;`name` 为变量名;" -"`def` 为默认值。三个都是不可缺少的。" +"where `type` is the variable type, currently `float`, `vec2`, and `vec4` are " +"supported; `name` is the variable name; `def` is the default value. Any of the 3 " +"values cannot be left out." #: src/feature/effect/custom-shader.md:38 #, fuzzy msgid "下面的示例着色器将会根据 `factor` 的值给屏幕叠加上强弱不等的红色:" -msgstr "下面的示例着色器将会根据 `factor` 的值给屏幕叠加上强弱不等的红色:" +msgstr "" +"The example below shows that the shader will overlay the screen with varying " +"shades of red depending on the value of factor:" #: src/feature/effect/custom-shader.md:40 #, fuzzy @@ -1177,20 +1214,23 @@ msgstr "" #: src/feature/video/index.md:3 #, fuzzy msgid "" -"在 prpr 中,你可以在背景播放视频,但音频并不会被播放。但由于大部分视频文件都" -"较大,且 prpr 的谱面上传限制是 10MB,带有大型 BGA 的谱可能无法上传。如果在上" -"传中需要用到视频背景,建议是用来实现一些小的动画、并对视频进行压缩(包括但不" -"仅限于删除音频轨道)。" +"在 prpr 中,你可以在背景播放视频,但音频并不会被播放。但由于大部分视频文件都较大," +"且 prpr 的谱面上传限制是 10MB,带有大型 BGA 的谱可能无法上传。如果在上传中需要用到" +"视频背景,建议是用来实现一些小的动画、并对视频进行压缩(包括但不仅限于删除音频轨" +"道)。" msgstr "" -"在 prpr 中,你可以在背景播放视频,但音频并不会被播放。但由于大部分视频文件都" -"较大,且 prpr 的谱面上传限制是 10MB,带有大型 BGA 的谱可能无法上传。如果在上" -"传中需要用到视频背景,建议是用来实现一些小的动画、并对视频进行压缩(包括但不" -"仅限于删除音频轨道)。" +"In prpr, you can play a video in the background, but the audio will not be played. " +"However, since most videos have a large file size and the upload limit for prpr " +"charts is 10MB, charts that have large BGA may not be uploaded. If you need to " +"have a video background, it is recommended that the video background is used for " +"small animations and compressed (including but not limited to removing audio)." #: src/feature/video/index.md:7 #, fuzzy msgid "你需要在 `extra.json` 中加入 `videos` 字段,其内容为 `Video` 的数组。" -msgstr "你需要在 `extra.json` 中加入 `videos` 字段,其内容为 `Video` 的数组。" +msgstr "" +"You need to add a `videos` field in the `extra.json` file, whose content is an " +"array of `Video`." #: src/feature/video/index.md:9 msgid "Video" @@ -1199,7 +1239,7 @@ msgstr "Video" #: src/feature/video/index.md:11 #, fuzzy msgid "单个 `Video` 的格式如下所示:" -msgstr "单个 `Video` 的格式如下所示:" +msgstr "The format for a single `Video` is as shown below:" #: src/feature/video/index.md:15 msgid "\"path\"" @@ -1228,114 +1268,127 @@ msgstr "\"dim\"" #: src/feature/video/index.md:23 #, fuzzy msgid "其中 `path` 为必填,指向视频文件路径,其它四项均为选填。" -msgstr "其中 `path` 为必填,指向视频文件路径,其它四项均为选填。" +msgstr "" +"The `path` field is mandatory to be filled in, and it should point to the file " +"path of the video, the other four fields are optional." #: src/feature/video/index.md:25 #, fuzzy msgid "`time` 用拍数表示视频的开始时间。" -msgstr "`time` 用拍数表示视频的开始时间。" +msgstr "`time` indicates the start time of the video in terms of beat numbers." #: src/feature/video/index.md:27 #, fuzzy msgid "" -"`scale` 表示视频的缩放方式。在制作谱面时,你需要考虑在谱面不同宽高比下的显示" -"情况。为此,`scale` 有三种值可选:" +"`scale` 表示视频的缩放方式。在制作谱面时,你需要考虑在谱面不同宽高比下的显示情况。" +"为此,`scale` 有三种值可选:" msgstr "" -"`scale` 表示视频的缩放方式。在制作谱面时,你需要考虑在谱面不同宽高比下的显示" -"情况。为此,`scale` 有三种值可选:" +"`scale` indicates how the video is scaled. When making a chart, you need to " +"consider how the chart will look at different aspect ratios. For this purpose, the " +"`scale` field has 3 options available:" #: src/feature/video/index.md:29 #, fuzzy msgid "`cropCenter`(默认):等比例放大视频直到视频能恰好填满屏幕;" -msgstr "`cropCenter`(默认):等比例放大视频直到视频能恰好填满屏幕;" +msgstr "" +"`cropCenter` (default): Scales up the video uniformly until it fills the screen." #: src/feature/video/index.md:30 #, fuzzy msgid "`inside`:等比例缩放视频,保证整个视频能显示在屏幕内;" -msgstr "`inside`:等比例缩放视频,保证整个视频能显示在屏幕内;" +msgstr "" +"`inside`: Scales down the video uniformly, ensures that the entire video is shown " +"within the screen." #: src/feature/video/index.md:31 #, fuzzy msgid "`fit`:强制拉伸视频到整个屏幕。" -msgstr "`fit`:强制拉伸视频到整个屏幕。" +msgstr "`fit`: Forcefully stretch the video to the entire screen." #: src/feature/video/index.md:33 #, fuzzy msgid "" -"`alpha` 和 `scale` 分别代表视频的不透明度(若透明,则会显示下方的曲绘)和昏暗" -"程度,他们都是 [`动画变量`](../index.html#动画变量)。" +"`alpha` 和 `scale` 分别代表视频的不透明度(若透明,则会显示下方的曲绘)和昏暗程度," +"他们都是 [`动画变量`](../index.html#动画变量)。" msgstr "" -"`alpha` 和 `scale` 分别代表视频的不透明度(若透明,则会显示下方的曲绘)和昏暗" -"程度,他们都是 [`动画变量`](../index.html#动画变量)。" +"`alpha` and `dim` represents the transparency of the video (if it is invisible, " +"the song background art will be displayed instead) and dimness respectively, they " +"are both [`Animation variables`](../index.html#animation-variables)." #: src/feature/unlock_video/index.md:4 #, fuzzy msgid "**请注意解锁动画和视频背景的区别**" -msgstr "**请注意解锁动画和视频背景的区别**" +msgstr "**Please note the difference between unlock animation and video background**" #: src/feature/unlock_video/index.md:6 #, fuzzy msgid "解锁动画允许在玩家初次游玩谱面前播放一段视频。" -msgstr "解锁动画允许在玩家初次游玩谱面前播放一段视频。" +msgstr "" +"The unlock animation allows a video to be played before the player's initial " +"playthrough of the chart." #: src/feature/unlock_video/index.md:8 #, fuzzy msgid "使用方法" -msgstr "使用方法" +msgstr "Usage" #: src/feature/unlock_video/index.md:10 #, fuzzy msgid "目前 UI 还没做好,稍微有些麻烦。下面的步骤建议在 Windows 上进行。" -msgstr "目前 UI 还没做好,稍微有些麻烦。下面的步骤建议在 Windows 上进行。" +msgstr "" +"The UI is currently not ready and is slightly cumbersome. The following steps are " +"recommended for Windows." #: src/feature/unlock_video/index.md:12 #, fuzzy msgid "如果你的谱面已经有了 `info.yml`,请跳转到第三步。" -msgstr "如果你的谱面已经有了 `info.yml`,请跳转到第三步。" +msgstr "If your chart already has `info.yml`, please skip to step three." #: src/feature/unlock_video/index.md:14 #, fuzzy msgid "在 Phira 中导入你的谱面;" -msgstr "在 Phira 中导入你的谱面;" +msgstr "Import your chart in Phira." #: src/feature/unlock_video/index.md:15 #, fuzzy msgid "" -"在 `data/charts/custom` 中搜索你的谱面 ID(如 `9067228`),找到对应的文件夹," -"在里面找到 `info.yml`,拷贝到你的谱面文件夹里(注意不是导入到 Phira 后的文件" -"夹,是 pez 解压出来的文件夹);" +"在 `data/charts/custom` 中搜索你的谱面 ID(如 `9067228`),找到对应的文件夹,在里面" +"找到 `info.yml`,拷贝到你的谱面文件夹里(注意不是导入到 Phira 后的文件夹,是 pez 解" +"压出来的文件夹);" msgstr "" -"在 `data/charts/custom` 中搜索你的谱面 ID(如 `9067228`),找到对应的文件夹," -"在里面找到 `info.yml`,拷贝到你的谱面文件夹里(注意不是导入到 Phira 后的文件" -"夹,是 pez 解压出来的文件夹);" +"Search for your chart ID in `data/charts/custom` (e.g. `9067228`), locate the " +"corresponding folder, find `info.yml` in the folder, and copy it to your chart " +"folder (Note that the folder mentioned here is not the folder that you get after " +"importing into Phira, it's the folder that you extracted from pez)." #: src/feature/unlock_video/index.md:16 #, fuzzy msgid "" -"向你的谱面文件夹(注意不是导入到 Phira 后的文件夹,是 pez 解压出来的文件夹)" -"内加入解锁动画,假设文件名为 `unlock.mp4`;" +"向你的谱面文件夹(注意不是导入到 Phira 后的文件夹,是 pez 解压出来的文件夹)内加入" +"解锁动画,假设文件名为 `unlock.mp4`;" msgstr "" -"向你的谱面文件夹(注意不是导入到 Phira 后的文件夹,是 pez 解压出来的文件夹)" -"内加入解锁动画,假设文件名为 `unlock.mp4`;" +"Add the unlock animation to your chart folder (Note that the folder mentioned here " +"is not the folder that you get after importing into Phira, it's the folder that " +"you extracted from pez), assuming the file name is `unlock.mp4`." #: src/feature/unlock_video/index.md:17 #, fuzzy msgid "" -"在 `info.yml` 中找到 `unlockVideo: null` 一行,替换为 `unlockVideo: unlock." -"mp4`(如果没有这一行,则加上这一行);" +"在 `info.yml` 中找到 `unlockVideo: null` 一行,替换为 `unlockVideo: unlock.mp4`(如" +"果没有这一行,则加上这一行);" msgstr "" -"在 `info.yml` 中找到 `unlockVideo: null` 一行,替换为 `unlockVideo: unlock." -"mp4`(如果没有这一行,则加上这一行);" +"Find the line `unlockVideo: null` in `info.yml` and replace it with `unlockVideo: " +"unlock.mp4` (or add that line if it's not there)." #: src/feature/unlock_video/index.md:18 #, fuzzy msgid "重新导入你的谱面。" -msgstr "重新导入你的谱面。" +msgstr "Re-import your chart." #: src/uml/index.md:1 #, fuzzy msgid "UML 文档" -msgstr "UML 文档" +msgstr "UML documentation" #: src/uml/index.md:3 #, fuzzy @@ -1345,11 +1398,11 @@ msgstr "UML 文件是 UI 描述文件, 可以用来创建于代码解耦的可 #: src/uml/syntax/index.md:3 #, fuzzy msgid "" -"UML 文件格式是纯文本的人类可读格式. UML 由 Element(元素), 注释和变量定义语句" -"构成, 每个元素占据一或多行. " +"UML 文件格式是纯文本的人类可读格式. UML 由 Element(元素), 注释和变量定义语句构成, " +"每个元素占据一或多行. " msgstr "" -"UML 文件格式是纯文本的人类可读格式. UML 由 Element(元素), 注释和变量定义语句" -"构成, 每个元素占据一或多行. " +"UML 文件格式是纯文本的人类可读格式. UML 由 Element(元素), 注释和变量定义语句构成, " +"每个元素占据一或多行. " #: src/uml/syntax/coordinate.md:3 #, fuzzy @@ -1359,11 +1412,11 @@ msgstr "坐标原点在进入活动页后下滑一屏后的左上角处, `x` 轴 #: src/uml/syntax/coordinate.md:5 #, fuzzy msgid "" -"屏幕宽度总是 `2`, 可以通过宽高比计算屏幕高度, 参见[内置变量](./variable.md#内" -"置变量)." +"屏幕宽度总是 `2`, 可以通过宽高比计算屏幕高度, 参见[内置变量](./variable.md#内置变" +"量)." msgstr "" -"屏幕宽度总是 `2`, 可以通过宽高比计算屏幕高度, 参见[内置变量](./variable.md#内" -"置变量)." +"屏幕宽度总是 `2`, 可以通过宽高比计算屏幕高度, 参见[内置变量](./variable.md#内置变" +"量)." #: src/uml/syntax/type.md:3 #, fuzzy @@ -1386,11 +1439,11 @@ msgstr "`Rect`" #: src/uml/syntax/type.md:11 #, fuzzy msgid "" -"矩形. 由 `[left, top, width, height]`(分别是左上角 `x` 坐标, 左上角 `y` 坐" -"标, 矩形宽度, 矩形高度)定义." +"矩形. 由 `[left, top, width, height]`(分别是左上角 `x` 坐标, 左上角 `y` 坐标, 矩形" +"宽度, 矩形高度)定义." msgstr "" -"矩形. 由 `[left, top, width, height]`(分别是左上角 `x` 坐标, 左上角 `y` 坐" -"标, 矩形宽度, 矩形高度)定义." +"矩形. 由 `[left, top, width, height]`(分别是左上角 `x` 坐标, 左上角 `y` 坐标, 矩形" +"宽度, 矩形高度)定义." #: src/uml/syntax/type.md:13 #, fuzzy @@ -1505,7 +1558,7 @@ msgstr "`\"join\"`: 参与该活动" #: src/uml/syntax/type.md:42 #, fuzzy msgid "`\"open:url\"`: 打开指定 URL" -msgstr "`\"open:url\"`: 打开指定 URL" +msgstr "`\"open:url\"`: Opens the specified URL" #: src/uml/syntax/type.md:43 #, fuzzy @@ -1515,76 +1568,74 @@ msgstr "`URL`: 网址" #: src/uml/syntax/expression.md:3 #, fuzzy msgid "" -"表达式是由 `Float`, 变量, 运算符和函数组成的. 表达式经过计算是 `Float` 类型的" -"值." +"表达式是由 `Float`, 变量, 运算符和函数组成的. 表达式经过计算是 `Float` 类型的值." msgstr "" -"表达式是由 `Float`, 变量, 运算符和函数组成的. 表达式经过计算是 `Float` 类型的" -"值." +"表达式是由 `Float`, 变量, 运算符和函数组成的. 表达式经过计算是 `Float` 类型的值." #: src/uml/syntax/expression.md:5 #, fuzzy msgid "运算符" -msgstr "运算符" +msgstr "Operators" #: src/uml/syntax/expression.md:7 #, fuzzy msgid "可以使用的运算符有:" -msgstr "可以使用的运算符有:" +msgstr "The operators that can be used are:" #: src/uml/syntax/expression.md:9 #, fuzzy msgid "`+`: 加法" -msgstr "`+`: 加法" +msgstr "`+`: Addition" #: src/uml/syntax/expression.md:10 #, fuzzy msgid "`-`: 减法" -msgstr "`-`: 减法" +msgstr "`-`: Subtraction" #: src/uml/syntax/expression.md:11 #, fuzzy msgid "`*`: 乘法" -msgstr "`*`: 乘法" +msgstr "`*`: Multiplication" #: src/uml/syntax/expression.md:12 #, fuzzy msgid "`/`: 除法" -msgstr "`/`: 除法" +msgstr "`/`: Division" #: src/uml/syntax/expression.md:13 #, fuzzy msgid "`()`: 括号, 用于改变运算顺序" -msgstr "`()`: 括号, 用于改变运算顺序" +msgstr "`()`: Parentheses, used to change the order of operations" #: src/uml/syntax/expression.md:14 #, fuzzy msgid "`==`: 是否等于, 成立时值为 `1`, 否则为 `0`" -msgstr "`==`: 是否等于, 成立时值为 `1`, 否则为 `0`" +msgstr "`==`: Is equal to, `1` if true, `0` otherwise." #: src/uml/syntax/expression.md:15 #, fuzzy msgid "`!=`: 是否不等于, 成立时值为 `1`, 否则为 `0`" -msgstr "`!=`: 是否不等于, 成立时值为 `1`, 否则为 `0`" +msgstr "`! =`: If not equal, value is `1` if true, `0` otherwise." #: src/uml/syntax/expression.md:16 #, fuzzy msgid "`>`: 是否大于, 成立时值为 `1`, 否则为 `0`" -msgstr "`>`: 是否大于, 成立时值为 `1`, 否则为 `0`" +msgstr "`>`: Is more than, `1` if true, `0` otherwise." #: src/uml/syntax/expression.md:17 #, fuzzy msgid "`<`: 是否小于, 成立时值为 `1`, 否则为 `0`" -msgstr "`<`: 是否小于, 成立时值为 `1`, 否则为 `0`" +msgstr "`<`: Is less than, `1` if true, `0` otherwise." #: src/uml/syntax/expression.md:18 #, fuzzy msgid "`>=`: 是否大于等于, 成立时值为 `1`, 否则为 `0`" -msgstr "`>=`: 是否大于等于, 成立时值为 `1`, 否则为 `0`" +msgstr "`>=`: Is more than or equal to, `1` if true, `0` otherwise." #: src/uml/syntax/expression.md:19 #, fuzzy msgid "`<=`: 是否小于等于, 成立时值为 `1`, 否则为 `0`" -msgstr "`<=`: 是否小于等于, 成立时值为 `1`, 否则为 `0`" +msgstr "`<=`: Is less than or equal to, `1` if true, `0` otherwise." #: src/uml/syntax/expression.md:21 #, fuzzy @@ -1614,7 +1665,7 @@ msgstr "`tan(x)`: 正切函数" #: src/uml/syntax/expression.md:28 #, fuzzy msgid "`abs(x)`: 绝对值函数" -msgstr "`abs(x)`: 绝对值函数" +msgstr "`abs(x)`: Absolute value function" #: src/uml/syntax/expression.md:29 #, fuzzy @@ -1633,10 +1684,8 @@ msgstr "`ln(x)`: 自然对数函数" #: src/uml/syntax/expression.md:32 #, fuzzy -msgid "" -"`sig(x)`: 符号函数, `x` 为 `+0` 或正数时返回 `1`, 为 `-0` 或负数时返回 `-1`" -msgstr "" -"`sig(x)`: 符号函数, `x` 为 `+0` 或正数时返回 `1`, 为 `-0` 或负数时返回 `-1`" +msgid "`sig(x)`: 符号函数, `x` 为 `+0` 或正数时返回 `1`, 为 `-0` 或负数时返回 `-1`" +msgstr "`sig(x)`: 符号函数, `x` 为 `+0` 或正数时返回 `1`, 为 `-0` 或负数时返回 `-1`" #: src/uml/syntax/expression.md:33 #, fuzzy @@ -1686,20 +1735,20 @@ msgstr "变量是 UML 中可以被读取或者写入的值, 定义方式如下:" #: src/uml/syntax/variable.md:9 #, fuzzy msgid "" -"定义一个变量 `name`, 其值为 `value`. `value` 可以是 `Float` 或 `Rect` 类型的" -"值, 或结果是 `Float` 或 `Rect` 类型的表达式." +"定义一个变量 `name`, 其值为 `value`. `value` 可以是 `Float` 或 `Rect` 类型的值, 或" +"结果是 `Float` 或 `Rect` 类型的表达式." msgstr "" -"定义一个变量 `name`, 其值为 `value`. `value` 可以是 `Float` 或 `Rect` 类型的" -"值, 或结果是 `Float` 或 `Rect` 类型的表达式." +"定义一个变量 `name`, 其值为 `value`. `value` 可以是 `Float` 或 `Rect` 类型的值, 或" +"结果是 `Float` 或 `Rect` 类型的表达式." #: src/uml/syntax/variable.md:11 #, fuzzy msgid "" -"变量可以被重复定义, 但只有最后一次定义的值会被使用. 定义变量后, 你可以在新建" -"元素或定义其他变量时使用这个变量." +"变量可以被重复定义, 但只有最后一次定义的值会被使用. 定义变量后, 你可以在新建元素或" +"定义其他变量时使用这个变量." msgstr "" -"变量可以被重复定义, 但只有最后一次定义的值会被使用. 定义变量后, 你可以在新建" -"元素或定义其他变量时使用这个变量." +"变量可以被重复定义, 但只有最后一次定义的值会被使用. 定义变量后, 你可以在新建元素或" +"定义其他变量时使用这个变量." #: src/uml/syntax/variable.md:15 #, fuzzy @@ -1729,16 +1778,18 @@ msgstr "`joined`: 是否已经参与了该活动, 参与了时值为 `1`, 否则 #: src/uml/syntax/variable.md:21 #, fuzzy msgid "`$h`: 用户能滚动的最大高度, 通过设置该变量的值来限制用户的滚动范围" -msgstr "`$h`: 用户能滚动的最大高度, 通过设置该变量的值来限制用户的滚动范围" +msgstr "" +"`$h`: The maximum height that the user can scroll, limit the user's scrolling " +"range by setting the value of this variable" #: src/uml/syntax/variable.md:23 #, fuzzy msgid "" -"UML 并不具备事件功能, 可以利用 `t`, `o` 和[按钮](./elements/btn.md)的按下时刻" -"来为页面添加动态效果, 如动画, 换页等." +"UML 并不具备事件功能, 可以利用 `t`, `o` 和[按钮](./elements/btn.md)的按下时刻来为页" +"面添加动态效果, 如动画, 换页等." msgstr "" -"UML 并不具备事件功能, 可以利用 `t`, `o` 和[按钮](./elements/btn.md)的按下时刻" -"来为页面添加动态效果, 如动画, 换页等." +"UML 并不具备事件功能, 可以利用 `t`, `o` 和[按钮](./elements/btn.md)的按下时刻来为页" +"面添加动态效果, 如动画, 换页等." #: src/uml/syntax/variable.md:25 #, fuzzy @@ -1748,36 +1799,30 @@ msgstr "全局变量" #: src/uml/syntax/variable.md:27 #, fuzzy msgid "" -"全局变量是在 UML 文件的任何地方都可以被读取或者写入的变量. 全局变量的定义方式" -"如下:" +"全局变量是在 UML 文件的任何地方都可以被读取或者写入的变量. 全局变量的定义方式如下:" msgstr "" -"全局变量是在 UML 文件的任何地方都可以被读取或者写入的变量. 全局变量的定义方式" -"如下:" +"全局变量是在 UML 文件的任何地方都可以被读取或者写入的变量. 全局变量的定义方式如下:" #: src/uml/syntax/variable.md:33 #, fuzzy msgid "" -"其中, `type` 只能为 `btn`. 此后, 你仍然可以通过 `let` 的方式写入全局变量, 只" -"有最后一次定义的值会被使用." +"其中, `type` 只能为 `btn`. 此后, 你仍然可以通过 `let` 的方式写入全局变量, 只有最后" +"一次定义的值会被使用." msgstr "" -"其中, `type` 只能为 `btn`. 此后, 你仍然可以通过 `let` 的方式写入全局变量, 只" -"有最后一次定义的值会被使用." +"其中, `type` 只能为 `btn`. 此后, 你仍然可以通过 `let` 的方式写入全局变量, 只有最后" +"一次定义的值会被使用." #: src/uml/syntax/variable.md:35 #, fuzzy -msgid "" -"活动界面在每一帧都会被重画, 这意味着 UML 在每一帧都会重新计算所有变量的值." -msgstr "" -"活动界面在每一帧都会被重画, 这意味着 UML 在每一帧都会重新计算所有变量的值." +msgid "活动界面在每一帧都会被重画, 这意味着 UML 在每一帧都会重新计算所有变量的值." +msgstr "活动界面在每一帧都会被重画, 这意味着 UML 在每一帧都会重新计算所有变量的值." #: src/uml/syntax/variable.md:37 #, fuzzy msgid "" -"但[按钮](./elements/btn.md)的一些属性需要在帧之间保持不变, 因此需要使用全局变" -"量." +"但[按钮](./elements/btn.md)的一些属性需要在帧之间保持不变, 因此需要使用全局变量." msgstr "" -"但[按钮](./elements/btn.md)的一些属性需要在帧之间保持不变, 因此需要使用全局变" -"量." +"但[按钮](./elements/btn.md)的一些属性需要在帧之间保持不变, 因此需要使用全局变量." #: src/uml/syntax/element.md:3 #, fuzzy @@ -1787,27 +1832,25 @@ msgstr "元素是活动界面中的可视或可交互的对象, 定义方式如 #: src/uml/syntax/element.md:9 #, fuzzy msgid "" -"其中, `type` 为元素的类型, `attrN` 和 `valueN` 分别为属性名称和属性值. 不同类" -"型的元素的属性也各不相同, 其中一些是必填, 会在介绍元素时具体标注." +"其中, `type` 为元素的类型, `attrN` 和 `valueN` 分别为属性名称和属性值. 不同类型的元" +"素的属性也各不相同, 其中一些是必填, 会在介绍元素时具体标注." msgstr "" -"其中, `type` 为元素的类型, `attrN` 和 `valueN` 分别为属性名称和属性值. 不同类" -"型的元素的属性也各不相同, 其中一些是必填, 会在介绍元素时具体标注." +"其中, `type` 为元素的类型, `attrN` 和 `valueN` 分别为属性名称和属性值. 不同类型的元" +"素的属性也各不相同, 其中一些是必填, 会在介绍元素时具体标注." #: src/uml/syntax/element.md:11 #, fuzzy msgid "" -"元素的 `id` 属性为所有元素共有的可选属性, 在元素被定义后, 其 `id` 属性将自动" -"对应一个表示该元素绘制范围的 `Rect` 变量." +"元素的 `id` 属性为所有元素共有的可选属性, 在元素被定义后, 其 `id` 属性将自动对应一" +"个表示该元素绘制范围的 `Rect` 变量." msgstr "" -"元素的 `id` 属性为所有元素共有的可选属性, 在元素被定义后, 其 `id` 属性将自动" -"对应一个表示该元素绘制范围的 `Rect` 变量." +"元素的 `id` 属性为所有元素共有的可选属性, 在元素被定义后, 其 `id` 属性将自动对应一" +"个表示该元素绘制范围的 `Rect` 变量." #: src/uml/syntax/element.md:13 #, fuzzy -msgid "" -"后面的 `{ Hello }` 是可选内容, 代表该元素的文字内容. 只对 `p`(段落元素)生效." -msgstr "" -"后面的 `{ Hello }` 是可选内容, 代表该元素的文字内容. 只对 `p`(段落元素)生效." +msgid "后面的 `{ Hello }` 是可选内容, 代表该元素的文字内容. 只对 `p`(段落元素)生效." +msgstr "后面的 `{ Hello }` 是可选内容, 代表该元素的文字内容. 只对 `p`(段落元素)生效." #: src/uml/syntax/elements/p.md:9 src/uml/syntax/elements/img.md:7 #: src/uml/syntax/elements/col.md:7 src/uml/syntax/elements/btn.md:7 @@ -1828,11 +1871,11 @@ msgstr "`y`(选填, 默认为 `0`): 文本 `y` 坐标" #: src/uml/syntax/elements/p.md:12 #, fuzzy msgid "" -"`ax`(选填, 默认为 `0`): 文本横向对齐, `[0, 1]` 间的浮点数. 为 `0` 时, 按照 " -"`x` 坐标左对齐, 为 `1` 时右对齐, `0.5` 时居中" +"`ax`(选填, 默认为 `0`): 文本横向对齐, `[0, 1]` 间的浮点数. 为 `0` 时, 按照 `x` 坐标" +"左对齐, 为 `1` 时右对齐, `0.5` 时居中" msgstr "" -"`ax`(选填, 默认为 `0`): 文本横向对齐, `[0, 1]` 间的浮点数. 为 `0` 时, 按照 " -"`x` 坐标左对齐, 为 `1` 时右对齐, `0.5` 时居中" +"`ax`(选填, 默认为 `0`): 文本横向对齐, `[0, 1]` 间的浮点数. 为 `0` 时, 按照 `x` 坐标" +"左对齐, 为 `1` 时右对齐, `0.5` 时居中" #: src/uml/syntax/elements/p.md:13 #, fuzzy @@ -1846,19 +1889,17 @@ msgstr "`size`(选填, 默认为 `1`): 文本大小" #: src/uml/syntax/elements/p.md:15 #, fuzzy -msgid "" -"`ml`(选填, 默认为 `false`): 文本是否多行渲染, 只在设置了 `mw` 的条件下有效" -msgstr "" -"`ml`(选填, 默认为 `false`): 文本是否多行渲染, 只在设置了 `mw` 的条件下有效" +msgid "`ml`(选填, 默认为 `false`): 文本是否多行渲染, 只在设置了 `mw` 的条件下有效" +msgstr "`ml`(选填, 默认为 `false`): 文本是否多行渲染, 只在设置了 `mw` 的条件下有效" #: src/uml/syntax/elements/p.md:16 #, fuzzy msgid "" -"`mw`(选填): 文本最大宽度. 在单行模式下, 超出范围的文本将被省略;多行模式下将" -"自动换行" +"`mw`(选填): 文本最大宽度. 在单行模式下, 超出范围的文本将被省略;多行模式下将自动换" +"行" msgstr "" -"`mw`(选填): 文本最大宽度. 在单行模式下, 超出范围的文本将被省略;多行模式下将" -"自动换行" +"`mw`(选填): 文本最大宽度. 在单行模式下, 超出范围的文本将被省略;多行模式下将自动换" +"行" #: src/uml/syntax/elements/p.md:17 #, fuzzy @@ -1878,11 +1919,9 @@ msgstr "`Text`(必填): 文本内容" #: src/uml/syntax/elements/p.md:21 #, fuzzy msgid "" -"`p` 的位置并不通过完整的矩形来定义, 但你仍可以用 `p` 的 `id` 属性来获取其矩形" -"区域." +"`p` 的位置并不通过完整的矩形来定义, 但你仍可以用 `p` 的 `id` 属性来获取其矩形区域." msgstr "" -"`p` 的位置并不通过完整的矩形来定义, 但你仍可以用 `p` 的 `id` 属性来获取其矩形" -"区域." +"`p` 的位置并不通过完整的矩形来定义, 但你仍可以用 `p` 的 `id` 属性来获取其矩形区域." #: src/uml/syntax/elements/img.md:8 #, fuzzy @@ -1897,11 +1936,9 @@ msgstr "`r`(必填): 图片显示的位置矩形, 类型为 `Rect`" #: src/uml/syntax/elements/img.md:10 #, fuzzy msgid "" -"`c`(选填, 默认为 `\"white\"`): 在图片上叠加的颜色. 若颜色半透明, 图片也会半透" -"明" +"`c`(选填, 默认为 `\"white\"`): 在图片上叠加的颜色. 若颜色半透明, 图片也会半透明" msgstr "" -"`c`(选填, 默认为 `\"white\"`): 在图片上叠加的颜色. 若颜色半透明, 图片也会半透" -"明" +"`c`(选填, 默认为 `\"white\"`): 在图片上叠加的颜色. 若颜色半透明, 图片也会半透明" #: src/uml/syntax/elements/img.md:11 #, fuzzy @@ -1950,19 +1987,15 @@ msgstr "`r`(必填): 按钮显示的位置矩形, 类型为 `Rect`" #: src/uml/syntax/elements/btn.md:9 #, fuzzy -msgid "" -"`action`(选填): 按钮的点击行为, 可用的值参见[数据类型](../type.md#数据类型)" -msgstr "" -"`action`(选填): 按钮的点击行为, 可用的值参见[数据类型](../type.md#数据类型)" +msgid "`action`(选填): 按钮的点击行为, 可用的值参见[数据类型](../type.md#数据类型)" +msgstr "`action`(选填): 按钮的点击行为, 可用的值参见[数据类型](../type.md#数据类型)" #: src/uml/syntax/elements/btn.md:11 #, fuzzy msgid "" -"在元素被定义后, 其 `id` 属性除了表示该元素绘制范围的 `Rect` 变量, 还具有以下" -"属性:" +"在元素被定义后, 其 `id` 属性除了表示该元素绘制范围的 `Rect` 变量, 还具有以下属性:" msgstr "" -"在元素被定义后, 其 `id` 属性除了表示该元素绘制范围的 `Rect` 变量, 还具有以下" -"属性:" +"在元素被定义后, 其 `id` 属性除了表示该元素绘制范围的 `Rect` 变量, 还具有以下属性:" #: src/uml/syntax/elements/btn.md:13 #, fuzzy @@ -1996,22 +2029,22 @@ msgstr "注释行在 `#` 后至少有一个字符, 否则会导致报错." #: src/uml/syntax/comment_expression.md:3 #, fuzzy msgid "" -"注释表达式是一种特殊的注释, 它是为了兼容旧版本设计的, 可以被执行的注释. 注释" -"表达式的格式如下:" +"注释表达式是一种特殊的注释, 它是为了兼容旧版本设计的, 可以被执行的注释. 注释表达式" +"的格式如下:" msgstr "" -"注释表达式是一种特殊的注释, 它是为了兼容旧版本设计的, 可以被执行的注释. 注释" -"表达式的格式如下:" +"注释表达式是一种特殊的注释, 它是为了兼容旧版本设计的, 可以被执行的注释. 注释表达式" +"的格式如下:" #: src/uml/syntax/comment_expression.md:9 #, fuzzy msgid "" -"其中, `exp` 表示该表达式的类型, 括号内的是该表达式的属性, 是可选内容, " -"`attrN` 和 `valueN` 分别为属性名称和属性值. 不同类型的表达式的属性也各不相" -"同, 其中一些是必填, 会在介绍表达式时具体标注." +"其中, `exp` 表示该表达式的类型, 括号内的是该表达式的属性, 是可选内容, `attrN` 和 " +"`valueN` 分别为属性名称和属性值. 不同类型的表达式的属性也各不相同, 其中一些是必填, " +"会在介绍表达式时具体标注." msgstr "" -"其中, `exp` 表示该表达式的类型, 括号内的是该表达式的属性, 是可选内容, " -"`attrN` 和 `valueN` 分别为属性名称和属性值. 不同类型的表达式的属性也各不相" -"同, 其中一些是必填, 会在介绍表达式时具体标注." +"其中, `exp` 表示该表达式的类型, 括号内的是该表达式的属性, 是可选内容, `attrN` 和 " +"`valueN` 分别为属性名称和属性值. 不同类型的表达式的属性也各不相同, 其中一些是必填, " +"会在介绍表达式时具体标注." #: src/uml/syntax/comment_expression.md:11 #, fuzzy @@ -2026,13 +2059,13 @@ msgstr "结束表达式 `#>pop`" #: src/uml/syntax/comment_expression.md:19 #, fuzzy msgid "" -"注释表达式以行为单位, 作用于数行内的元素, 变量等, 其作用范围是从表达式所在行" -"开始到下一个 `#>pop` 表达式所在行结束. 因此, 多数其他表达式后面都必须跟一个 " -"`#>pop` 表达式, 表示结束当前表达式的作用范围." +"注释表达式以行为单位, 作用于数行内的元素, 变量等, 其作用范围是从表达式所在行开始到" +"下一个 `#>pop` 表达式所在行结束. 因此, 多数其他表达式后面都必须跟一个 `#>pop` 表达" +"式, 表示结束当前表达式的作用范围." msgstr "" -"注释表达式以行为单位, 作用于数行内的元素, 变量等, 其作用范围是从表达式所在行" -"开始到下一个 `#>pop` 表达式所在行结束. 因此, 多数其他表达式后面都必须跟一个 " -"`#>pop` 表达式, 表示结束当前表达式的作用范围." +"注释表达式以行为单位, 作用于数行内的元素, 变量等, 其作用范围是从表达式所在行开始到" +"下一个 `#>pop` 表达式所在行结束. 因此, 多数其他表达式后面都必须跟一个 `#>pop` 表达" +"式, 表示结束当前表达式的作用范围." #: src/uml/syntax/comment_expression.md:21 #, fuzzy @@ -2077,11 +2110,11 @@ msgstr "透明度表达式 `#>alpha`" #: src/uml/syntax/comment_expression.md:46 #, fuzzy msgid "" -"`a`(选填, 默认为 `0`): 透明度, 取值范围为 `[0, 1]`, `0` 为完全透明, `1` 为完" -"全不透明" +"`a`(选填, 默认为 `0`): 透明度, 取值范围为 `[0, 1]`, `0` 为完全透明, `1` 为完全不透" +"明" msgstr "" -"`a`(选填, 默认为 `0`): 透明度, 取值范围为 `[0, 1]`, `0` 为完全透明, `1` 为完" -"全不透明" +"`a`(optional, default `0`): transparency, range is `[0, 1]`, `0` is fully " +"transparent, `1` is fully opaque." #: src/uml/syntax/comment_expression.md:48 #, fuzzy @@ -2181,11 +2214,9 @@ msgstr "条件表达式 `#>if` 等" #: src/uml/syntax/comment_expression.md:85 #, fuzzy msgid "" -"`condition`(必填): 条件表达式, 可以是任意表达式, 当值为 `0` 表示假, 否则表示" -"真." +"`condition`(必填): 条件表达式, 可以是任意表达式, 当值为 `0` 表示假, 否则表示真." msgstr "" -"`condition`(必填): 条件表达式, 可以是任意表达式, 当值为 `0` 表示假, 否则表示" -"真." +"`condition`(必填): 条件表达式, 可以是任意表达式, 当值为 `0` 表示假, 否则表示真." #: src/uml/syntax/comment_expression.md:87 #, fuzzy @@ -2200,31 +2231,31 @@ msgstr "低版本兼容表达式 `#>if-no-v2`" #: src/uml/syntax/comment_expression.md:95 #, fuzzy msgid "" -"如果你的 UML 文件中使用了 V2 版本中没有的特性, 可以在使用这个表达式显示部分元" -"素, 以提示使用低版本的 Phira 客户端的用户尽快升级." +"如果你的 UML 文件中使用了 V2 版本中没有的特性, 可以在使用这个表达式显示部分元素, 以" +"提示使用低版本的 Phira 客户端的用户尽快升级." msgstr "" -"如果你的 UML 文件中使用了 V2 版本中没有的特性, 可以在使用这个表达式显示部分元" -"素, 以提示使用低版本的 Phira 客户端的用户尽快升级." +"如果你的 UML 文件中使用了 V2 版本中没有的特性, 可以在使用这个表达式显示部分元素, 以" +"提示使用低版本的 Phira 客户端的用户尽快升级." #: src/uml/syntax/comment_expression.md:97 #, fuzzy msgid "" -"注释表达式是 V2 版本的新功能, 只在 V2 版本中有效, 在 V1 版本中会被当作一般注" -"释忽略. `#if-no-v2` 表达式实际上的作用是忽略其作用范围内的内容." +"注释表达式是 V2 版本的新功能, 只在 V2 版本中有效, 在 V1 版本中会被当作一般注释忽" +"略. `#if-no-v2` 表达式实际上的作用是忽略其作用范围内的内容." msgstr "" -"注释表达式是 V2 版本的新功能, 只在 V2 版本中有效, 在 V1 版本中会被当作一般注" -"释忽略. `#if-no-v2` 表达式实际上的作用是忽略其作用范围内的内容." +"注释表达式是 V2 版本的新功能, 只在 V2 版本中有效, 在 V1 版本中会被当作一般注释忽" +"略. `#if-no-v2` 表达式实际上的作用是忽略其作用范围内的内容." #: src/uml/debugging.md:3 #, fuzzy msgid "" -"编译 `phira-main` 时加入参数 `--features event_debug`, 然后在 Phira 客户端可" -"执行文件同目录下新建名为 `test.uml` 的文件. 此后进入任意一个活动, 页面内容将" -"与 `test.uml` 保持实时同步." +"编译 `phira-main` 时加入参数 `--features event_debug`, 然后在 Phira 客户端可执行文" +"件同目录下新建名为 `test.uml` 的文件. 此后进入任意一个活动, 页面内容将与 `test." +"uml` 保持实时同步." msgstr "" -"编译 `phira-main` 时加入参数 `--features event_debug`, 然后在 Phira 客户端可" -"执行文件同目录下新建名为 `test.uml` 的文件. 此后进入任意一个活动, 页面内容将" -"与 `test.uml` 保持实时同步." +"编译 `phira-main` 时加入参数 `--features event_debug`, 然后在 Phira 客户端可执行文" +"件同目录下新建名为 `test.uml` 的文件. 此后进入任意一个活动, 页面内容将与 `test." +"uml` 保持实时同步." #: src/uml/examples/index.md:3 #, fuzzy @@ -2234,11 +2265,11 @@ msgstr "提供了几个 UML 的样例, 可供参考." #: src/uml/examples/template_event.md:3 #, fuzzy msgid "" -"此文件为 sjfhsjfh 于 2024-02-07 凌晨为 _2024 羽笙杯_创建的活动文件, 鉴于活动" -"方要求过于抽象, sjfhsjfh 决定写一个仅包含基本功能的页面." +"此文件为 sjfhsjfh 于 2024-02-07 凌晨为 _2024 羽笙杯_创建的活动文件, 鉴于活动方要求" +"过于抽象, sjfhsjfh 决定写一个仅包含基本功能的页面." msgstr "" -"此文件为 sjfhsjfh 于 2024-02-07 凌晨为 _2024 羽笙杯_创建的活动文件, 鉴于活动" -"方要求过于抽象, sjfhsjfh 决定写一个仅包含基本功能的页面." +"此文件为 sjfhsjfh 于 2024-02-07 凌晨为 _2024 羽笙杯_创建的活动文件, 鉴于活动方要求" +"过于抽象, sjfhsjfh 决定写一个仅包含基本功能的页面." #: src/uml/examples/template_event.md:5 src/uml/examples/xmas-2024.md:5 #, fuzzy @@ -2259,12 +2290,12 @@ msgid "" "\n" "let bg_rect = [0, 0 - rh + o, 2, rh]\n" "\n" -"img(id: bg, url: \"https://files-cf.phira.cn/events/xmas-2023-kedmue/bg." -"jpeg\", r: bg_rect, t: cropCenter)\n" +"img(id: bg, url: \"https://files-cf.phira.cn/events/xmas-2023-kedmue/bg.jpeg\", r: " +"bg_rect, t: cropCenter)\n" "\n" "# Back button\n" -"let back_btn_rect = [bg_rect.x + 100 / w * 2, bg_rect.t + 50 / h * rh, -45 / " -"w * 2, 75 / h * 1.18]\n" +"let back_btn_rect = [bg_rect.x + 100 / w * 2, bg_rect.t + 50 / h * rh, -45 / w * " +"2, 75 / h * 1.18]\n" "img(id: back_btn_img, url: \"https://files-cf.phira.cn/ltc-arrow.png\", r: " "back_btn_rect, t: fit)\n" "btn(id: back_btn, r: back_btn_rect, action: \"exit\")\n" @@ -2275,24 +2306,24 @@ msgid "" "let dx1 = 0.003 * sin(90 * t) + 0.01 * sin(11.5 * (1 + t / 100000) * t)\n" "let dy1 = 0.004 * sin(87 * t) + 0.008 * sin(11.3 * (1 + t / 10000) * t)\n" "let s1 = 1 + 0.03 * sin(10 * exp(1.01 * ln(t)) - 2 * t)\n" -"let col_r1 = [bg_rect.l + 0.87 + dx1 + 0.45 * (1 - s1), bg_rect.t + 0.452 * " -"rh + dy1 + chart_h * (1 - s1), 0.45 * s1, chart_h * s1]\n" +"let col_r1 = [bg_rect.l + 0.87 + dx1 + 0.45 * (1 - s1), bg_rect.t + 0.452 * rh + " +"dy1 + chart_h * (1 - s1), 0.45 * s1, chart_h * s1]\n" "col(id: col_xmas, cid: 12762, r: col_r1, rn: 1, rh: chart_h * s1)\n" "\n" "# left-bottom\n" "let dx2 = 0.003 * sin(89 * t) + 0.01 * sin(12 * (1 + t / 99000) * t)\n" "let dy2 = 0.004 * sin(88 * t) + 0.0069 * sin(15 * (1 + t / 11000) * t)\n" "let s2 = 1 + 0.03 * sin(10.45 * exp(0.99 * ln(t)) + t)\n" -"let col_r2 = [bg_rect.l + 1.02 + dx2 + 0.45 * (1 - s2), bg_rect.t + 0.72 * " -"rh + dy2 + chart_h * (1 - s2), 0.45 * s2, chart_h * s2]\n" +"let col_r2 = [bg_rect.l + 1.02 + dx2 + 0.45 * (1 - s2), bg_rect.t + 0.72 * rh + " +"dy2 + chart_h * (1 - s2), 0.45 * s2, chart_h * s2]\n" "col(id: col_xmas, cid: 12769, r: col_r2, rn: 1, rh: chart_h * s2)\n" "\n" "# right-top\n" "let dx3 = 0.003 * sin(91 * t) + 0.01 * sin(12.5 * (1 + t / 109000) * t)\n" "let dy3 = 0.0035 * sin(86 * t) + 0.0082 * sin(11.6 * (1 + t / 9900) * t)\n" "let s3 = 1 + 0.03 * sin(10.2 * exp(1.02 * ln(t)) - 3 * t)\n" -"let col_r3 = [bg_rect.l + 1.42 + dx3 + 0.45 * (1 - s3), bg_rect.t + 0.49 * " -"rh + dy3 + chart_h * (1 - s3), 0.45 * s3, chart_h * s3]\n" +"let col_r3 = [bg_rect.l + 1.42 + dx3 + 0.45 * (1 - s3), bg_rect.t + 0.49 * rh + " +"dy3 + chart_h * (1 - s3), 0.45 * s3, chart_h * s3]\n" "col(id: col_xmas, cid: 12770, r: col_r3, rn: 1, rh: chart_h * s3)\n" "\n" "let $h = 0\n" @@ -2305,12 +2336,12 @@ msgstr "" "\n" "let bg_rect = [0, 0 - rh + o, 2, rh]\n" "\n" -"img(id: bg, url: \"https://files-cf.phira.cn/events/xmas-2023-kedmue/bg." -"jpeg\", r: bg_rect, t: cropCenter)\n" +"img(id: bg, url: \"https://files-cf.phira.cn/events/xmas-2023-kedmue/bg.jpeg\", r: " +"bg_rect, t: cropCenter)\n" "\n" "# Back button\n" -"let back_btn_rect = [bg_rect.x + 100 / w * 2, bg_rect.t + 50 / h * rh, -45 / " -"w * 2, 75 / h * 1.18]\n" +"let back_btn_rect = [bg_rect.x + 100 / w * 2, bg_rect.t + 50 / h * rh, -45 / w * " +"2, 75 / h * 1.18]\n" "img(id: back_btn_img, url: \"https://files-cf.phira.cn/ltc-arrow.png\", r: " "back_btn_rect, t: fit)\n" "btn(id: back_btn, r: back_btn_rect, action: \"exit\")\n" @@ -2321,24 +2352,24 @@ msgstr "" "let dx1 = 0.003 * sin(90 * t) + 0.01 * sin(11.5 * (1 + t / 100000) * t)\n" "let dy1 = 0.004 * sin(87 * t) + 0.008 * sin(11.3 * (1 + t / 10000) * t)\n" "let s1 = 1 + 0.03 * sin(10 * exp(1.01 * ln(t)) - 2 * t)\n" -"let col_r1 = [bg_rect.l + 0.87 + dx1 + 0.45 * (1 - s1), bg_rect.t + 0.452 * " -"rh + dy1 + chart_h * (1 - s1), 0.45 * s1, chart_h * s1]\n" +"let col_r1 = [bg_rect.l + 0.87 + dx1 + 0.45 * (1 - s1), bg_rect.t + 0.452 * rh + " +"dy1 + chart_h * (1 - s1), 0.45 * s1, chart_h * s1]\n" "col(id: col_xmas, cid: 12762, r: col_r1, rn: 1, rh: chart_h * s1)\n" "\n" "# left-bottom\n" "let dx2 = 0.003 * sin(89 * t) + 0.01 * sin(12 * (1 + t / 99000) * t)\n" "let dy2 = 0.004 * sin(88 * t) + 0.0069 * sin(15 * (1 + t / 11000) * t)\n" "let s2 = 1 + 0.03 * sin(10.45 * exp(0.99 * ln(t)) + t)\n" -"let col_r2 = [bg_rect.l + 1.02 + dx2 + 0.45 * (1 - s2), bg_rect.t + 0.72 * " -"rh + dy2 + chart_h * (1 - s2), 0.45 * s2, chart_h * s2]\n" +"let col_r2 = [bg_rect.l + 1.02 + dx2 + 0.45 * (1 - s2), bg_rect.t + 0.72 * rh + " +"dy2 + chart_h * (1 - s2), 0.45 * s2, chart_h * s2]\n" "col(id: col_xmas, cid: 12769, r: col_r2, rn: 1, rh: chart_h * s2)\n" "\n" "# right-top\n" "let dx3 = 0.003 * sin(91 * t) + 0.01 * sin(12.5 * (1 + t / 109000) * t)\n" "let dy3 = 0.0035 * sin(86 * t) + 0.0082 * sin(11.6 * (1 + t / 9900) * t)\n" "let s3 = 1 + 0.03 * sin(10.2 * exp(1.02 * ln(t)) - 3 * t)\n" -"let col_r3 = [bg_rect.l + 1.42 + dx3 + 0.45 * (1 - s3), bg_rect.t + 0.49 * " -"rh + dy3 + chart_h * (1 - s3), 0.45 * s3, chart_h * s3]\n" +"let col_r3 = [bg_rect.l + 1.42 + dx3 + 0.45 * (1 - s3), bg_rect.t + 0.49 * rh + " +"dy3 + chart_h * (1 - s3), 0.45 * s3, chart_h * s3]\n" "col(id: col_xmas, cid: 12770, r: col_r3, rn: 1, rh: chart_h * s3)\n" "\n" "let $h = 0\n" @@ -2347,20 +2378,18 @@ msgstr "" #: src/uml/advanced/index.md:3 #, fuzzy msgid "" -"UML 是一种非常简单的语言, 但是通过组合简单的元素, 我们也能实现一些较为复杂的" -"效果." +"UML 是一种非常简单的语言, 但是通过组合简单的元素, 我们也能实现一些较为复杂的效果." msgstr "" -"UML 是一种非常简单的语言, 但是通过组合简单的元素, 我们也能实现一些较为复杂的" -"效果." +"UML 是一种非常简单的语言, 但是通过组合简单的元素, 我们也能实现一些较为复杂的效果." #: src/uml/advanced/page_switch.md:3 #, fuzzy msgid "" -"如果我们希望活动界面包括多个页面, 可以通过在超出屏幕的部分放置其他页面的内" -"容, 并通过整个页面所有元素的移动达到类似页面切换的效果." +"如果我们希望活动界面包括多个页面, 可以通过在超出屏幕的部分放置其他页面的内容, 并通" +"过整个页面所有元素的移动达到类似页面切换的效果." msgstr "" -"如果我们希望活动界面包括多个页面, 可以通过在超出屏幕的部分放置其他页面的内" -"容, 并通过整个页面所有元素的移动达到类似页面切换的效果." +"如果我们希望活动界面包括多个页面, 可以通过在超出屏幕的部分放置其他页面的内容, 并通" +"过整个页面所有元素的移动达到类似页面切换的效果." #: src/uml/advanced/page_switch.md:5 #, fuzzy @@ -2380,42 +2409,40 @@ msgstr "可以在每个页面的左上角放置一个 `o` 方便计算每个页 #: src/uml/advanced/page_switch.md:255 src/uml/advanced/page_switch.md:260 #, fuzzy msgid "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"blank.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/blank.png\"" msgstr "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"blank.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/blank.png\"" #: src/uml/advanced/page_switch.md:47 #, fuzzy msgid "" -"在以上的定义中, 我们通过 `page_offset_x_n` 和 `page_offset_y_n` 定义了 `o11` " -"的偏移量, 由于其他页面的偏移量都是相对于 `o11` 的, 所以在 `o11` 移动时, 其他" -"页面的元素也会跟着移动." +"在以上的定义中, 我们通过 `page_offset_x_n` 和 `page_offset_y_n` 定义了 `o11` 的偏移" +"量, 由于其他页面的偏移量都是相对于 `o11` 的, 所以在 `o11` 移动时, 其他页面的元素也" +"会跟着移动." msgstr "" -"在以上的定义中, 我们通过 `page_offset_x_n` 和 `page_offset_y_n` 定义了 `o11` " -"的偏移量, 由于其他页面的偏移量都是相对于 `o11` 的, 所以在 `o11` 移动时, 其他" -"页面的元素也会跟着移动." +"在以上的定义中, 我们通过 `page_offset_x_n` 和 `page_offset_y_n` 定义了 `o11` 的偏移" +"量, 由于其他页面的偏移量都是相对于 `o11` 的, 所以在 `o11` 移动时, 其他页面的元素也" +"会跟着移动." #: src/uml/advanced/page_switch.md:49 #, fuzzy msgid "" -"此外, 我们还通过 `#>if` 设置了 `o22` 和 `o32` 绘制的时机. 这是为了防止纵向切" -"换后, 用户在活动首屏看到当前页面上方页面的内容. 通过这个值, 我们可以将页面上" -"方的内容移出屏幕." +"此外, 我们还通过 `#>if` 设置了 `o22` 和 `o32` 绘制的时机. 这是为了防止纵向切换后, " +"用户在活动首屏看到当前页面上方页面的内容. 通过这个值, 我们可以将页面上方的内容移出" +"屏幕." msgstr "" -"此外, 我们还通过 `#>if` 设置了 `o22` 和 `o32` 绘制的时机. 这是为了防止纵向切" -"换后, 用户在活动首屏看到当前页面上方页面的内容. 通过这个值, 我们可以将页面上" -"方的内容移出屏幕." +"此外, 我们还通过 `#>if` 设置了 `o22` 和 `o32` 绘制的时机. 这是为了防止纵向切换后, " +"用户在活动首屏看到当前页面上方页面的内容. 通过这个值, 我们可以将页面上方的内容移出" +"屏幕." #: src/uml/advanced/page_switch.md:51 #, fuzzy msgid "" -"为了得出这些偏移量的具体值, 我们需要使用定义一些用于切换页面的按钮, 并通过按" -"钮的 `last` 属性计算出偏移量的值." +"为了得出这些偏移量的具体值, 我们需要使用定义一些用于切换页面的按钮, 并通过按钮的 " +"`last` 属性计算出偏移量的值." msgstr "" -"为了得出这些偏移量的具体值, 我们需要使用定义一些用于切换页面的按钮, 并通过按" -"钮的 `last` 属性计算出偏移量的值." +"为了得出这些偏移量的具体值, 我们需要使用定义一些用于切换页面的按钮, 并通过按钮的 " +"`last` 属性计算出偏移量的值." #: src/uml/advanced/page_switch.md:74 src/uml/advanced/page_switch.md:82 #: src/uml/advanced/page_switch.md:90 src/uml/advanced/page_switch.md:265 @@ -2431,30 +2458,30 @@ msgstr "" #: src/uml/advanced/page_switch.md:94 src/uml/advanced/page_switch.md:269 #: src/uml/advanced/page_switch.md:277 src/uml/advanced/page_switch.md:285 msgid "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"left_arrow.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/left_arrow." +"png\"" msgstr "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"left_arrow.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/left_arrow." +"png\"" #: src/uml/advanced/page_switch.md:99 src/uml/advanced/page_switch.md:108 #: src/uml/advanced/page_switch.md:290 src/uml/advanced/page_switch.md:299 msgid "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"up_arrow.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/up_arrow." +"png\"" msgstr "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"up_arrow.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/up_arrow." +"png\"" #: src/uml/advanced/page_switch.md:104 src/uml/advanced/page_switch.md:114 #: src/uml/advanced/page_switch.md:295 src/uml/advanced/page_switch.md:305 #, fuzzy msgid "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"down_arrow.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/down_arrow." +"png\"" msgstr "" -"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/" -"down_arrow.png\"" +"\"https://teamflos.github.io/phira-docs/assets/uml/advanced/page_switch/down_arrow." +"png\"" #: src/uml/advanced/page_switch.md:119 #, fuzzy @@ -2494,14 +2521,14 @@ msgstr "其实全都是 sjfhsjfh 的错" #: src/dev-incident/长风的柳絮.md:3 #, fuzzy msgid "" -"此事件发生于 2023-07-10 18:53 (此为 sjfhsjfh 在内部群发送消息 \"我来磕大头了" -"\" 的时间)" +"此事件发生于 2023-07-10 18:53 (此为 sjfhsjfh 在内部群发送消息 \"我来磕大头了\" 的时" +"间)" msgstr "" -"此事件发生于 2023-07-10 18:53 (此为 sjfhsjfh 在内部群发送消息 \"我来磕大头了" -"\" 的时间)" +"此事件发生于 2023-07-10 18:53 (此为 sjfhsjfh 在内部群发送消息 \"我来磕大头了\" 的时" +"间)" -#: src/dev-incident/长风的柳絮.md:5 -#: src/dev-incident/v0.6.0更新消息.md:7 src/dev-incident/6thpecjam.md:7 +#: src/dev-incident/长风的柳絮.md:5 src/dev-incident/v0.6.0更新消息.md:7 +#: src/dev-incident/6thpecjam.md:7 #, fuzzy msgid "事件经过" msgstr "事件经过" @@ -2509,20 +2536,18 @@ msgstr "事件经过" #: src/dev-incident/长风的柳絮.md:7 #, fuzzy msgid "" -"sjfhsjfh 在手动操作数据库(使用 SQL 语句)封禁用户 \"长风的柳絮\"时, 一不小心将" -"未写完的 UPDATE 语句发送出去(没有加上 `WHERE` 关键字, 也没有写好 `SET banned " -"= TRUE`), 导致所有用户的用户名被修改为 \"长风的柳絮\"" +"sjfhsjfh 在手动操作数据库(使用 SQL 语句)封禁用户 \"长风的柳絮\"时, 一不小心将未写完" +"的 UPDATE 语句发送出去(没有加上 `WHERE` 关键字, 也没有写好 `SET banned = TRUE`), 导" +"致所有用户的用户名被修改为 \"长风的柳絮\"" msgstr "" -"sjfhsjfh 在手动操作数据库(使用 SQL 语句)封禁用户 \"长风的柳絮\"时, 一不小心将" -"未写完的 UPDATE 语句发送出去(没有加上 `WHERE` 关键字, 也没有写好 `SET banned " -"= TRUE`), 导致所有用户的用户名被修改为 \"长风的柳絮\"" +"sjfhsjfh 在手动操作数据库(使用 SQL 语句)封禁用户 \"长风的柳絮\"时, 一不小心将未写完" +"的 UPDATE 语句发送出去(没有加上 `WHERE` 关键字, 也没有写好 `SET banned = TRUE`), 导" +"致所有用户的用户名被修改为 \"长风的柳絮\"" #: src/dev-incident/长风的柳絮.md:9 #, fuzzy -msgid "" -"此事件耗费 Mivik 一整个下午和晚自习进行恢复(从日志中), 并未造成太多数据损失" -msgstr "" -"此事件耗费 Mivik 一整个下午和晚自习进行恢复(从日志中), 并未造成太多数据损失" +msgid "此事件耗费 Mivik 一整个下午和晚自习进行恢复(从日志中), 并未造成太多数据损失" +msgstr "此事件耗费 Mivik 一整个下午和晚自习进行恢复(从日志中), 并未造成太多数据损失" #: src/dev-incident/长风的柳絮.md:11 #, fuzzy @@ -2532,40 +2557,40 @@ msgstr "后记" #: src/dev-incident/长风的柳絮.md:13 #, fuzzy msgid "" -"凡事都要两面看, 此事过后 Mivik 给审核组长提供了一个方便快捷的封禁按钮, 以防止" -"类似事件再次发生. 不幸的是, sjfhsjfh 的扫帚星属性并未因此事件而消失, 见 " -"[v0.6.0 更新消息](./v0.6.0更新消息.md)" +"凡事都要两面看, 此事过后 Mivik 给审核组长提供了一个方便快捷的封禁按钮, 以防止类似事" +"件再次发生. 不幸的是, sjfhsjfh 的扫帚星属性并未因此事件而消失, 见 [v0.6.0 更新消息]" +"(./v0.6.0更新消息.md)" msgstr "" -"凡事都要两面看, 此事过后 Mivik 给审核组长提供了一个方便快捷的封禁按钮, 以防止" -"类似事件再次发生. 不幸的是, sjfhsjfh 的扫帚星属性并未因此事件而消失, 见 " -"[v0.6.0 更新消息](./v0.6.0更新消息.md)" +"凡事都要两面看, 此事过后 Mivik 给审核组长提供了一个方便快捷的封禁按钮, 以防止类似事" +"件再次发生. 不幸的是, sjfhsjfh 的扫帚星属性并未因此事件而消失, 见 [v0.6.0 更新消息]" +"(./v0.6.0更新消息.md)" #: src/dev-incident/v0.6.0更新消息.md:3 #, fuzzy msgid "" -"此事件发生于 2024-01-01 23:16 (此为 Mivik 在上架讨论群内发送消息 \"阿我草你干" -"了啥?\" 的时间)" +"此事件发生于 2024-01-01 23:16 (此为 Mivik 在上架讨论群内发送消息 \"阿我草你干了啥?" +"\" 的时间)" msgstr "" -"此事件发生于 2024-01-01 23:16 (此为 Mivik 在上架讨论群内发送消息 \"阿我草你干" -"了啥?\" 的时间)" +"此事件发生于 2024-01-01 23:16 (此为 Mivik 在上架讨论群内发送消息 \"阿我草你干了啥?" +"\" 的时间)" #: src/dev-incident/v0.6.0更新消息.md:5 #, fuzzy msgid "" -"同 [长风的柳絮](./长风的柳絮.md) 事件类似, 为手动操作数据库造成的严重后果. 此" -"事件也被称为 \"长风的柳絮 2\"" +"同 [长风的柳絮](./长风的柳絮.md) 事件类似, 为手动操作数据库造成的严重后果. 此事件也" +"被称为 \"长风的柳絮 2\"" msgstr "" -"同 [长风的柳絮](./长风的柳絮.md) 事件类似, 为手动操作数据库造成的严重后果. 此" -"事件也被称为 \"长风的柳絮 2\"" +"同 [长风的柳絮](./长风的柳絮.md) 事件类似, 为手动操作数据库造成的严重后果. 此事件也" +"被称为 \"长风的柳絮 2\"" #: src/dev-incident/v0.6.0更新消息.md:9 #, fuzzy msgid "" -"sjfhsjfh 企图修改误放出的错误公告, 且心急如焚, 故不当操作导致所有用户的所有消" -"息内容被修改为新的公告内容(即 v0.6.0 更新公告)" +"sjfhsjfh 企图修改误放出的错误公告, 且心急如焚, 故不当操作导致所有用户的所有消息内容" +"被修改为新的公告内容(即 v0.6.0 更新公告)" msgstr "" -"sjfhsjfh 企图修改误放出的错误公告, 且心急如焚, 故不当操作导致所有用户的所有消" -"息内容被修改为新的公告内容(即 v0.6.0 更新公告)" +"sjfhsjfh 企图修改误放出的错误公告, 且心急如焚, 故不当操作导致所有用户的所有消息内容" +"被修改为新的公告内容(即 v0.6.0 更新公告)" #: src/dev-incident/v0.6.0更新消息.md:11 #, fuzzy @@ -2593,10 +2618,10 @@ msgstr "注: 2024-02-09 为除夕, 大家都在守岁, 正好等着 PecJam 交 #: src/dev-incident/6thpecjam.md:9 #, fuzzy msgid "" -"sjfhsjfh 眼看大家在群里询问为何 PecJam 提交通道还未开启, 在焦急之中对 Phira " -"后端代码进行了胡乱修改, 提交时甚至没有进行编译检查, 最后不得不请 Mivik 从温暖" -"的被窝中出来帮忙修复, 实在是罪大恶极" +"sjfhsjfh 眼看大家在群里询问为何 PecJam 提交通道还未开启, 在焦急之中对 Phira 后端代" +"码进行了胡乱修改, 提交时甚至没有进行编译检查, 最后不得不请 Mivik 从温暖的被窝中出来" +"帮忙修复, 实在是罪大恶极" msgstr "" -"sjfhsjfh 眼看大家在群里询问为何 PecJam 提交通道还未开启, 在焦急之中对 Phira " -"后端代码进行了胡乱修改, 提交时甚至没有进行编译检查, 最后不得不请 Mivik 从温暖" -"的被窝中出来帮忙修复, 实在是罪大恶极" +"sjfhsjfh 眼看大家在群里询问为何 PecJam 提交通道还未开启, 在焦急之中对 Phira 后端代" +"码进行了胡乱修改, 提交时甚至没有进行编译检查, 最后不得不请 Mivik 从温暖的被窝中出来" +"帮忙修复, 实在是罪大恶极"