Skip to content

Commit 78bd365

Browse files
committed
fix: resolve fuzzy entries
1 parent 9198dd3 commit 78bd365

40 files changed

+821
-825
lines changed

c-api/frame.po

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,12 @@ msgid "Get the *frame* next outer frame."
7676
msgstr ""
7777

7878
#: ../../c-api/frame.rst:51
79-
#, fuzzy
8079
msgid ""
8180
"Return a :term:`strong reference`, or ``NULL`` if *frame* has no outer "
8281
"frame. This raises no exceptions."
83-
msgstr "回傳 :term:`strong reference` 或 ``NULL``。"
82+
msgstr ""
83+
"回傳一個 :term:`strong reference`,如果 *frame* 沒有外層 frame 則回傳 "
84+
"``NULL``。此函式不會引發例外。"
8485

8586
#: ../../c-api/frame.rst:60
8687
msgid "Get the *frame*'s :attr:`~frame.f_builtins` attribute."

c-api/memory.po

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -616,28 +616,24 @@ msgid "Free-threaded build"
616616
msgstr ""
617617

618618
#: ../../c-api/memory.rst:444
619-
#, fuzzy
620619
msgid "``\"mimalloc\"``"
621-
msgstr "``\"malloc\"``"
620+
msgstr "``\"mimalloc\"``"
622621

623622
#: ../../c-api/memory.rst:444
624-
#, fuzzy
625623
msgid "``mimalloc``"
626-
msgstr "``malloc``"
624+
msgstr "``mimalloc``"
627625

628626
#: ../../c-api/memory.rst:445
629627
msgid "Free-threaded debug build"
630628
msgstr ""
631629

632630
#: ../../c-api/memory.rst:445
633-
#, fuzzy
634631
msgid "``\"mimalloc_debug\"``"
635-
msgstr "``\"malloc_debug\"``"
632+
msgstr "``\"mimalloc_debug\"``"
636633

637634
#: ../../c-api/memory.rst:445
638-
#, fuzzy
639635
msgid "``mimalloc`` + debug"
640-
msgstr "``\"malloc_debug\"``"
636+
msgstr "``mimalloc`` + debug"
641637

642638
#: ../../c-api/memory.rst:448
643639
msgid "Legend:"

c-api/synchronization.po

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ msgstr ""
1919

2020
#: ../../c-api/synchronization.rst:6
2121
msgid "Synchronization primitives"
22-
msgstr "同步原始物件"
22+
msgstr "同步原語"
2323

2424
#: ../../c-api/synchronization.rst:8
2525
msgid "The C-API provides a basic mutual exclusion lock."

c-api/typeobj.po

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2557,9 +2557,8 @@ msgid ""
25572557
msgstr ""
25582558

25592559
#: ../../c-api/typeobj.rst:1501
2560-
#, fuzzy
25612560
msgid "This requires that :c:macro:`Py_TPFLAGS_HAVE_GC` is set."
2562-
msgstr "如果有設定此旗標,則也應該設定 :c:macro:`Py_TPFLAGS_HAVE_GC`。"
2561+
msgstr "這要求必須設定 :c:macro:`Py_TPFLAGS_HAVE_GC`。"
25632562

25642563
#: ../../c-api/typeobj.rst:1512
25652564
msgid ""

faq/programming.po

Lines changed: 413 additions & 598 deletions
Large diffs are not rendered by default.

library/_thread.po

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ msgid ""
3131
"level threading API built on top of this module."
3232
msgstr ""
3333
"這個模組提供了與多個執行緒(也稱為:dfn:`輕量級行程` 或 :dfn: `任務`)一起工作"
34-
"的低階原始物件 --- 多個控制執行緒分享其全域資料空間。為了處理同步問題,也提供"
34+
"的低階原語 --- 多個控制執行緒分享其全域資料空間。為了處理同步問題,也提供"
3535
"了簡單的鎖 (lock) 機制(也稱為:dfn:`互斥鎖` 或 :dfn:`二進位號誌"
3636
"`)。 :mod:`threading` 模組提供了一個建立在這個模組之上的更易於使用和高階的執"
3737
"行緒 API。"
@@ -274,7 +274,7 @@ msgstr "現在取得鎖的操作可以被 POSIX 訊號中斷。"
274274

275275
#: ../../library/_thread.rst:190
276276
msgid "Lock acquires can now be interrupted by signals on Windows."
277-
msgstr ""
277+
msgstr "現在取得鎖的操作可以被 Windows 訊號中斷。"
278278

279279
#: ../../library/_thread.rst:196
280280
msgid ""

library/argparse.po

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1438,7 +1438,6 @@ msgstr ""
14381438
"PROG: error: the following arguments are required: bar"
14391439

14401440
#: ../../library/argparse.rst:731
1441-
#, fuzzy
14421441
msgid ""
14431442
"By default, :mod:`!argparse` automatically handles the internal naming and "
14441443
"display names of arguments, simplifying the process without requiring "
@@ -1448,8 +1447,9 @@ msgid ""
14481447
"metavar_ parameter defaults to the upper-cased name. For example::"
14491448
msgstr ""
14501449
"預設情況下,:mod:`!argparse` 會自動處理引數的內部命名和顯示名稱,簡化流程而不"
1451-
"需要額外設定。因此,你不需要指定 dest_ 和 metavar_ 參數。dest_ 參數預設為引數"
1452-
"名稱,以底線 ``_`` 取代連字號 ``-``。metavar_ 參數預設為大寫的名稱。例如: ::"
1450+
"需要額外設定。因此,你不需要指定 dest_ 和 metavar_ 參數。對於可選的引數,"
1451+
"dest_ 參數預設為引數名稱,以底線 ``_`` 取代連字號 ``-``。metavar_ 參數預設為大"
1452+
"寫的名稱。例如: ::"
14531453

14541454
#: ../../library/argparse.rst:739
14551455
msgid ""

library/ast.po

Lines changed: 173 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,179 @@ msgid ""
234234
"end_col_offset)\n"
235235
"}\n"
236236
msgstr ""
237+
"-- ASDL's 4 builtin types are:\n"
238+
"-- identifier, int, string, constant\n"
239+
"\n"
240+
"module Python\n"
241+
"{\n"
242+
" mod = Module(stmt* body, type_ignore* type_ignores)\n"
243+
" | Interactive(stmt* body)\n"
244+
" | Expression(expr body)\n"
245+
" | FunctionType(expr* argtypes, expr returns)\n"
246+
"\n"
247+
" stmt = FunctionDef(identifier name, arguments args,\n"
248+
" stmt* body, expr* decorator_list, expr? returns,\n"
249+
" string? type_comment, type_param* type_params)\n"
250+
" | AsyncFunctionDef(identifier name, arguments args,\n"
251+
" stmt* body, expr* decorator_list, expr? "
252+
"returns,\n"
253+
" string? type_comment, type_param* type_params)\n"
254+
"\n"
255+
" | ClassDef(identifier name,\n"
256+
" expr* bases,\n"
257+
" keyword* keywords,\n"
258+
" stmt* body,\n"
259+
" expr* decorator_list,\n"
260+
" type_param* type_params)\n"
261+
" | Return(expr? value)\n"
262+
"\n"
263+
" | Delete(expr* targets)\n"
264+
" | Assign(expr* targets, expr value, string? type_comment)\n"
265+
" | TypeAlias(expr name, type_param* type_params, expr value)\n"
266+
" | AugAssign(expr target, operator op, expr value)\n"
267+
" -- 'simple' indicates that we annotate simple name without parens\n"
268+
" | AnnAssign(expr target, expr annotation, expr? value, int "
269+
"simple)\n"
270+
"\n"
271+
" -- use 'orelse' because else is a keyword in target languages\n"
272+
" | For(expr target, expr iter, stmt* body, stmt* orelse, string? "
273+
"type_comment)\n"
274+
" | AsyncFor(expr target, expr iter, stmt* body, stmt* orelse, "
275+
"string? type_comment)\n"
276+
" | While(expr test, stmt* body, stmt* orelse)\n"
277+
" | If(expr test, stmt* body, stmt* orelse)\n"
278+
" | With(withitem* items, stmt* body, string? type_comment)\n"
279+
" | AsyncWith(withitem* items, stmt* body, string? type_comment)\n"
280+
"\n"
281+
" | Match(expr subject, match_case* cases)\n"
282+
"\n"
283+
" | Raise(expr? exc, expr? cause)\n"
284+
" | Try(stmt* body, excepthandler* handlers, stmt* orelse, stmt* "
285+
"finalbody)\n"
286+
" | TryStar(stmt* body, excepthandler* handlers, stmt* orelse, stmt* "
287+
"finalbody)\n"
288+
" | Assert(expr test, expr? msg)\n"
289+
"\n"
290+
" | Import(alias* names)\n"
291+
" | ImportFrom(identifier? module, alias* names, int? level)\n"
292+
"\n"
293+
" | Global(identifier* names)\n"
294+
" | Nonlocal(identifier* names)\n"
295+
" | Expr(expr value)\n"
296+
" | Pass | Break | Continue\n"
297+
"\n"
298+
" -- col_offset is the byte offset in the utf8 string the parser "
299+
"uses\n"
300+
" attributes (int lineno, int col_offset, int? end_lineno, int? "
301+
"end_col_offset)\n"
302+
"\n"
303+
" -- BoolOp() can use left & right?\n"
304+
" expr = BoolOp(boolop op, expr* values)\n"
305+
" | NamedExpr(expr target, expr value)\n"
306+
" | BinOp(expr left, operator op, expr right)\n"
307+
" | UnaryOp(unaryop op, expr operand)\n"
308+
" | Lambda(arguments args, expr body)\n"
309+
" | IfExp(expr test, expr body, expr orelse)\n"
310+
" | Dict(expr?* keys, expr* values)\n"
311+
" | Set(expr* elts)\n"
312+
" | ListComp(expr elt, comprehension* generators)\n"
313+
" | SetComp(expr elt, comprehension* generators)\n"
314+
" | DictComp(expr key, expr value, comprehension* generators)\n"
315+
" | GeneratorExp(expr elt, comprehension* generators)\n"
316+
" -- the grammar constrains where yield expressions can occur\n"
317+
" | Await(expr value)\n"
318+
" | Yield(expr? value)\n"
319+
" | YieldFrom(expr value)\n"
320+
" -- need sequences for compare to distinguish between\n"
321+
" -- x < 4 < 3 and (x < 4) < 3\n"
322+
" | Compare(expr left, cmpop* ops, expr* comparators)\n"
323+
" | Call(expr func, expr* args, keyword* keywords)\n"
324+
" | FormattedValue(expr value, int conversion, expr? format_spec)\n"
325+
" | Interpolation(expr value, constant str, int conversion, expr? "
326+
"format_spec)\n"
327+
" | JoinedStr(expr* values)\n"
328+
" | TemplateStr(expr* values)\n"
329+
" | Constant(constant value, string? kind)\n"
330+
"\n"
331+
" -- the following expression can appear in assignment context\n"
332+
" | Attribute(expr value, identifier attr, expr_context ctx)\n"
333+
" | Subscript(expr value, expr slice, expr_context ctx)\n"
334+
" | Starred(expr value, expr_context ctx)\n"
335+
" | Name(identifier id, expr_context ctx)\n"
336+
" | List(expr* elts, expr_context ctx)\n"
337+
" | Tuple(expr* elts, expr_context ctx)\n"
338+
"\n"
339+
" -- can appear only in Subscript\n"
340+
" | Slice(expr? lower, expr? upper, expr? step)\n"
341+
"\n"
342+
" -- col_offset is the byte offset in the utf8 string the parser "
343+
"uses\n"
344+
" attributes (int lineno, int col_offset, int? end_lineno, int? "
345+
"end_col_offset)\n"
346+
"\n"
347+
" expr_context = Load | Store | Del\n"
348+
"\n"
349+
" boolop = And | Or\n"
350+
"\n"
351+
" operator = Add | Sub | Mult | MatMult | Div | Mod | Pow | LShift\n"
352+
" | RShift | BitOr | BitXor | BitAnd | FloorDiv\n"
353+
"\n"
354+
" unaryop = Invert | Not | UAdd | USub\n"
355+
"\n"
356+
" cmpop = Eq | NotEq | Lt | LtE | Gt | GtE | Is | IsNot | In | NotIn\n"
357+
"\n"
358+
" comprehension = (expr target, expr iter, expr* ifs, int is_async)\n"
359+
"\n"
360+
" excepthandler = ExceptHandler(expr? type, identifier? name, stmt* body)\n"
361+
" attributes (int lineno, int col_offset, int? end_lineno, "
362+
"int? end_col_offset)\n"
363+
"\n"
364+
" arguments = (arg* posonlyargs, arg* args, arg? vararg, arg* kwonlyargs,\n"
365+
" expr?* kw_defaults, arg? kwarg, expr* defaults)\n"
366+
"\n"
367+
" arg = (identifier arg, expr? annotation, string? type_comment)\n"
368+
" attributes (int lineno, int col_offset, int? end_lineno, int? "
369+
"end_col_offset)\n"
370+
"\n"
371+
" -- keyword arguments supplied to call (NULL identifier for **kwargs)\n"
372+
" keyword = (identifier? arg, expr value)\n"
373+
" attributes (int lineno, int col_offset, int? end_lineno, int? "
374+
"end_col_offset)\n"
375+
"\n"
376+
" -- import name with optional 'as' alias.\n"
377+
" alias = (identifier name, identifier? asname)\n"
378+
" attributes (int lineno, int col_offset, int? end_lineno, int? "
379+
"end_col_offset)\n"
380+
"\n"
381+
" withitem = (expr context_expr, expr? optional_vars)\n"
382+
"\n"
383+
" match_case = (pattern pattern, expr? guard, stmt* body)\n"
384+
"\n"
385+
" pattern = MatchValue(expr value)\n"
386+
" | MatchSingleton(constant value)\n"
387+
" | MatchSequence(pattern* patterns)\n"
388+
" | MatchMapping(expr* keys, pattern* patterns, identifier? rest)\n"
389+
" | MatchClass(expr cls, pattern* patterns, identifier* kwd_attrs, "
390+
"pattern* kwd_patterns)\n"
391+
"\n"
392+
" | MatchStar(identifier? name)\n"
393+
" -- The optional \"rest\" MatchMapping parameter handles "
394+
"capturing extra mapping keys\n"
395+
"\n"
396+
" | MatchAs(pattern? pattern, identifier? name)\n"
397+
" | MatchOr(pattern* patterns)\n"
398+
"\n"
399+
" attributes (int lineno, int col_offset, int end_lineno, int "
400+
"end_col_offset)\n"
401+
"\n"
402+
" type_ignore = TypeIgnore(int lineno, string tag)\n"
403+
"\n"
404+
" type_param = TypeVar(identifier name, expr? bound, expr? default_value)\n"
405+
" | ParamSpec(identifier name, expr? default_value)\n"
406+
" | TypeVarTuple(identifier name, expr? default_value)\n"
407+
" attributes (int lineno, int col_offset, int end_lineno, int "
408+
"end_col_offset)\n"
409+
"}\n"
237410

238411
#: ../../library/ast.rst:42
239412
msgid "Node classes"

library/asyncio-api-index.po

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,7 @@ msgstr "同步化 (Synchronization)"
353353

354354
#: ../../library/asyncio-api-index.rst:179
355355
msgid "Threading-like synchronization primitives that can be used in Tasks."
356-
msgstr "類似執行緒且能被用於 Task 中的同步化原始物件 (primitive)。"
356+
msgstr "類似執行緒且能被用於 Task 中的同步原語 (primitive)。"
357357

358358
#: ../../library/asyncio-api-index.rst:185
359359
msgid ":class:`Lock`"
@@ -415,7 +415,7 @@ msgstr ":ref:`使用 asyncio.Barrier <asyncio_example_barrier>`。"
415415
msgid ""
416416
"See also the documentation of asyncio :ref:`synchronization primitives "
417417
"<asyncio-sync>`."
418-
msgstr "請參閱 asyncio 關於\\ :ref:`同步化原始物件 <asyncio-sync>`\\ 的文件。"
418+
msgstr "請參閱 asyncio 關於\\ :ref:`同步原語 <asyncio-sync>`\\ 的文件。"
419419

420420
#: ../../library/asyncio-api-index.rst:215
421421
msgid "Exceptions"

library/asyncio-dev.po

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,14 @@ msgid ""
192192
"# Wait for the result:\n"
193193
"result = future.result()"
194194
msgstr ""
195+
"async def coro_func():\n"
196+
" return await asyncio.sleep(1, 42)\n"
197+
"\n"
198+
"# 之後在另一個 OS 執行緒中:\n"
199+
"\n"
200+
"future = asyncio.run_coroutine_threadsafe(coro_func(), loop)\n"
201+
"# 等待結果:\n"
202+
"result = future.result()"
195203

196204
#: ../../library/asyncio-dev.rst:98
197205
msgid "To handle signals the event loop must be run in the main thread."

0 commit comments

Comments
 (0)