Wikiquote
viwikiquote
https://vi.wikiquote.org/wiki/Trang_Ch%C3%ADnh
MediaWiki 1.47.0-wmf.22
first-letter
Phương tiện
Đặc biệt
Thảo luận
Thành viên
Thảo luận Thành viên
Wikiquote
Thảo luận Wikiquote
Tập tin
Thảo luận Tập tin
MediaWiki
Thảo luận MediaWiki
Bản mẫu
Thảo luận Bản mẫu
Trợ giúp
Thảo luận Trợ giúp
Thể loại
Thảo luận Thể loại
TimedText
TimedText talk
Mô đun
Thảo luận Mô đun
Sự kiện
Thảo luận Sự kiện
Wikiquote:Bảo quản viên
4
2444
63349
63325
2026-10-01T02:33:21Z
Làm Việc Thiện
13742
/* {{User|Làm Việc Thiện}} */
63349
wikitext
text/x-wiki
{{Quy định Wikiquote}}
[[Hình:Wikiquote Administrator.png|phải|100px]]
'''Bảo quản viên''' hay ''bảo trì viên'' ([[tiếng Anh]]: ''system operator'', viết tắt '''sysop''') là các thành viên trong Wikiquote được tin cậy cho việc sử dụng một số công cụ kỹ thuật, ví dụ xoá trang, khoá trang, và cấm tài khoản người dùng. Xem [[Wikiquote:Bảo quản viên/Công cụ]]
Bảo quản viên là các tình nguyện viên cho các trách nhiệm đó; họ không phải nhân viên của tổ chức [[Wikimedia]]. Họ không bị yêu cầu phải sử dụng các công cụ của mình, và không bao giờ được sử dụng các công cụ này để giành lợi thế trong các cuộc tranh chấp mà mình có liên can.
Bảo quản viên không được trao thẩm quyền đặc biệt nào, và họ ngang hàng với mọi người khác về công việc biên tập.
Bảo quản viên không phải là "ban đại diện" cho Wikiquote, và cũng không bao giờ trở thành một nhóm đặc biệt, đặc nhiệm trên Wikiquote. Các ý kiến, sửa đổi của bảo quản viên trên các bài viết, thảo luận... vẫn chỉ là ý kiến riêng của thành viên đó như mọi thành viên khác, và được giải quyết theo thông lệ. Các thành viên khác không nên xem một bảo quản viên là một thành viên khác biệt trong quá trình đóng góp xây dựng Wikiquote.
== Danh sách bảo quản viên==
:''Xem danh sách tự động các bảo quản viên hiện nay tại [[Đặc biệt:Danh sách thành viên/sysop]].''
Hiện nay Wikiquote tiếng Việt có {{formatnum:{{NUMBEROFADMINS}}}} bảo quản viên:
* [[Thành viên:Bộ lọc sai phạm|Bộ lọc sai phạm]] (tài khoản hệ thống, từ 17-12-2018)
* [[Thành viên:Sunny Cryolite|Sunny Cryolite]] (từ 4-5-2025 đến -)
=== Cựu bảo quản viên ===
Dưới đây là những cựu bảo quản viên của Wikiquote tiếng Việt.
* [[Thành viên:Trần Nguyễn Minh Huy|Trần Nguyễn Minh Huy]] (từ 16-02-2010 đến 31-12-2010)
* [[Thành viên:Prenn|Prenn]] (từ 02-08-2010 đến 11-04-2017)
* [[Thành viên:Quenhitran|Quenhitran]] (lần 1 và 2 từ 07-11-2014 đến 19-11-2015, lần 3 và 4 từ 21-11-2015 đến 22-11-2017, lần 5 từ 24-2-2018 đến 24-2-2019)
* [[Thành viên:Alphama|Alphama]] (lần 1 từ 15-8-2018 đến 15-2-2019, lần 2 từ 3-4-2024 đến 3-7-2024)
* [[Thành viên:ThiênĐế98|ThiênĐế98]] (lần 1 từ 15-8-2018 đến 15-2-2019, lần 2 từ 16-2-2019 đến 16-2-2020,lần 3 từ 16-3-2026 đến-)
* [[Thành viên:Đức Anh|Đức Anh]] (từ 8-1-2021 đến 8-4-2021)
* [[Thành viên:MagicalNight97|MagicalNight97]] (từ 14-11-2022 đến 14-02-2023)
* [[Thành viên:Sunny Cryolite|Sunny Cryolite]] (lần 1 từ 14-2-2024 đến 14-5-2024, lần 2 từ 4-5-2025 đến -)
* [[Thành viên:Pminh141|Pminh141]] (từ 18-11-2024 đến 18-2-2025)
* [[Thành viên:Nvdtn19|Nvdtn19]] (từ 21-05-2026 đến 21-08-2026)
== Yêu cầu quyền bảo quản viên ==
Nếu bạn muốn trở thành bảo quản viên tại dự án này, hãy tạo một đề mục con bên dưới đề mục này và ghi rõ lý do của bạn ở bên dưới. Vì đây là một wiki nhỏ và không có quy trình cấp quyền riêng, tất cả các yêu cầu về quyền hạn hiện tại sẽ tuân thủ theo [[m:Special:MyLanguage/Steward requests/Permissions/Minimum voting requirements|quy định chung]] tại Meta. Các yêu cầu cũ được lưu trữ tại '''[[Wikiquote:Bảo quản viên/Lưu yêu cầu|trang lưu trữ]]'''.
{{Đầu biểu quyết|kết quả = Đề cử thành công.[[Thành viên:Làm Việc Thiện|Làm Việc Thiện]] ([[Thảo luận Thành viên:Làm Việc Thiện|thảo luận]]) 02:33, ngày 1 tháng 10 năm 2026 (UTC)}}
=== {{User|Làm Việc Thiện}} ===
Dự án hiện tại không có BQV hoạt động tôi xin phép được cấp quyền BQV để chủ động dọn dẹp dự án, chống phá hoại ở dự án này. Thảo luận sẽ diễn ra trong 7 ngày.[[Thành viên:Làm Việc Thiện|Làm Việc Thiện]] ([[Thảo luận Thành viên:Làm Việc Thiện|thảo luận]]) 01:55, ngày 24 tháng 9 năm 2026 (UTC)
====Đồng ý====
#{{OK}} Cần nhiều BQV để hoạt động tích cực. [[Thành viên:Mai Thanh Bang|Mai Thanh Bang]] ([[Thảo luận Thành viên:Mai Thanh Bang|thảo luận]]) 06:58, ngày 25 tháng 9 năm 2026 (UTC)
====Chưa đồng ý====
====Ý kiến====
{{Kết biểu quyết}}
[[Thể loại:Quyền truy cập của thành viên Wikiquote]]
[[Thể loại:Quyền thành viên]]
gc7v0omwsi84gfxom2iw3uimpwz0dpq
Wikiquote:Bảo quản viên giao diện
4
7011
63350
60253
2026-10-01T02:35:27Z
Làm Việc Thiện
13742
/* Yêu cầu quyền bảo quản viên giao diện */
63350
wikitext
text/x-wiki
{{Quy định Wikiquote}}
'''Bảo quản viên giao diện''' là những người dùng duy nhất có khả năng chỉnh sửa các trang CSS và JS của sitewide (như MediaWiki: Common.js, MediaWiki: Vector.css, các thông báo giao diện được hiểu là HTML thô hoặc các trang tiện ích được liệt kê trên [[Đặc biệt:Tiện ích]]) và các trang CSS/JS cá nhân của người dùng khác. Các trang JS và CSS được trình duyệt của trình soạn thảo và trình đọc wiki thực thi dưới dạng mã, có thể được sử dụng để thay đổi cách tạo nội dung, thay đổi hành vi của các trang hoặc thậm chí tạo ra các công cụ rất phức tạp.
Chỉnh sửa CSS/JS được thực thi trong trình duyệt của người dùng khác là rất mạnh mẽ và có khả năng nguy hiểm trong tay người dùng độc hại. Bảo quản viên giao diện phải là người dùng được cộng đồng tin cậy, có kiến thức cơ bản về CSS và JS và cũng như biết cách bảo vệ tài khoản của mình (như sử dụng mật khẩu mạnh, không cài đặt phần mềm không rõ nguồn gốc, sử dụng phần mềm chống vi-rút để bảo vệ thiết bị khỏi vi-rút và trojan). Wikimedia Foundation yêu cầu các bảo quản viên giao diện phải bật [[metawiki:Help:Two-factor authentication|xác thực hai yếu tố]] (2FA) vì lý do pháp lý và bảo mật.
Bảo quản viên và bảo quản viên giao diện có thể chỉnh sửa các trang không phải CSS cũng như JS trong không gian tên MediaWiki. (ví dụ: MediaWiki: Sidebar)
== Yêu cầu quyền bảo quản viên giao diện ==
Các yêu cầu bảo quản viên giao diện hãy ghi dưới đây, sau đó đến trang [[m:Steward requests/Permissions|Yêu cầu cấp quyền]] tại Meta-Wiki để yêu cầu phong cấp. Các yêu cầu cũ được lưu trữ tại '''[[Wikiquote:Bảo quản viên giao diện/Lưu yêu cầu|trang lưu]]'''.
==={{User|Làm Việc Thiện}}===
Tôi hiện cần quyền BQVGD để chuẩn bị thêm một số tiện ích cho Wikiquote. Tiện thể sau khi được cấp quyền sẽ tiện cho việc bảo trì các tiện ích và các trang JS, CSS thuộc Mediawiki sau này.[[Thành viên:Làm Việc Thiện|Làm Việc Thiện]] ([[Thảo luận Thành viên:Làm Việc Thiện|thảo luận]]) 02:35, ngày 1 tháng 10 năm 2026 (UTC)
== Xem thêm ==
* [[Special:ListUsers/interface-admin|Danh sách bảo quản viên giao diện]]
* [[Special:ListGroupRights#interface-admin|Quyền được đính kèm với bảo quản viên giao diện]]
{{DEFAULTSORT:{{PAGENAME}}}}
[[Category:Quyền thành viên]]
[[Thể loại:Quyền truy cập của thành viên Wikiquote]]
[[Thể loại:Quy định Wikiquote]]
dha5s8g7pu04r8lu1rcor2kzhzfy7d0
63351
63350
2026-10-01T02:36:14Z
Làm Việc Thiện
13742
/* {{User|Làm Việc Thiện}} */
63351
wikitext
text/x-wiki
{{Quy định Wikiquote}}
'''Bảo quản viên giao diện''' là những người dùng duy nhất có khả năng chỉnh sửa các trang CSS và JS của sitewide (như MediaWiki: Common.js, MediaWiki: Vector.css, các thông báo giao diện được hiểu là HTML thô hoặc các trang tiện ích được liệt kê trên [[Đặc biệt:Tiện ích]]) và các trang CSS/JS cá nhân của người dùng khác. Các trang JS và CSS được trình duyệt của trình soạn thảo và trình đọc wiki thực thi dưới dạng mã, có thể được sử dụng để thay đổi cách tạo nội dung, thay đổi hành vi của các trang hoặc thậm chí tạo ra các công cụ rất phức tạp.
Chỉnh sửa CSS/JS được thực thi trong trình duyệt của người dùng khác là rất mạnh mẽ và có khả năng nguy hiểm trong tay người dùng độc hại. Bảo quản viên giao diện phải là người dùng được cộng đồng tin cậy, có kiến thức cơ bản về CSS và JS và cũng như biết cách bảo vệ tài khoản của mình (như sử dụng mật khẩu mạnh, không cài đặt phần mềm không rõ nguồn gốc, sử dụng phần mềm chống vi-rút để bảo vệ thiết bị khỏi vi-rút và trojan). Wikimedia Foundation yêu cầu các bảo quản viên giao diện phải bật [[metawiki:Help:Two-factor authentication|xác thực hai yếu tố]] (2FA) vì lý do pháp lý và bảo mật.
Bảo quản viên và bảo quản viên giao diện có thể chỉnh sửa các trang không phải CSS cũng như JS trong không gian tên MediaWiki. (ví dụ: MediaWiki: Sidebar)
== Yêu cầu quyền bảo quản viên giao diện ==
Các yêu cầu bảo quản viên giao diện hãy ghi dưới đây, sau đó đến trang [[m:Steward requests/Permissions|Yêu cầu cấp quyền]] tại Meta-Wiki để yêu cầu phong cấp. Các yêu cầu cũ được lưu trữ tại '''[[Wikiquote:Bảo quản viên giao diện/Lưu yêu cầu|trang lưu]]'''.
==={{User|Làm Việc Thiện}}===
Tôi hiện cần quyền BQVGD để chuẩn bị thêm một số tiện ích cho Wikiquote. Tiện thể sau khi được cấp quyền sẽ tiện cho việc bảo trì các tiện ích và các trang JS, CSS thuộc Mediawiki sau này.[[Thành viên:Làm Việc Thiện|Làm Việc Thiện]] ([[Thảo luận Thành viên:Làm Việc Thiện|thảo luận]]) 02:35, ngày 1 tháng 10 năm 2026 (UTC)
====Đồng ý====
====Chưa đồng ý====
====Ý kiến====
== Xem thêm ==
* [[Special:ListUsers/interface-admin|Danh sách bảo quản viên giao diện]]
* [[Special:ListGroupRights#interface-admin|Quyền được đính kèm với bảo quản viên giao diện]]
{{DEFAULTSORT:{{PAGENAME}}}}
[[Category:Quyền thành viên]]
[[Thể loại:Quyền truy cập của thành viên Wikiquote]]
[[Thể loại:Quy định Wikiquote]]
dx6bin193f6ftvofrg8t1fbxax40a0b
63352
63351
2026-10-01T02:36:59Z
Làm Việc Thiện
13742
/* {{User|Làm Việc Thiện}} */
63352
wikitext
text/x-wiki
{{Quy định Wikiquote}}
'''Bảo quản viên giao diện''' là những người dùng duy nhất có khả năng chỉnh sửa các trang CSS và JS của sitewide (như MediaWiki: Common.js, MediaWiki: Vector.css, các thông báo giao diện được hiểu là HTML thô hoặc các trang tiện ích được liệt kê trên [[Đặc biệt:Tiện ích]]) và các trang CSS/JS cá nhân của người dùng khác. Các trang JS và CSS được trình duyệt của trình soạn thảo và trình đọc wiki thực thi dưới dạng mã, có thể được sử dụng để thay đổi cách tạo nội dung, thay đổi hành vi của các trang hoặc thậm chí tạo ra các công cụ rất phức tạp.
Chỉnh sửa CSS/JS được thực thi trong trình duyệt của người dùng khác là rất mạnh mẽ và có khả năng nguy hiểm trong tay người dùng độc hại. Bảo quản viên giao diện phải là người dùng được cộng đồng tin cậy, có kiến thức cơ bản về CSS và JS và cũng như biết cách bảo vệ tài khoản của mình (như sử dụng mật khẩu mạnh, không cài đặt phần mềm không rõ nguồn gốc, sử dụng phần mềm chống vi-rút để bảo vệ thiết bị khỏi vi-rút và trojan). Wikimedia Foundation yêu cầu các bảo quản viên giao diện phải bật [[metawiki:Help:Two-factor authentication|xác thực hai yếu tố]] (2FA) vì lý do pháp lý và bảo mật.
Bảo quản viên và bảo quản viên giao diện có thể chỉnh sửa các trang không phải CSS cũng như JS trong không gian tên MediaWiki. (ví dụ: MediaWiki: Sidebar)
== Yêu cầu quyền bảo quản viên giao diện ==
Các yêu cầu bảo quản viên giao diện hãy ghi dưới đây, sau đó đến trang [[m:Steward requests/Permissions|Yêu cầu cấp quyền]] tại Meta-Wiki để yêu cầu phong cấp. Các yêu cầu cũ được lưu trữ tại '''[[Wikiquote:Bảo quản viên giao diện/Lưu yêu cầu|trang lưu]]'''.
==={{User|Làm Việc Thiện}}===
Tôi hiện cần quyền BQVGD để chuẩn bị thêm một số tiện ích cho Wikiquote. Tiện thể sau khi được cấp quyền sẽ tiện cho việc bảo trì các tiện ích và các trang JS, CSS thuộc Mediawiki sau này. Thảo luận sẽ diễn ra trong 7 ngày.[[Thành viên:Làm Việc Thiện|Làm Việc Thiện]] ([[Thảo luận Thành viên:Làm Việc Thiện|thảo luận]]) 02:35, ngày 1 tháng 10 năm 2026 (UTC)
====Đồng ý====
====Chưa đồng ý====
====Ý kiến====
== Xem thêm ==
* [[Special:ListUsers/interface-admin|Danh sách bảo quản viên giao diện]]
* [[Special:ListGroupRights#interface-admin|Quyền được đính kèm với bảo quản viên giao diện]]
{{DEFAULTSORT:{{PAGENAME}}}}
[[Category:Quyền thành viên]]
[[Thể loại:Quyền truy cập của thành viên Wikiquote]]
[[Thể loại:Quy định Wikiquote]]
d82ncpsdxpsxet0yj9ky6viar8vurln
Wikiquote:Hành chính viên
4
7017
63353
50549
2026-10-01T02:49:04Z
Làm Việc Thiện
13742
63353
wikitext
text/x-wiki
{{Quy định Wikiquote}}
[[Hình:Wikiquote bureaucrat.svg|100px|phải]]
'''Hành chính viên''' có các đặc quyền khác xung quanh trong việc quản trị trực tiếp: để thúc đẩy người dùng quản trị viên hoặc tước quyền quản trị từ họ. Một Hành chính viên là một bảo quản viên giữ các đặc quyền bổ sung như sau:
* Để quảng bá người dùng khác đến bảo quản viên hoặc hành chính viên.
* Để thiết lập và xóa cờ bot khỏi tài khoản bot tự động. Xem [[m:Makebot]].
Các hành chính viên không thể loại bỏ quyền người dùng, ngoại trừ cờ bot. Việc loại bỏ các cờ khác phải được thực hiện bởi các tiếp viên. Tiếp viên có quyền làm điều này trên toàn cục (trên tất cả các dự án Wikimedia), tuy nhiên, họ nhất định tuân theo sự đồng thuận của mỗi cộng đồng của dự án. Tất cả các yêu cầu đối với người quản lý liên quan đến cờ phải được liệt kê trên [[m:Steward requests/Permissions]]. Tiếp viên, ngoài việc đổi tên toàn cầu, còn xử lý các yêu cầu thay đổi tên người dùng.
[[Thể loại:Quyền truy cập của thành viên Wikiquote]]
[[Thể loại:Quyền thành viên]]
48smu9y29y7w1ti6ku3acsdeityckff
63354
63353
2026-10-01T02:50:02Z
Làm Việc Thiện
13742
63354
wikitext
text/x-wiki
{{Quy định Wikiquote}}
[[Hình:Wikiquote bureaucrat.svg|100px|phải]]
'''Hành chính viên''' có các đặc quyền khác xung quanh trong việc quản trị trực tiếp: để thúc đẩy người dùng quản trị viên hoặc tước quyền quản trị từ họ. Một Hành chính viên là một bảo quản viên giữ các đặc quyền bổ sung như sau:
* Để quảng bá người dùng khác đến bảo quản viên hoặc hành chính viên.
* Để thiết lập và xóa cờ bot khỏi tài khoản bot tự động. Xem [[m:Makebot]].
Các hành chính viên không thể loại bỏ quyền người dùng, ngoại trừ cờ bot. Việc loại bỏ các cờ khác phải được thực hiện bởi các tiếp viên. Tiếp viên có quyền làm điều này trên toàn cục (trên tất cả các dự án Wikimedia), tuy nhiên, họ nhất định tuân theo sự đồng thuận của mỗi cộng đồng của dự án. Tất cả các yêu cầu đối với người quản lý liên quan đến cờ phải được liệt kê trên [[m:Steward requests/Permissions|Yêu cầu cấp quyền]]. Tiếp viên, ngoài việc đổi tên toàn cầu, còn xử lý các yêu cầu thay đổi tên người dùng.
[[Thể loại:Quyền truy cập của thành viên Wikiquote]]
[[Thể loại:Quyền thành viên]]
5vjdyeirs3u0s5re78amnfti8ht6r53
Henri Barbusse
0
10524
63333
63324
2026-09-30T15:00:12Z
Làm Việc Thiện
13742
63333
wikitext
text/x-wiki
[[Tập tin:Henri-Barbusse.jpg|nhỏ|Henri Barbusse ở Moscow năm 1933.]]
'''{{w|Henri Barbusse}}''' (1873-1935) là [[nhà văn]] [[người Pháp]]. Ông còn là [[thành viên]] của [[Đảng Cộng sản Pháp]].
==Trích dẫn của Barbusse==
*Lịch sử của ông là một chuỗi những chiến thắng trước hàng loạt khó khăn to lớn. Kể từ năm 1917, không một năm nào trong sự nghiệp của ông trôi qua mà ông không làm được điều gì đó đủ để khiến bất kỳ người đàn ông nào khác trở nên nổi tiếng. Ông là một con người bằng sắt. Cái tên mà ông được biết đến đã mô tả điều đó: từ [[Stalin]] có nghĩa là "[[thép]]" trong [[tiếng Nga]]. Ông mạnh mẽ nhưng cũng linh hoạt như thép. Quyền lực của ông nằm ở [[trí tuệ]] đáng gờm, bề rộng [[kiến thức]], sự ngăn nắp đáng kinh ngạc của [[tâm trí]], niềm đam mê đối với sự [[chính xác]], tinh thần [[tiến bộ]] không gì lay chuyển, tốc độ, sự chắc chắn và cường độ trong các quyết định của ông, cùng sự cẩn trọng thường xuyên trong việc lựa chọn đúng người.
**Về [[Joseph Stalin]], [https://www.google.it/books/edition/Stalin/s5UeAAAAMAAJ?hl=it&gbpv=1&bsq=%22His+history+is+a+series+of+victories+over+a+series+of+tremendous+difficulties%22&dq=%22His+history+is+a+series+of+victories+over+a+series+of+tremendous+difficulties%22&printsec=frontcover Stalin: A New World Seen Through One Man] (1935), tr. 275.
*Người đã chết chỉ tồn tại trên thế gian. Bất cứ nơi nào có những người cách mạng, nơi đó có [[Lenin]]. Nhưng cũng có thể nói rằng chính ở [[Stalin]], hơn bất kỳ ai khác, người ta tìm thấy những tư tưởng và lời nói của Lenin. Ông là Lenin của thời đại ngày nay.
**Về [[Joseph Stalin]], [https://www.google.it/books/edition/Stalin/s5UeAAAAMAAJ?hl=it&gbpv=1&bsq=The+dead+do+not+survive+except+upon+earth.+Wherever+there+are+revolutionaries&dq=The+dead+do+not+survive+except+upon+earth.+Wherever+there+are+revolutionaries&printsec=frontcover Stalin: A New World Seen Through One Man] (1935), tr. 275.
=== ''[[w:Under Fire (novel)|Dưới làn đạn]]'' (1916) ===
[[File:World War I Battle scene-FC Yohn.jpg|244px|thumb|Hai đạo quân đang [[chết|chém giết]] lẫn nhau — đó chính là một [[đại quân]] đang [[tự sát]].]]
:<small>''Le Feu : journal d'une escouade'' (1915–1916); được Fitzwater Wray dịch với tựa đề ''Under Fire: The Story of a Squad'' (1917) [http://www.gutenberg.org/etext/4380 Toàn văn trực tuyến]</small>
==Chú thích==
{{tham khảo}}
eb8te0fvn0edvkr5u8qihn3vq1vl7rw
63339
63333
2026-09-30T21:57:20Z
Làm Việc Thiện
13742
63339
wikitext
text/x-wiki
[[Tập tin:Henri-Barbusse.jpg|nhỏ|Henri Barbusse ở Moscow năm 1933.]]
'''{{w|Henri Barbusse}}''' (1873-1935) là [[nhà văn]] [[người Pháp]]. Ông còn là [[thành viên]] của [[Đảng Cộng sản Pháp]].
==Trích dẫn của Barbusse==
* Lịch sử của ông là một chuỗi những chiến thắng trước hàng loạt khó khăn to lớn. Kể từ năm 1917, không một năm nào trong sự nghiệp của ông trôi qua mà ông không làm được điều gì đó đủ để khiến bất kỳ người đàn ông nào khác trở nên nổi tiếng. Ông là một con người bằng sắt. Cái tên mà ông được biết đến đã mô tả điều đó: từ [[Stalin]] có nghĩa là "[[thép]]" trong [[tiếng Nga]]. Ông mạnh mẽ nhưng cũng linh hoạt như thép. Quyền lực của ông nằm ở [[trí tuệ]] đáng gờm, bề rộng [[kiến thức]], sự ngăn nắp đáng kinh ngạc của [[tâm trí]], niềm đam mê đối với sự [[chính xác]], tinh thần [[tiến bộ]] không gì lay chuyển, tốc độ, sự chắc chắn và cường độ trong các quyết định của ông, cùng sự cẩn trọng thường xuyên trong việc lựa chọn đúng người.
**Về [[Joseph Stalin]], [https://www.google.it/books/edition/Stalin/s5UeAAAAMAAJ?hl=it&gbpv=1&bsq=%22His+history+is+a+series+of+victories+over+a+series+of+tremendous+difficulties%22&dq=%22His+history+is+a+series+of+victories+over+a+series+of+tremendous+difficulties%22&printsec=frontcover Stalin: A New World Seen Through One Man] (1935), tr. 275.
*Người đã chết chỉ tồn tại trên thế gian. Bất cứ nơi nào có những người cách mạng, nơi đó có [[Lenin]]. Nhưng cũng có thể nói rằng chính ở [[Stalin]], hơn bất kỳ ai khác, người ta tìm thấy những tư tưởng và lời nói của Lenin. Ông là Lenin của thời đại ngày nay.
**Về [[Joseph Stalin]], [https://www.google.it/books/edition/Stalin/s5UeAAAAMAAJ?hl=it&gbpv=1&bsq=The+dead+do+not+survive+except+upon+earth.+Wherever+there+are+revolutionaries&dq=The+dead+do+not+survive+except+upon+earth.+Wherever+there+are+revolutionaries&printsec=frontcover Stalin: A New World Seen Through One Man] (1935), tr. 275.
=== ''[[w:Under Fire (novel)|Dưới làn đạn]]'' (1916) ===
[[File:World War I Battle scene-FC Yohn.jpg|244px|thumb|Hai đạo quân đang [[chết|chém giết]] lẫn nhau — đó chính là một [[đại quân]] đang [[tự sát]].]]
:<small>''Le Feu : journal d'une escouade'' (1915–1916); được Fitzwater Wray dịch với tựa đề ''Under Fire: The Story of a Squad'' (1917) [http://www.gutenberg.org/etext/4380 Toàn văn trực tuyến]</small>
==Chú thích==
{{tham khảo}}
2kq7absgost1a81u95z2umcuy24vshj
63340
63339
2026-10-01T01:38:23Z
Làm Việc Thiện
13742
/* Trích dẫn của Barbusse */
63340
wikitext
text/x-wiki
[[Tập tin:Henri-Barbusse.jpg|nhỏ|Henri Barbusse ở Moscow năm 1933.]]
'''{{w|Henri Barbusse}}''' (1873-1935) là [[nhà văn]] [[người Pháp]]. Ông còn là [[thành viên]] của [[Đảng Cộng sản Pháp]].
==Trích dẫn của Barbusse==
* Lịch sử của ông là một chuỗi những chiến thắng trước hàng loạt khó khăn to lớn. Kể từ năm 1917, không một năm nào trong sự nghiệp của ông trôi qua mà ông không làm được điều gì đó đủ để khiến bất kỳ người đàn ông nào khác trở nên nổi tiếng. Ông là một con người bằng sắt. Cái tên mà ông được biết đến đã mô tả điều đó: từ [[Stalin]] có nghĩa là "[[thép]]" trong [[tiếng Nga]]. Ông mạnh mẽ nhưng cũng linh hoạt như thép. Quyền lực của ông nằm ở [[trí tuệ]] đáng gờm, bề rộng [[kiến thức]], sự ngăn nắp đáng kinh ngạc của [[tâm trí]], niềm đam mê đối với sự [[chính xác]], tinh thần [[tiến bộ]] không gì lay chuyển, tốc độ, sự chắc chắn và cường độ trong các quyết định của ông, cùng sự cẩn trọng thường xuyên trong việc lựa chọn đúng người.
**Về [[Joseph Stalin]], [https://www.google.it/books/edition/Stalin/s5UeAAAAMAAJ?hl=it&gbpv=1&bsq=%22His+history+is+a+series+of+victories+over+a+series+of+tremendous+difficulties%22&dq=%22His+history+is+a+series+of+victories+over+a+series+of+tremendous+difficulties%22&printsec=frontcover Stalin: A New World Seen Through One Man] (1935), tr. 275.
* Người đã chết chỉ tồn tại trên thế gian. Bất cứ nơi nào có những người cách mạng, nơi đó có [[Lenin]]. Nhưng cũng có thể nói rằng chính ở [[Stalin]], hơn bất kỳ ai khác, người ta tìm thấy những tư tưởng và lời nói của Lenin. Ông là Lenin của thời đại ngày nay.
**Về [[Joseph Stalin]], [https://www.google.it/books/edition/Stalin/s5UeAAAAMAAJ?hl=it&gbpv=1&bsq=The+dead+do+not+survive+except+upon+earth.+Wherever+there+are+revolutionaries&dq=The+dead+do+not+survive+except+upon+earth.+Wherever+there+are+revolutionaries&printsec=frontcover Stalin: A New World Seen Through One Man] (1935), tr. 275.
=== ''[[w:Under Fire (novel)|Dưới làn đạn]]'' (1916) ===
[[File:World War I Battle scene-FC Yohn.jpg|244px|thumb|Hai đạo quân đang [[chết|chém giết]] lẫn nhau — đó chính là một [[đại quân]] đang [[tự sát]].]]
:<small>''Le Feu : journal d'une escouade'' (1915–1916); được Fitzwater Wray dịch với tựa đề ''Under Fire: The Story of a Squad'' (1917) [http://www.gutenberg.org/etext/4380 Toàn văn trực tuyến]</small>
==Chú thích==
{{tham khảo}}
85xywhem26sj5p953sn7rq7142fcr0v
Bản mẫu:Chào mừng
10
10528
63334
2026-09-30T16:41:54Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “==Chào mừng== Xin chào, {{<includeonly>safesubst:</includeonly>BASEPAGENAME}}, và chào mừng bạn đến với [[Wikiquote:About|Wikiquote tiếng việt]], một tuyển tập các câu trích dẫn miễn phí được biên soạn cộng tác bởi những người giống như bạn! * Để có cái nhìn tổng quan nhanh về Wikiquote, hãy đọc [[Wikiquote:Wikiquote]]. ** Xem thêm Wikiquote:Những gì Wikiquote không phải|Nhữ…”
63334
wikitext
text/x-wiki
==Chào mừng==
Xin chào, {{<includeonly>safesubst:</includeonly>BASEPAGENAME}}, và chào mừng bạn đến với [[Wikiquote:About|Wikiquote tiếng việt]], một tuyển tập các câu trích dẫn miễn phí được biên soạn cộng tác bởi những người giống như bạn!
* Để có cái nhìn tổng quan nhanh về Wikiquote, hãy đọc [[Wikiquote:Wikiquote]].
** Xem thêm [[Wikiquote:Những gì Wikiquote không phải|Những gì Wikiquote không phải]] để biết về các hoạt động phổ biến mà Wikiquote không hỗ trợ.
* Để duyệt Wikiquote, hãy xem [[Wikiquote:Browse|trang chủ duyệt web]].
* Trước khi tạo bài viết mới, hãy tham khảo [[Wikiquote:Guide to layout|hướng dẫn trình bày]]. Bạn có thể thực hành [[Wikiquote:How to edit a page|cách chỉnh sửa một trang]] tại [[Wikiquote:Sandbox|Chỗ thử]].
* Vui lòng nhớ sử dụng [[Help:Edit summary|tóm lược sửa đổi]] khi chỉnh sửa các trang.
* Khi đăng bài trong một cuộc thảo luận, [[Wikiquote:Hãy ký tên vào các bài viết của bạn trên trang thảo luận|vui lòng ký tên kèm ngày tháng]] bằng cách viết bốn dấu ngã (~~~~) rồi lưu lại.
* [[w:Wikipedia:Hãy mạnh dạn|Hãy mạnh dạn]].
Nếu bạn muốn xin lời khuyên hoặc trợ giúp, hãy ghé qua [[WQ:VP|Bàn giúp đỡ]] hoặc đặt câu hỏi trên trang thảo luận của tôi. Chúc bạn chỉnh sửa vui vẻ! Và một lần nữa, chào mừng bạn! <noinclude>
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
[[Category:User welcome templates|{{PAGENAME}}]]
[[es:Template:Welcome]]
[[eu:Txantiloi:Ongietorria]]
[[fi:Malline:Tervetuloa Wikisitaatteihin]]
</noinclude>
0ksy2y65htjywdcdg3pl2yo345413sf
63335
63334
2026-09-30T16:42:18Z
Làm Việc Thiện
13742
63335
wikitext
text/x-wiki
==Chào mừng==
Xin chào, {{<includeonly>safesubst:</includeonly>BASEPAGENAME}}, và chào mừng bạn đến với [[Wikiquote:About|Wikiquote tiếng việt]], một tuyển tập các câu trích dẫn miễn phí được biên soạn cộng tác bởi những người giống như bạn!
* Để có cái nhìn tổng quan nhanh về Wikiquote, hãy đọc [[Wikiquote:Wikiquote]].
** Xem thêm [[Wikiquote:Những gì Wikiquote không phải|Những gì Wikiquote không phải]] để biết về các hoạt động phổ biến mà Wikiquote không hỗ trợ.
* Để duyệt Wikiquote, hãy xem [[Wikiquote:Browse|trang chủ duyệt web]].
* Trước khi tạo bài viết mới, hãy tham khảo [[Wikiquote:Guide to layout|hướng dẫn trình bày]]. Bạn có thể thực hành [[Wikiquote:How to edit a page|cách chỉnh sửa một trang]] tại [[Wikiquote:Sandbox|Chỗ thử]].
* Vui lòng nhớ sử dụng [[Help:Edit summary|tóm lược sửa đổi]] khi chỉnh sửa các trang.
* Khi đăng bài trong một cuộc thảo luận, [[Wikiquote:Hãy ký tên vào các bài viết của bạn trên trang thảo luận|vui lòng ký tên kèm ngày tháng]] bằng cách viết bốn dấu ngã (~~~~) rồi lưu lại.
* [[w:Wikipedia:Hãy mạnh dạn|Hãy mạnh dạn]].
Nếu bạn muốn xin lời khuyên hoặc trợ giúp, hãy ghé qua [[WQ:VP|Bàn giúp đỡ]] hoặc đặt câu hỏi trên trang thảo luận của tôi. Chúc bạn chỉnh sửa vui vẻ! Và một lần nữa, chào mừng bạn! <noinclude>
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
[[Category:Các mẫu lời chào mừng người dùng|{{PAGENAME}}]]
[[es:Template:Welcome]]
[[eu:Txantiloi:Ongietorria]]
[[fi:Malline:Tervetuloa Wikisitaatteihin]]
</noinclude>
61c8gd2j7ggukicbmg0cwnqjzevzvkr
Bản mẫu:Remove
10
10529
63336
2026-09-30T16:45:50Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “[[File:Information.svg|left|50px]]Các câu trích dẫn không bao giờ được xóa mà không có lời giải thích trong tóm lược sửa đổi, và ''hầu như luôn luôn'' nên được chuyển đến trang Thảo luận kèm theo ghi chú rằng chúng đã được xóa khỏi bài viết, cùng với lý do đầy đủ. Nếu đó là một câu trích dẫn bị gán sai tác giả, không nên xóa câu trích dẫn đó; thay vào…”
63336
wikitext
text/x-wiki
[[File:Information.svg|left|50px]]Các câu trích dẫn không bao giờ được xóa mà không có lời giải thích trong tóm lược sửa đổi, và ''hầu như luôn luôn'' nên được chuyển đến trang Thảo luận kèm theo ghi chú rằng chúng đã được xóa khỏi bài viết, cùng với lý do đầy đủ. Nếu đó là một câu trích dẫn bị gán sai tác giả, không nên xóa câu trích dẫn đó; thay vào đó, hãy chuyển nó vào mục "Gán sai tác giả", nơi có thể giải thích việc gán sai trong một mục con. Xin cảm ơn.<noinclude>
[[Category:User warning templates|{{PAGENAME}}]]
{{Documentation}}</noinclude>
sm7wiu3rvfpvazjm6kvpktvq1q22hui
Bản mẫu:Remove/doc
10
10530
63337
2026-09-30T16:46:08Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Documentation subpage}} {{Subst}}”
63337
wikitext
text/x-wiki
{{Documentation subpage}}
{{Subst}}
kmzz4svd8zrt0ue8m7td5hjg6kgjxy4
Bản mẫu:Subst
10
10531
63338
2026-09-30T16:49:18Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Mbox | name = name of the template | demospace = template | type = notice | image = [[File:Information icon.svg|40px]] | style=padding:10px; | textstyle=CSS values | text = Mẫu này phải được '''thay thế (subst)''' để có thể hoạt động. Sử dụng theo dạng "<nowiki>{{subst:</nowiki>{{BASEPAGENAME}}<nowiki>}}</nowiki>" trừ khi có quy định khác. | small = left | plainlinks = no }} <noinclude>{{Doc}}Category:Wikiquote…”
63338
wikitext
text/x-wiki
{{Mbox
| name = name of the template
| demospace = template
| type = notice
| image = [[File:Information icon.svg|40px]]
| style=padding:10px;
| textstyle=CSS values
| text = Mẫu này phải được '''thay thế (subst)''' để có thể hoạt động. Sử dụng theo dạng "<nowiki>{{subst:</nowiki>{{BASEPAGENAME}}<nowiki>}}</nowiki>" trừ khi có quy định khác.
| small = left
| plainlinks = no
}}
<noinclude>{{Doc}}[[Category:Wikiquote maintenance templates]]</noinclude>
3ijgp553z75dbicej4kkc0mkbfmossa
Bản mẫu:Đầu biểu quyết
10
10532
63341
2026-10-01T02:17:53Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly><templatestyles src="Đầu biểu quyết/styles.css" /><div class="vote-box"> <div class="vote-box__note">''Biểu quyết này đã kết thúc, <span class="vote-box__emphasize">'''xin đừng sửa đổi'''</span>! Mọi ý kiến xin ghi bên ngoài khung!''<br> '''Kết quả''': {{{1|{{{results|{{{result|{{{kết quả|{{{KQ|{{{kq}}}}}}}}}}}}}}}}}}</div></includeonly><noinclude> {{Tài liệu}}</noinclude>”
63341
wikitext
text/x-wiki
<includeonly><templatestyles src="Đầu biểu quyết/styles.css" /><div class="vote-box">
<div class="vote-box__note">''Biểu quyết này đã kết thúc, <span class="vote-box__emphasize">'''xin đừng sửa đổi'''</span>! Mọi ý kiến xin ghi bên ngoài khung!''<br>
'''Kết quả''': {{{1|{{{results|{{{result|{{{kết quả|{{{KQ|{{{kq}}}}}}}}}}}}}}}}}}</div></includeonly><noinclude>
{{Tài liệu}}</noinclude>
1wixtg67skby4bvgmcbx4k7bnwseerk
Bản mẫu:Đầu biểu quyết/doc
10
10533
63342
2026-10-01T02:18:26Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) --> {{Uses TemplateStyles|Bản mẫu:Đầu biểu quyết/styles.css}} == Cách sử dụng == Cú pháp ví dụ: <syntaxhighlight lang="wikitext"> {{Đầu biểu quyết|kết quả = Đề cử thành công}} Nội dung trang thảo luận {{Kết biểu quyết}} </sy…”
63342
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) -->
{{Uses TemplateStyles|Bản mẫu:Đầu biểu quyết/styles.css}}
== Cách sử dụng ==
Cú pháp ví dụ:
<syntaxhighlight lang="wikitext">
{{Đầu biểu quyết|kết quả = Đề cử thành công}}
Nội dung trang thảo luận
{{Kết biểu quyết}}
</syntaxhighlight>
== Xem thêm ==
* {{tl|Biểu quyết}}
* {{tl|Đầu biểu quyết}}
* {{tl|Kết biểu quyết}}
<includeonly>{{sandbox other||
<!-- Xin hãy thêm thể loại vào phía dưới dòng này, để bổ sung liên kết liên wiki vào Wikidata -->
[[Thể loại:Quản lý Wikipedia]]
[[Thể loại:Công cụ Wikipedia]]
}}</includeonly>
n033yrc19txj4kfyc5mf0gm7srfe1qh
63344
63342
2026-10-01T02:21:31Z
Làm Việc Thiện
13742
63344
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) -->
{{Uses TemplateStyles|Bản mẫu:Đầu biểu quyết/styles.css}}
== Cách sử dụng ==
Cú pháp ví dụ:
<syntaxhighlight lang="wikitext">
{{Đầu biểu quyết|kết quả = Đề cử thành công}}
Nội dung trang thảo luận
{{Kết biểu quyết}}
</syntaxhighlight>
== Xem thêm ==
* {{tl|Biểu quyết}}
* {{tl|Đầu biểu quyết}}
* {{tl|Kết biểu quyết}}
<includeonly>{{sandbox other||
<!-- Xin hãy thêm thể loại vào phía dưới dòng này, để bổ sung liên kết liên wiki vào Wikidata -->
[[Thể loại:Quản lý Wikiquote]]
[[Thể loại:Công cụ Wikiquote]]
}}</includeonly>
mmm5woj58rov8p0gwln6d8v3nda6o6y
Bản mẫu:Uses TemplateStyles
10
10534
63343
2026-10-01T02:18:51Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#invoke:Uses TemplateStyles|main}}</includeonly><noinclude>{{tài liệu}} <!-- Categories go on the /doc subpage and interwikis go on Wikidata. --> </noinclude>”
63343
wikitext
text/x-wiki
<includeonly>{{#invoke:Uses TemplateStyles|main}}</includeonly><noinclude>{{tài liệu}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
58lujvhqyfrlbsnm1f4ce2ignn7z6e7
Mô đun:Uses TemplateStyles
828
10535
63345
2026-10-01T02:22:51Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “local yesno = require('Module:Yesno') local mList = require('Module:List') local mTableTools = require('Module:TableTools') local mMessageBox = require('Module:Message box') local TNT = require('Module:TNT') local p = {} local function format(msg, ...) return TNT.format('I18n/Uses TemplateStyles', msg, ...) end local function getConfig() return mw.loadData('Module:Uses TemplateStyles/config') end local function renderBox(tStyles) local boxArgs =…”
63345
Scribunto
text/plain
local yesno = require('Module:Yesno')
local mList = require('Module:List')
local mTableTools = require('Module:TableTools')
local mMessageBox = require('Module:Message box')
local TNT = require('Module:TNT')
local p = {}
local function format(msg, ...)
return TNT.format('I18n/Uses TemplateStyles', msg, ...)
end
local function getConfig()
return mw.loadData('Module:Uses TemplateStyles/config')
end
local function renderBox(tStyles)
local boxArgs = {
type = 'notice',
small = true,
image = string.format('[[Tập tin:Farm-Fresh css add.svg|32px|alt=%s]]', format('logo-alt'))
}
if #tStyles < 1 then
boxArgs.text = string.format('<strong class="error">%s</strong>', format('error-emptylist'))
else
local cfg = getConfig()
local tStylesLinks = {}
for i, ts in ipairs(tStyles) do
local link = string.format('[[:%s]]', ts)
local sandboxLink = nil
local tsTitle = mw.title.new(ts)
if tsTitle and cfg['sandbox_title'] then
local tsSandboxTitle = mw.title.new(string.format(
'%s:%s/%s/%s', tsTitle.nsText, tsTitle.baseText, cfg['sandbox_title'], tsTitle.subpageText))
if tsSandboxTitle and tsSandboxTitle.exists then
sandboxLink = format('sandboxlink', link, ':' .. tsSandboxTitle.prefixedText)
end
end
tStylesLinks[i] = sandboxLink or link
end
local tStylesList = mList.makeList('bulleted', tStylesLinks)
boxArgs.text = format(
mw.title.getCurrentTitle():inNamespaces(828,829) and 'header-module' or 'header-template') ..
'\n' .. tStylesList
end
return mMessageBox.main('mbox', boxArgs)
end
local function renderTrackingCategories(args, tStyles, titleObj)
if yesno(args.nocat) then
return ''
end
local cfg = getConfig()
local cats = {}
-- Error category
if #tStyles < 1 and cfg['error_category'] then
cats[#cats + 1] = cfg['error_category']
end
-- TemplateStyles category
titleObj = titleObj or mw.title.getCurrentTitle()
if (titleObj.namespace == 10 or titleObj.namespace == 828)
and not cfg['subpage_blacklist'][titleObj.subpageText]
then
local category = args.category or cfg['default_category']
if category then
cats[#cats + 1] = category
end
if not yesno(args.noprotcat) and (cfg['protection_conflict_category'] or cfg['padlock_pattern']) then
local currentProt = titleObj.protectionLevels["edit"] and titleObj.protectionLevels["edit"][1] or nil
local addedLevelCat = false
local addedPadlockCat = false
for i, ts in ipairs(tStyles) do
local tsTitleObj = mw.title.new(ts)
local tsProt = tsTitleObj.protectionLevels["edit"] and tsTitleObj.protectionLevels["edit"][1] or nil
if cfg['padlock_pattern'] and tsProt and not addedPadlockCat then
local content = tsTitleObj:getContent()
if not content:find(cfg['padlock_pattern']) then
cats[#cats + 1] = cfg['missing_padlock_category']
addedPadlockCat = true
end
end
if cfg['protection_conflict_category'] and currentProt and tsProt ~= currentProt and not addedLevelCat then
currentProt = cfg['protection_hierarchy'][currentProt] or 0
tsProt = cfg['protection_hierarchy'][tsProt] or 0
if tsProt < currentProt then
addedLevelCat = true
cats[#cats + 1] = cfg['protection_conflict_category']
end
end
end
end
end
for i, cat in ipairs(cats) do
cats[i] = string.format('[[Thể loại:%s]]', cat)
end
return table.concat(cats)
end
function p._main(args)
local cfg = getConfig()
if #args == 0 then
local prefixed = mw.title.getCurrentTitle().prefixedText
prefixed = prefixed:gsub("/doc","")
args[1] = prefixed .. "/" .. cfg["default_subpage_name"]
end
local tStyles = mTableTools.compressSparseArray(args)
local box = renderBox(tStyles)
local trackingCategories = renderTrackingCategories(args, tStyles)
return box .. trackingCategories
end
function p.main(frame)
local origArgs = frame:getParent().args
local args = {}
for k, v in pairs(origArgs) do
v = v:match('^%s*(.-)%s*$')
if v ~= '' then
args[k] = v
end
end
return p._main(args)
end
return p
cy2d9e7xyuoerhp6jl0sb7r2lm0v7ht
Mô đun:TNT
828
10536
63346
2026-10-01T02:24:36Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-- -- INTRO: (!!! DO NOT RENAME THIS PAGE !!!) -- This module allows any template or module to be copy/pasted between -- wikis without any translation changes. All translation text is stored -- in the global Data:*.tab pages on Commons, and used everywhere. -- -- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules -- -- ATTENTION: -- Please do NOT rename this module - it has to be identical on all wikis. -- This c…”
63346
Scribunto
text/plain
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
-- ATTENTION:
-- Please do NOT rename this module - it has to be identical on all wikis.
-- This code is maintained at https://www.mediawiki.org/wiki/Module:TNT
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- Use lang=xx to set language. Example:
--
-- {{#invoke:TNT | msg
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
--
local config = (function()
local ok, res = pcall(mw.loadData, "Module:TNT/config");
return ok and res or {};
end)();
local p = {}
local i18nDataset = 'I18n/Module:TNT.tab'
-- Forward declaration of the local functions
local sanitizeDataset, loadData, link, formatMessage
function p.msg(frame)
local dataset, id
local params = {}
local lang = nil
for k, v in pairs(frame.args) do
if k == 1 then
dataset = mw.text.trim(v)
elseif k == 2 then
id = mw.text.trim(v)
elseif type(k) == 'number' then
params[k - 2] = mw.text.trim(v)
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
end
end
return formatMessage(dataset, id, params, lang)
end
-- Identical to p.msg() above, but used from other lua modules
-- Parameters: name of dataset, message key, optional arguments
-- Example with 2 params: format('I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.format(dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('format', 1, dataset, 'string')
checkType('format', 2, key, 'string')
return formatMessage(dataset, key, {...})
end
-- Identical to p.msg() above, but used from other lua modules with the language param
-- Parameters: language code, name of dataset, message key, optional arguments
-- Example with 2 params: formatInLanguage('es', I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.formatInLanguage(lang, dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('formatInLanguage', 1, lang, 'string')
checkType('formatInLanguage', 2, dataset, 'string')
checkType('formatInLanguage', 3, key, 'string')
return formatMessage(dataset, key, {...}, lang)
end
-- Obsolete function that adds a 'c:' prefix to the first param.
-- "Sandbox/Sample.tab" -> 'c:Data:Sandbox/Sample.tab'
function p.link(frame)
return link(frame.args[1])
end
local implGetTemplateData;
function p.doc(frame)
local dataset = sanitizeDataset(frame.args[1])
local json, dataPage, categories = implGetTemplateData(nil, dataset, frame.args)
return frame:extensionTag('templatedata', json) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataPage)}) ..
(categories or "");
end
function p.getTemplateData(dataset)
local data = implGetTemplateData(true, dataset);
return data;
end
function p.getTemplateDataNew(...)
return implGetTemplateData(nil, ...);
end
function implGetTemplateData(legacy, dataset, args)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data, dataPage, categories = loadData(
dataset, nil, not legacy and 'TemplateData' or nil);
local names = {}
for _, field in ipairs(data.schema.fields) do
table.insert(names, field.name)
end
local numOnly = true
local params = {}
local paramOrder = {}
for _, row in ipairs(data.data) do
local newVal = {}
local name = nil
for pos, columnName in ipairs(names) do
if columnName == 'name' then
name = row[pos]
else
newVal[columnName] = row[pos]
end
end
if name then
if (
(type(name) ~= "number")
and (
(type(name) ~= "string")
or not string.match(name, "^%d+$")
)
) then
numOnly = false
end
params[name] = newVal
table.insert(paramOrder, name)
end
end
-- Work around json encoding treating {"1":{...}} as an [{...}]
if numOnly then
params['zzz123']=''
end
local json = mw.text.jsonEncode({
params=params,
paramOrder=paramOrder,
description=data.description,
-- TODO: Store this in a dataset:
format = (args and args.format or nil),
})
if numOnly then
json = string.gsub(json,'"zzz123":"",?', "")
end
return json, dataPage, categories;
end
-- Local functions
sanitizeDataset = function(dataset)
if not dataset then
return nil
end
dataset = mw.text.trim(dataset)
if dataset == '' then
return nil
elseif string.sub(dataset,-4) ~= '.tab' then
return dataset .. '.tab'
else
return dataset
end
end
loadData = function(dataset, lang, dataType)
dataset = sanitizeDataset(dataset)
if not dataset then
error(formatMessage(i18nDataset, 'error_no_dataset', {}))
end
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error(string.format([['''Missing JsonConfig extension, or not properly configured;
Cannot load https://commons.wikimedia.org/wiki/Data:%s.
See https://www.mediawiki.org/wiki/Extension:JsonConfig#Supporting_Wikimedia_templates''']], dataset))
end
local dataPage = dataset;
local data, categories;
if dataType == 'TemplateData' then
dataPage = 'TemplateData/' .. dataset;
data = mw.ext.data.get(dataPage, lang);
if data == false then
data = mw.ext.data.get('Templatedata/' .. dataset, lang);
if data ~= false then
local legacyTemplateDataCategoryName = config.legacyTemplateDataCategoryName;
if legacyTemplateDataCategoryName ~= false then
categories = string.format(
'[[Category:%s%s]]',
legacyTemplateDataCategoryName or "Templates using legacy global TemplateData table name",
config.translatableCategoryLink and mw.getCurrentFrame():callParserFunction("#translation:") or ""
);
end
dataPage = 'Templatedata/' .. dataset;
end
end
else
data = mw.ext.data.get(dataset, lang)
end
if data == false then
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Missing Commons dataset ' .. i18nDataset)
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataPage)}))
end
end
return data, dataPage, categories;
end
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
link = function(dataset)
return 'c:Data:' .. mw.text.trim(dataset or '')
end
formatMessage = function(dataset, key, params, lang)
for _, row in pairs(loadData(dataset, lang).data) do
local id, msg = unpack(row)
if id == key then
local result = mw.message.newRawMessage(msg, unpack(params or {}))
return result:plain()
end
end
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Invalid message key "' .. key .. '"')
else
error(formatMessage(i18nDataset, 'error_bad_msgkey', {key, link(dataset)}))
end
end
return p
2ii65lh3z6ssbx7s7r8h0vsbnbhbiyl
Bản mẫu:Đầu biểu quyết/styles.css
10
10537
63347
2026-10-01T02:29:41Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “.vote-box { margin: 5px 0 10px 0; padding: 6px; background-color: var(--background-color-neutral-subtle, #f8f9fa); border: 1px solid var(--border-color-subtle, #c8ccd1); } .vote-box__note { background-color: var(--background-color-progressive-subtle, #f1f4fd); border: 1px dashed var(--border-color-progressive, #6485d1); text-align: center; } .vote-box__emphasize { color: var(--color-destructive, #bf3c2c); }”
63347
sanitized-css
text/css
.vote-box {
margin: 5px 0 10px 0;
padding: 6px;
background-color: var(--background-color-neutral-subtle, #f8f9fa);
border: 1px solid var(--border-color-subtle, #c8ccd1);
}
.vote-box__note {
background-color: var(--background-color-progressive-subtle, #f1f4fd);
border: 1px dashed var(--border-color-progressive, #6485d1);
text-align: center;
}
.vote-box__emphasize {
color: var(--color-destructive, #bf3c2c);
}
jlt4eycct0vlmvlxptgp3nfsci8jdzv
Bản mẫu:Kết biểu quyết
10
10538
63348
2026-10-01T02:32:07Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly><div class="vote-box__note">''Biểu quyết này đã kết thúc, <span class="vote-box__emphasize">'''xin đừng sửa đổi'''</span>! Mọi ý kiến xin ghi bên ngoài khung!''</div></div></includeonly><noinclude>{{Tài liệu|Bản mẫu:Đầu biểu quyết/doc}}</noinclude>”
63348
wikitext
text/x-wiki
<includeonly><div class="vote-box__note">''Biểu quyết này đã kết thúc, <span class="vote-box__emphasize">'''xin đừng sửa đổi'''</span>! Mọi ý kiến xin ghi bên ngoài khung!''</div></div></includeonly><noinclude>{{Tài liệu|Bản mẫu:Đầu biểu quyết/doc}}</noinclude>
4113ipyxtne2vadto420ov0qu2hzjgg
Bản mẫu:Strong
10
10539
63355
2026-10-01T02:54:33Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<strong {{#if:{{{class|}}}|class="{{{class}}}"}} {{#if:{{{id|}}}|id="{{{id}}}"}} {{#if:{{{style|}}}|style="{{{style}}}"}} {{#if:{{{title|}}}|title="{{{title}}}"}}>{{{1}}}</strong><noinclude> {{Tài liệu}} <!-- Add cats and interwikis to the /doc subpage, not here! --> </noinclude>”
63355
wikitext
text/x-wiki
<strong {{#if:{{{class|}}}|class="{{{class}}}"}} {{#if:{{{id|}}}|id="{{{id}}}"}} {{#if:{{{style|}}}|style="{{{style}}}"}} {{#if:{{{title|}}}|title="{{{title}}}"}}>{{{1}}}</strong><noinclude>
{{Tài liệu}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
6u2it5guiaus4d1i8dlu8sr3in6j4p2
Bản mẫu:Strong/doc
10
10540
63356
2026-10-01T02:54:52Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Sử dụng nhiều}} <!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) --> This template marks text as {{strong|important, serious, or urgent}} using the HTML {{tag|strong|o|link=yes}} tag. It usually renders in bold, but there is additional significance explained in {{slink||Purpose}}. == Purpose == {{tlx|strong}} make…”
63356
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Sử dụng nhiều}}
<!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) -->
This template marks text as {{strong|important, serious, or urgent}} using the HTML {{tag|strong|o|link=yes}} tag. It usually renders in bold, but there is additional significance explained in {{slink||Purpose}}.
== Purpose ==
{{tlx|strong}} makes it faster and easier to apply the {{tag|strong|link=yes}} [[HTML element]] to text, which indicates {{strong|importance, seriousness, or urgency}}. More importantly, this template indicates to human editors and [[Wikipedia:Bots|Wikipedia bot]]s they should not use <code><nowiki>'''...'''</nowiki></code> or {{tag|b}} typographic boldfacing to replace the intentional and [[Semantic Web|semantically meaningful]] {{tag|strong|open}}. The {{tag|strong|o}} element is usually rendered visually in a bold (heavy) typeface by default on graphical browsers, but can be parsed and acted upon in customizable ways with [[Style sheet (web development)|style sheets]], [[Application software|apps]], and text-to-speech [[screen reader]]s. It is [[semantic markup]], i.e. markup that conveys meaning or context, not just visual appearance.
[[MOS:BOLD|Simple boldfacing]] (<code><nowiki>'''</nowiki></code> or {{tag|b|o}}) is purely typographic and is semantically meaningless. It is most often used for [[MOS:BOLDTITLE|article names in body text]], but has [[MOS:BOLD#OTHER|a few other uses]]. The average reader and average editor may be unaware of this distinction as it is unimportant most of the time, but editors who understand it can use this template as a baseline insurance against accidental replacement by bots and human editors, as well as to add [[web accessibility]].
== Usage ==
:{{tlnull|strong|<var>important text</var>}}
or, if the important text contains an equals sign:
:{{tlnull|strong|'''1{{=}}'''<var>important text</var>}}
These both render as:
:{{strong|important text}}
It is safest to always use the {{para|1}} syntax.
=== Optional parameter s===
Advanced HTML values can be passed through the template to the HTML code:
* {{para|role}} takes a WAI-ARIA role; adds <code>role="<var>rolename</var>"</code> to the HTML code
* {{para|class}} takes a class name (or multiple class names, separated by spaces); adds <code>class="<var>classname[s]</var>"</code> to the HTML code
* {{para|style}} takes inline CSS input; adds <code>style="<var>CSS directive[s]</var>"</code> to the HTML code
* {{para|id}} takes a valid, unique HTML id (must begin with an alphabetic letter); adds <code>id="<var>name</var>"</code> to the HTML code
* {{para|title}} takes text and displays it as a pop-up "tooltip" when the cursor hovers over the {{tnull|strong}} span. This text cannot be marked up in any way.
===Use se cases ===
{{more|Wikipedia:WikiProject Usability/Scannability}}
This template is made to mark important words or phrases in a text, in a way that is (unlike simply boldfacing it) [[Semantic markup|semantically meaningful markup]]. With this technique, the important text strongly stands out from the rest in most if not all visual browsers and some text-to-speech screen readers (which usually ignore purely typographic boldfacing), and can also be parsed by user agents and other software as definitively indicating importance, not just some typographic boldface effect for appearance's sake. It should therefore only be used very sparingly in articles to highlight the most important words or phrases in the entire article (and, rarely in encyclopedic writing, to represent relative importance). Use of this template has a strong effect on {{Linktext|scannability}}, drawing the eye from elsewhere on the page to words marked up with the template.
Typical uses on Wikipedia:
# In the [[MOS:BOLDTITLE|lead section of an article, the article's title]] can be marked with {{tnull|strong}}. Example: "The {{strong|soma}} is the bulbous end of a neuron." {{As of|July 2022}}, however, there is no consensus either for or against this use, and the style guidelines at [[MOS:BOLDTITLE]] and [[MOS:BOLDSYN]] recommend regular bolding.<ref>The use of this template has been briefly discussed [[Wikipedia talk:Manual of Style/Lead section/Archive 20#Shouldn't we use semantic markup in the lead?|in 2018]] and [[Template talk:Strong#Use in lead sections of articles|in 2022]].</ref>
# After the lead, it {{em|can}} be used to highlight crucial terms of importance only slightly secondary to that of the article title and its synonyms. For example, the article on a viral infection might use {{tnull|strong}} to highlight the names of two identified strains of the disease in a "Varieties" section, as an aid to scannability. If such crucial terms are redirected terms, the style guideline at [[MOS:BOLDREDIRECT]] recommends formatting boldface as in the article title.
# In unusual cases (most often direct quotations) it is used to represent contextually important text, if the passage were spoken rather than written (e.g., because it indicates shouting).
# Outside articles, it {{em|can}} be used (but {{as of|July 2021|lc=y}} isn't yet common) in polls, XfD processes, RfX votes, and similar comments and debates where users indicate that they approve of or disagree with a view or proposal. Example: "{{strong|Support}}, because of this and that reasons [...]" or "{{strong|Oppose}}, because of this and that reasons [...]". However, please note the use of [[Wikipedia:Voting templates|templates in voting]] is generally discouraged.
== When this template should not be used ==
Because {{tnull|strong}} is strictly for semantic (meaningful) importance, it should not be used for layout, typography conventions and such. In these different cases, bold <code><nowiki>'''...'''</nowiki></code> (which resolves to {{tag|b}} in the browser or other user agent) should be used instead. It also should not be used when the text to which it is applied is boldfaced for some other reason (e.g., it is part of a heading); in such cases use {{tlx|em}} instead. Avoid using {{tnull|strong}} in non-quoted sentences that end in an exclamation point. And it is usually excessive to use it on terms that are Wikilinked, since the link markup acts to indicate importance itself.
== Xem thêm ==
* {{tlx|strongbad}} – same but {{strongbad|red}}
* {{tlx|stronggood}} – same but {{stronggood|green}}
* {{tlx|em}} – for {{em|italic}} rather than bold semantic emphasis
== Notes ==
{{Reflist}}
{{Semantic markup templates|show}}
<includeonly>{{sandbox other||
<!-- Xin hãy thêm thể loại vào phía dưới dòng này, để bổ sung liên kết liên wiki vào Wikidata -->
[[Thể loại:Bản mẫu thay thế thẻ XHTML Wikipedia]]
}}</includeonly>
b9l0fiyh33vxx0wrwotb9mzrltthn56
Bản mẫu:Tag
10
10541
63357
2026-10-01T02:56:03Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<code class="{{#ifeq:{{{wrap|}}}|yes|wrap|nowrap}}" style="{{#ifeq:{{{style|}}}|plain|border:none;background:transparent;color:inherit;|{{{style|}}}}}"><!-- Opening tag -->{{#switch:{{{2|pair}}} |c|close = |e|empty|s|single|v|void |o|open |p|pair = <{{#if:{{{link|}}}|[[HTML element#{{{1|tag}}}|{{{1|tag}}}]]|{{{1|tag}}}}}{{#if:{{{params|{{{attribs|}}}}}}| {{{params|{{{attribs}}}}}}}} }}<!-- Content between tags -->{{#switch:{{{2|pair}}}…”
63357
wikitext
text/x-wiki
<code class="{{#ifeq:{{{wrap|}}}|yes|wrap|nowrap}}" style="{{#ifeq:{{{style|}}}|plain|border:none;background:transparent;color:inherit;|{{{style|}}}}}"><!--
Opening tag
-->{{#switch:{{{2|pair}}}
|c|close =
|e|empty|s|single|v|void
|o|open
|p|pair = <{{#if:{{{link|}}}|[[HTML element#{{{1|tag}}}|{{{1|tag}}}]]|{{{1|tag}}}}}{{#if:{{{params|{{{attribs|}}}}}}| {{{params|{{{attribs}}}}}}}}
}}<!--
Content between tags
-->{{#switch:{{{2|pair}}}
|c|close = {{{content|{{{nội dung|}}}}}}
|e|empty|s|single|v|void =  />
|o|open = >{{{content|{{{nội dung|}}}}}}
|p|pair = {{#ifeq:{{{1|tag}}}|!--||>}}{{{content|{{{nội dung|...}}}}}}
}}<!--
Closing tag
-->{{#switch:{{{2|pair}}}
|e|empty|s|single|v|void
|o|open =
|c|close
|p|pair = {{#ifeq:{{{1|tag}}}|!--|-->|</{{{1|tag}}}>}}
}}<!--
--></code><noinclude>
{{Tài liệu}}
</noinclude>
mw5efy90z0j9l732p2n9wwvtwacg9z8
Bản mẫu:Tag/doc
10
10542
63358
2026-10-01T02:56:48Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Interwikitmp-grp|cms=Tag|wbk=Tag|mdw=Tag}} <!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE --> This template provides a quick way to mention an XML-style tag in a preformatted way. Mainly used in discussion/help pages. === Usage === *'''first parameter''' — ''(mandatory)'' the name of the HTML tag *'''second parameter''' — what type of tag to display: **<code>p</code> or <code>pair</code> – ''(d…”
63358
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Interwikitmp-grp|cms=Tag|wbk=Tag|mdw=Tag}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
This template provides a quick way to mention an XML-style tag in a preformatted way. Mainly used in discussion/help pages.
=== Usage ===
*'''first parameter''' — ''(mandatory)'' the name of the HTML tag
*'''second parameter''' — what type of tag to display:
**<code>p</code> or <code>pair</code> – ''(default)'' display a matched pair of open-and-close tags: {{tag|font|pair}}
***To suppress the ellipsis which appears between the tags, add an empty {{thông số|content}} parameter
**<code>o</code> or <code>open</code> – display only the opening tag of an open-and-close pair: {{tag|span|open}}
**<code>c</code> or <code>close</code> – display only the closing tag of an open-and-close pair: {{tag|span|close}}
**<code>s</code> or <code>single</code> – display a single tag: {{tag|br|single}}
*'''content=''' — the text content of the tags
*'''params=''' — any parameters to be included in the opening tag
====Examples====
* <code><nowiki>{{tag|ref}}</nowiki></code> → {{tag|ref}}
* <code><nowiki>{{tag|ref|content=}}</nowiki></code> → {{tag|ref|content=}}
* <code><nowiki>{{tag|ref|content=hello}}</nowiki></code> → {{tag|ref|content=hello}}
* <code><nowiki>{{tag|font|content=foo}}</nowiki></code> → {{tag|font|content=foo}}
* <code><nowiki>{{tag|font|open}}</nowiki></code> → {{tag|font|open}}
* <code><nowiki>{{tag|font|open|content=hello}}</nowiki></code> → {{tag|font|open|content=hello}}
* <code><nowiki>{{tag|span|close|content=hello}}</nowiki></code> → {{tag|span|close|content=hello}}
* <code><nowiki>{{tag|span|pair|content=hello}}</nowiki></code> → {{tag|span|pair|content=hello}}
* <code><nowiki>{{tag|ref|open|params=group="note"}}</nowiki></code> → {{tag|ref|open|params=group="note"}}
* <code><nowiki>{{tag|references|single}}</nowiki></code> → {{tag|references|single}}
* <code><nowiki>{{tag|br|single}}</nowiki></code> → {{tag|br|single}}
=== See also ===
*{{tl|HTMLElement}}
*{{tl|XMLElement}}
*{{tl|xtag}} adds a MediaWiki parser or extension tag that links to the extension page.
*The [[mw:Help:Magic words#Miscellaneous|#tag:]] parserfunction generates working tags.
<includeonly>
<!-- CATEGORIES AND INTERWIKIS BELOW THIS LINE PLEASE -->
[[Thể loại:Programming typing-aid templates|{{PAGENAME}}]]
[[Thể loại:Bản mẫu thay thế thẻ XHTML Wikipedia]]
</includeonly>
7q44htnt886xftw8pb3ts4pshf7sqrr
Bản mẫu:Section link
10
10543
63359
2026-10-01T02:58:29Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{#gọi:Section link|main}}<noinclude> {{Tài liệu}} <!-- Categories go on the /doc subpage and interwikis go on Wikidata. --> </noinclude>”
63359
wikitext
text/x-wiki
{{#gọi:Section link|main}}<noinclude>
{{Tài liệu}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
eae5tv9dmpdyncxy3yd5ojmx93a5uu8
Bản mẫu:Slink
10
10544
63360
2026-10-01T02:58:59Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Section link]]
63360
wikitext
text/x-wiki
#đổi [[Bản mẫu:Section link]]
rrlwtu5v5iz6rbnzi4i6nk5d277ziia
Bản mẫu:Section link/doc
10
10545
63361
2026-10-01T02:59:18Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Redirect|Bản mẫu:Slink|bản mẫu liên kết tới kết quả tìm kiếm|Bản mẫu:Search link}} {{viết tắt bản mẫu|slink|§l}} {{#ifeq: {{PAGENAME}}|{{ROOTPAGENAME}}|{{High-risk|200+}}}} {{lua|Mô đun:Section link}} == Cách sử dụng == === Cú pháp (tổng quan) === * <code><nowiki>{{section link|Bài viết|phần}}</nowiki></code>, liên kết đến phần của bài viết khác. → Ví dụ: {{section link|Albert Einst…”
63361
wikitext
text/x-wiki
{{Redirect|Bản mẫu:Slink|bản mẫu liên kết tới kết quả tìm kiếm|Bản mẫu:Search link}}
{{viết tắt bản mẫu|slink|§l}}
{{#ifeq: {{PAGENAME}}|{{ROOTPAGENAME}}|{{High-risk|200+}}}}
{{lua|Mô đun:Section link}}
== Cách sử dụng ==
=== Cú pháp (tổng quan) ===
* <code><nowiki>{{section link|Bài viết|phần}}</nowiki></code>, liên kết đến phần của bài viết khác. → Ví dụ: {{section link|Albert Einstein|Sự nghiệp khoa học}}
* <code><nowiki>{{section link|Bài viết|phần|nopage=y}}</nowiki></code>, liên kết đến phần của bài viết khác, chỉ hiển thị tiêu đề của phần → Ví dụ: {{section link|Albert Einstein|Sự nghiệp khoa học|nopage=y}} của ông ấy
* <code><nowiki>{{section link||phần}}</nowiki></code>, cho việc sử dụng trong cùng một bài viết, để lại vị trí thứ 2 trống → Ví dụ: {{section link||Sự nghiệp khoa học}}
=== Phần đơn ===
Bản mẫu {{tl|section link}} này, hoặc bản mẫu rút gọn {{tl|slink}}, được sử dụng để tạo ra một liên kết đến một phần nhất định của một trang wiki địa phương và đưa ra một dấu phần thích hợp ([[§]]).
Thay vì:
<code><nowiki>[[Albert Einstein#Sự nghiệp khoa học]]</nowiki></code>
[[Albert Einstein#Sự nghiệp khoa học]]
...bạn có thể viết:
<code><nowiki>{{section link|Albert Einstein|Sự nghiệp khoa học}}</nowiki></code>
{{section link|Albert Einstein|Sự nghiệp khoa học}}
=== Nhiều đoạn ===
Bản mẫu này có thể tạo ra các liên kết liên tiếp thành một số phần của cùng một trang:
<syntaxhighlight lang=moin>{{section link|History of IBM|1880s–1924: The origin of IBM|1969: Antitrust, the Unbundling of software and services|1993–present: IBM's near disaster and rebirth}}</syntaxhighlight>
...sẽ tạo ra:
:{{section link|History of IBM|1880s–1924: The origin of IBM|1969: Antitrust, the Unbundling of software and services|1993–present: IBM's near disaster and rebirth}}
===Ngăn chặn tên trang===
Đôi khi tên trang cần không xuất hiện, ví dụ để tránh dư thừa và wordiness. Đối với các trang mà trên bản mẫu đó được sử dụng, không chỉ định một tên trang tạo chỉ một phần liên kết. Sau đây:
<pre>{{Section link||Ngăn chặn tên trang}}</pre>
...là tương đương với:
<pre>[[#Ngăn chặn tên trang|§ Ngăn chặn tên trang]]</pre>
...và đưa ra như:
:{{section link||Ngăn chặn tên trang}}
Đối với các trang khác, {{para|nopage|y}} có thể được sử dụng để ngăn chặn các tên trang.
So sánh các kết quả hiển thị:
*<code><nowiki>{{section link|WP:CNBS|Viết hoa}}</nowiki></code> →{{section link|WP:CNBS|Viết hoa}}
*<code><nowiki>{{section link|WP:CNBS|Viết hoa|nopage=y}}</nowiki></code> → {{section link|WP:CNBS|Viết hoa|nopage=y}}
*<code><nowiki>{{section link|WP:CNBS|Viết hoa|Tài liệu giống tiêu đề|I và Y}}</nowiki></code> → {{section link|WP:CNBS|Viết hoa|Tài liệu giống tiêu đề|I và Y}}}
*<code><nowiki>{{section link|WP:CNBS|Viết hoa|Tài liệu giống tiêu đề|I và Y|nopage=y}}</nowiki></code> → {{section link|WP:CNBS|Viết hoa|Tài liệu giống tiêu đề|I và Y|nopage=y}}
==Xem thêm==
*{{unichar|00A7|Ký hiệu phần|nlink=Ký hiệu phần}}
*{{tl|Multi-section link}}{{snd}}để liên kết đến một phần bài viết đồng thời cũng liệt kê ra các phần nhỏ được lồng trong phần đó
*{{tl|Anchor}}
*{{tl|Article link}}{{snd}}để liên kết tới trang chính từ trang thảo luận của nó
*{{tl|Pslink}}{{snd}}để liên kết tới 1 phần mà không hiển thị ký hiệu phần (§)
<includeonly>{{#ifeq:{{SUBPAGENAME}}|chỗ thử||
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
[[Thể loại:Bản mẫu định dạng liên kết neo và phần|{{PAGENAME}}]]
}}</includeonly>
qijlbf203jmcpumwdukzk3pc4j7vt0u
Mô đun:Section link
828
10546
63362
2026-10-01T02:59:55Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-- Mô đun này thực hiện {{section link}}. local checkType = require('libraryUtil').checkType local p = {} local function makeSectionLink(page, section, display) display = display or section page = page or '' return string.format('[[%s#%s|%s]]', page, section, display) end local function normalizeTitle(title) title = mw.ustring.gsub(mw.ustring.gsub(title,"'",""),'"','') return mw.title.new(mw.ustring.gsub(title,"%b<>","")).prefixedText en…”
63362
Scribunto
text/plain
-- Mô đun này thực hiện {{section link}}.
local checkType = require('libraryUtil').checkType
local p = {}
local function makeSectionLink(page, section, display)
display = display or section
page = page or ''
return string.format('[[%s#%s|%s]]', page, section, display)
end
local function normalizeTitle(title)
title = mw.ustring.gsub(mw.ustring.gsub(title,"'",""),'"','')
return mw.title.new(mw.ustring.gsub(title,"%b<>","")).prefixedText
end
function p._main(page, sections, options, title)
-- Validate input.
checkType('_main', 1, page, 'string', true)
checkType('_main', 3, options, 'table', true)
if sections == nil then
sections = {}
elseif type(sections) == 'string' then
sections = {sections}
elseif type(sections) ~= 'table' then
error(string.format(
"loại lỗi trong đối số #2 đến '_main' " ..
"(chuỗi, bảng hoặc không mong đợi, lấy được %s)",
type(sections)
), 2)
end
options = options or {}
title = title or mw.title.getCurrentTitle()
-- Deal with blank page names elegantly
if page and not page:find('%S') then
page = nil
options.nopage = true
end
-- Make the link(s).
local isShowingPage = not options.nopage
if #sections <= 1 then
local linkPage = page or ''
local section = sections[1] or 'Ghi chú'
local display = '§ ' .. section
if isShowingPage then
page = page or title.prefixedText
if options.display and options.display ~= '' then
if normalizeTitle(options.display) == normalizeTitle(page) then
display = options.display .. ' ' .. display
else
error(string.format(
'Hiển thị tiêu đề "%s" đã bị bỏ qua kể từ khi nó ' ..
"không tương đương với tiêu đề thực tế của trang",
options.display
), 0)
end
else
display = page .. ' ' .. display
end
end
return makeSectionLink(linkPage, section, display)
else
-- Multiple sections. First, make a list of the links to display.
local ret = {}
for i, section in ipairs(sections) do
ret[i] = makeSectionLink(page, section)
end
-- Assemble the list of links into a string with mw.text.listToText.
-- We use the default separator for mw.text.listToText, but a custom
-- conjunction. There is also a special case conjunction if we only
-- have two links.
local conjunction
if #sections == 2 then
conjunction = '​ và '
else
conjunction = ', và '
end
ret = mw.text.listToText(ret, nil, conjunction)
-- Add the intro text.
local intro = '§§ '
if isShowingPage then
intro = (page or title.prefixedText) .. ' ' .. intro
end
ret = intro .. ret
return ret
end
end
function p.main(frame)
local args = require('Mô đun:Arguments').getArgs(frame, {
wrappers = 'Bản mẫu:Section link',
valueFunc = function (key, value)
value = value:match('^%s*(.-)%s*$') -- Trim whitespace
-- Allow blank first parameters, as the wikitext template does this.
if value ~= '' or key == 1 then
return value
end
end
})
-- Sort the arguments.
local page
local sections, options = {}, {}
for k, v in pairs(args) do
if k == 1 then
-- Doing this in the loop because of a bug in [[Mô đun:Arguments]]
-- when using pairs with deleted arguments.
page = mw.text.decode(v, decodeNamedEntities)
elseif type(k) == 'number' then
sections[k] = v
else
options[k] = v
end
end
-- Extract section from page, if present
if page then
local p, s = page:match('^(.-)#(.*)$')
if p then page, sections[1] = p, s end
end
-- Compress the sections array.
local function compressArray(t)
local nums, ret = {}, {}
for num in pairs(t) do
nums[#nums + 1] = num
end
table.sort(nums)
for i, num in ipairs(nums) do
ret[i] = t[num]
end
return ret
end
sections = compressArray(sections)
return p._main(page, sections, options)
end
return p
04m803tjxqvfab87iv7sgwjnfiy552y
Bản mẫu:Đổi hướng
10
10547
63363
2026-10-01T03:01:18Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#ifeq:{{{vi|}}}|yes|{{Hatnote|Mục từ "{{#ifexist: {{{1|}}} | {{{1}}} | [[{{{1}}}]][[Thể loại:Bài cần trang đổi hướng|{{PAGENAME}}]] }}" dẫn đến bài này. Xin đọc về {{{3|các nghĩa khác}}} tại [[:{{#if: {{{2|}}} | {{{2}}} | {{{1}}} (định hướng) }}]].}}{{#ifexist: {{#if: {{{2|}}} | {{{2}}} | {{{1}}} (định hướng) }} || [[Thể loại:Bài cần trang định hướng|{{PAGENAME}}]] }}|{{#invoke:…”
63363
wikitext
text/x-wiki
<includeonly>{{#ifeq:{{{vi|}}}|yes|{{Hatnote|Mục từ "{{#ifexist: {{{1|}}} | {{{1}}} | [[{{{1}}}]][[Thể loại:Bài cần trang đổi hướng|{{PAGENAME}}]] }}" dẫn đến bài này. Xin đọc về {{{3|các nghĩa khác}}} tại [[:{{#if: {{{2|}}} | {{{2}}} | {{{1}}} (định hướng) }}]].}}{{#ifexist:
{{#if: {{{2|}}} | {{{2}}} | {{{1}}} (định hướng) }} ||
[[Thể loại:Bài cần trang định hướng|{{PAGENAME}}]]
}}|{{#invoke:redirect hatnote|redirect|1}}}}</includeonly><noinclude>
{{Tài liệu}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
fc9d6hiflc93e5427vzjmse3i5truyc
Bản mẫu:Đổi hướng/doc
10
10548
63364
2026-10-01T03:01:55Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{chú ý|1=Bản mẫu này không được dùng để đổi hướng. Xem * [[Wikipedia:Trang đổi hướng]] để có những hướng dẫn chung về đổi hướng. * [https://en.wikipedia.org/wiki/Template:R_template_index R template index] các loại bản mẫu đổi hướng (Tiếng Anh). }} {{chú ý|1=Bản mẫu này dùng kiểu thứ tự liên kết đổi hướng mới bằng mô đun hoàn toàn theo…”
63364
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{chú ý|1=Bản mẫu này không được dùng để đổi hướng. Xem
* [[Wikipedia:Trang đổi hướng]] để có những hướng dẫn chung về đổi hướng.
* [https://en.wikipedia.org/wiki/Template:R_template_index R template index] các loại bản mẫu đổi hướng (Tiếng Anh).
}}
{{chú ý|1=Bản mẫu này dùng kiểu thứ tự liên kết đổi hướng mới bằng mô đun hoàn toàn theo Wikipedia tiếng Anh mặc định từ 2021. Các bài viết từ 2021 về trước nếu vẫn dùng kiểu không có mô đun không theo kiểu Wikipedia tiếng Anh thì hãy thêm tham số {{tlx|Đổi hướng|vi{{=}}pvqvn}} để dùng kiểu cũ hoặc sửa lại cho đúng thứ tự trong tài liệu.''' Tuy nhiên, phương pháp tốt nhất vẫn là sửa lại cho đúng thứ tự sẽ tốt hơn việc thêm tham số trên. Lưu ý không nên sửa hoặc lùi lại phiên bản cũ của bản mẫu chỉ vì liên kết sai thứ tự.'''}}
{{lua|Module:Redirect hatnote}}
* {{tlx|Đổi hướng|Foo}} → {{Đổi hướng|Foo}}
Mục đích của nó là để giảm sự nhầm lẫn bằng cách giúp người dùng có được trang dự định của họ nếu họ đã được chuyển hướng đến một trang khác trong khi, ví dụ, tìm kiếm một chủ đề. Một ví dụ sẽ là khi người dùng tìm kiếm cho [[deleteb]] (như trong [[deleteyahoo.com!. (hoàng đế)|hoàng đế]]), nhưng kết thúc trên trang có tiêu đề [[Achilles]] (như anh hùng trong thần thoại) sau khi được chuyển hướng.
== Các ví dụ ==
* {{tlx|Đổi hướng|Foo}} → {{Đổi hướng|Foo}}
* {{tlx|Đổi hướng|ĐỔI HƯỚNG<nowiki>||</nowiki>PAGE1}} → {{Đổi hướng|ĐỔI HƯỚNG||PAGE1}}
* {{tlx|Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1}} → {{Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1}}
* {{tlx|Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1|USE2|PAGE2|USE3|PAGE3}} → {{Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1|USE2|PAGE2|USE|PAGE}}
* {{tlx|Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1|và|PAGE2}} → {{Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1|và|PAGE2}}
* {{tlx|Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1|USE2|PAGE2|và|PAGE}} → {{Đổi hướng|ĐỔI HƯỚNG|USE1|PAGE1|USE2|PAGE2|và|PAGE}}
* {{tlx|Đổi hướng|Achilleus|Hoàng đế với tên này|Achilleus (hoàng đế)|các ứng dụng khác|Achilles (định hướng)}} (như được sử dụng trên trang [[Achilles]]) → {{Đổi hướng|Achilleus|Hoàng đế với tên này|Achilleus (hoàng đế)|các ứng dụng khác|Achilles (định hướng)}}
<includeonly>
[[Thể loại:Bản mẫu định hướng|{{PAGENAME}}]]
[[Thể loại:Bản mẫu đổi hướng|{{PAGENAME}}]]
[[Thể loại:Bản mẫu dùng ParserFunctions|{{PAGENAME}}]]
[[Thể loại: không được phép in sao chép với mọi hình thức nào trên trang.]]
</includeonly>
893qh7x2jdb6n41rdszgtrho700j811
Mô đun:Redirect hatnote
828
10549
63365
2026-10-01T03:02:17Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “--[[ -- This module produces a "redirect" hatnote. It looks like this: -- '"X" redirects here. For other uses, see Y.' -- It implements the {{redirect}} template. --]] local mHatnote = require('Mô đun:Hatnote') local mHatList = require('Mô đun:Hatnote list') local mArguments --lazily initialize local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local checkTypeMulti = libraryUtil.checkTypeMulti local p = {} local fu…”
63365
Scribunto
text/plain
--[[
-- This module produces a "redirect" hatnote. It looks like this:
-- '"X" redirects here. For other uses, see Y.'
-- It implements the {{redirect}} template.
--]]
local mHatnote = require('Mô đun:Hatnote')
local mHatList = require('Mô đun:Hatnote list')
local mArguments --lazily initialize
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local checkTypeMulti = libraryUtil.checkTypeMulti
local p = {}
local function getTitle(...)
local success, titleObj = pcall(mw.title.new, ...)
if success then
return titleObj
else
return nil
end
end
function p.redirect(frame)
mArguments = require('Mô đun:Arguments')
local args = mArguments.getArgs(frame, {parentOnly=true})
--Get number of redirects
local numRedirects = tonumber(frame.args[1]) or 1
-- Create the options table.
local options = {}
options.selfref = args.selfref
return p._redirect(args, numRedirects, options)
end
function p._redirect(args, numRedirects, options, currentTitle, redirectTitle, targetTitle)
-- Validate the input. Don't bother checking currentTitle, redirectTitle or
-- targetTitle, as they are only used in testing.
checkType('_redirect', 1, args, 'table')
checkType('_redirect', 2, numRedirects, 'number', true)
numRedirects = numRedirects or 1
checkType('_redirect', 3, options, 'table', true)
options = options or {}
currentTitle = currentTitle or mw.title.getCurrentTitle()
-- Get the table of redirects
local redirect = {}
for i = 1, numRedirects do
-- Return an error if a redirect parameter is missing.
if not args[i] then
return mHatnote.makeWikitextError(
'tham số đổi hướng bị thiếu',
'Bản mẫu:Đổi hướng#Các lỗi',
args.category
)
end
redirect[i] = args[i]
end
-- Generate the text.
local formattedRedirect = {}
for k,v in pairs(redirect) do
formattedRedirect[k] = '"' .. v .. '"'
end
local text = {
mHatList.andList(formattedRedirect) .. ' ' .. (#redirect == 1 and 'đổi hướng' or 'đổi hướng') .. ' tới đây.',
mHatList._forSee(args, #redirect + 1, {title = redirect[1]})
}
text = table.concat(text, ' ')
-- Functionality for adding categories
local categoryTable = {}
function addCategory(cat)
if cat and cat ~= '' then
-- Add by index to avoid duplicates
categoryTable[string.format('[[Thể loại:%s]]', cat)] = true
end
end
--Generate tracking categories
local mhOptions = {}
for k,v in pairs(redirect) do
-- We don't need a tracking category if the template invocation has been
-- copied directly from the docs, or if we aren't in main- or category-space.
if not v:find('^REDIRECT%d*$') and v ~= 'TERM' --
and currentTitle.namespace == 0 or currentTitle.namespace == 14
then
redirectTitle = redirectTitle or getTitle(v)
if not redirectTitle or not redirectTitle.exists then
addCategory('Thiếu trang đổi hướng')
elseif not redirectTitle.isRedirect then
addCategory('Bài viết có hatnote đổi hướng cần kiểm tra lại')
else
local mRedirect = require('Mô đun:Redirect')
local target = mRedirect.getTarget(redirectTitle)
targetTitle = targetTitle or target and getTitle(target)
if targetTitle and targetTitle ~= currentTitle then
addCategory('Bài viết có hatnote đổi hướng cần kiểm tra lại')
end
end
end
-- Generate the options to pass to [[Mô đun:Hatnote]].
if currentTitle.namespace == 0 and not mhOptions.selfref
and redirectTitle and redirectTitle.namespace ~= 0
then
-- We are on a mainspace page, and the hatnote starts with something
-- like "Wikipedia:Foo redirects here", so automatically label it as
-- a self-reference.
mhOptions.selfref = true
else
mhOptions.selfref = options.selfref
end
end
--concatenate all the categories
local category = ''
for k,v in pairs(categoryTable) do
category = category .. k
end
return mHatnote._hatnote(text, mhOptions) .. category
end
return p
jqcwg5y58fg5b49s15noymmcnss1k7f
Mô đun:Hatnote list
828
10550
63366
2026-10-01T03:03:49Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-------------------------------------------------------------------------------- -- Module:Hatnote list -- -- -- -- This module produces and formats lists for use in hatnotes. In particular, -- -- it implements the for-see list, i.e. lists of "For X, see Y" statements, -- -- as used in {{about}}, {{redirect}}, and their var…”
63366
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Module:Hatnote list --
-- --
-- This module produces and formats lists for use in hatnotes. In particular, --
-- it implements the for-see list, i.e. lists of "For X, see Y" statements, --
-- as used in {{about}}, {{redirect}}, and their variants. Also introduced --
-- are andList & orList helpers for formatting lists with those conjunctions. --
--------------------------------------------------------------------------------
local mArguments --initialize lazily
local mFormatLink = require('Module:Format link')
local mHatnote = require('Module:Hatnote')
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
--------------------------------------------------------------------------------
-- List stringification helper functions
--
-- These functions are used for stringifying lists, usually page lists inside
-- the "Y" portion of "For X, see Y" for-see items.
--------------------------------------------------------------------------------
--default options table used across the list stringification functions
local stringifyListDefaultOptions = {
conjunction = "và",
separator = ",",
altSeparator = ";",
space = " ",
formatted = false
}
--Searches display text only
local function searchDisp(haystack, needle)
return string.find(
string.sub(haystack, (string.find(haystack, '|') or 0) + 1), needle
)
end
-- Stringifies a list generically; probably shouldn't be used directly
local function stringifyList(list, options)
-- Type-checks, defaults, and a shortcut
checkType("stringifyList", 1, list, "table")
if #list == 0 then return nil end
checkType("stringifyList", 2, options, "table", true)
options = options or {}
for k, v in pairs(stringifyListDefaultOptions) do
if options[k] == nil then options[k] = v end
end
local s = options.space
-- Format the list if requested
if options.formatted then
list = mFormatLink.formatPages(
{categorizeMissing = mHatnote.missingTargetCat}, list
)
end
-- Set the separator; if any item contains it, use the alternate separator
local separator = options.separator
for k, v in pairs(list) do
if searchDisp(v, separator) then
separator = options.altSeparator
break
end
end
-- Set the conjunction, apply Oxford comma, and force a comma if #1 has "§"
local conjunction = s .. options.conjunction .. s
if #list == 2 and searchDisp(list[1], "§") or #list > 2 then
conjunction = separator .. conjunction
end
-- Return the formatted string
return mw.text.listToText(list, separator .. s, conjunction)
end
--DRY function
function p.conjList (conj, list, fmt)
return stringifyList(list, {conjunction = conj, formatted = fmt})
end
-- Stringifies lists with "and" or "or"
function p.andList (...) return p.conjList("và", ...) end
function p.orList (...) return p.conjList("hoặc", ...) end
--------------------------------------------------------------------------------
-- For see
--
-- Makes a "For X, see [[Y]]." list from raw parameters. Intended for the
-- {{about}} and {{redirect}} templates and their variants.
--------------------------------------------------------------------------------
--default options table used across the forSee family of functions
local forSeeDefaultOptions = {
andKeyword = 'và',
title = mw.title.getCurrentTitle().text,
otherText = 'các định nghĩa khác',
forSeeForm = 'Đối với %s, xem %s.',
}
--Collapses duplicate punctuation at end of string, ignoring italics and links
local function punctuationCollapse (text)
return text:match("[.?!]('?)%1(%]?)%2%.$") and text:sub(1, -2) or text
end
-- Structures arguments into a table for stringification, & options
function p.forSeeArgsToTable (args, from, options)
-- Type-checks and defaults
checkType("forSeeArgsToTable", 1, args, 'table')
checkType("forSeeArgsToTable", 2, from, 'number', true)
from = from or 1
checkType("forSeeArgsToTable", 3, options, 'table', true)
options = options or {}
for k, v in pairs(forSeeDefaultOptions) do
if options[k] == nil then options[k] = v end
end
-- maxArg's gotten manually because getArgs() and table.maxn aren't friends
local maxArg = 0
for k, v in pairs(args) do
if type(k) == 'number' and k > maxArg then maxArg = k end
end
-- Structure the data out from the parameter list:
-- * forTable is the wrapper table, with forRow rows
-- * Rows are tables of a "use" string & a "pages" table of pagename strings
-- * Blanks are left empty for defaulting elsewhere, but can terminate list
local forTable = {}
local i = from
local terminated = false
-- If there is extra text, and no arguments are given, give nil value
-- to not produce default of "For other uses, see foo (disambiguation)"
if options.extratext and i > maxArg then return nil end
-- Loop to generate rows
repeat
-- New empty row
local forRow = {}
-- On blank use, assume list's ended & break at end of this loop
forRow.use = args[i]
if not args[i] then terminated = true end
-- New empty list of pages
forRow.pages = {}
-- Insert first pages item if present
table.insert(forRow.pages, args[i + 1])
-- If the param after next is "and", do inner loop to collect params
-- until the "and"'s stop. Blanks are ignored: "1|and||and|3" → {1, 3}
while args[i + 2] == options.andKeyword do
if args[i + 3] then
table.insert(forRow.pages, args[i + 3])
end
-- Increment to next "and"
i = i + 2
end
-- Increment to next use
i = i + 2
-- Append the row
table.insert(forTable, forRow)
until terminated or i > maxArg
return forTable
end
-- Stringifies a table as formatted by forSeeArgsToTable
function p.forSeeTableToString (forSeeTable, options)
-- Type-checks and defaults
checkType("forSeeTableToString", 1, forSeeTable, "table", true)
checkType("forSeeTableToString", 2, options, "table", true)
options = options or {}
for k, v in pairs(forSeeDefaultOptions) do
if options[k] == nil then options[k] = v end
end
-- Stringify each for-see item into a list
local strList = {}
if forSeeTable then
for k, v in pairs(forSeeTable) do
local useStr = v.use or options.otherText
local pagesStr =
p.andList(v.pages, true) or
mFormatLink._formatLink{
categorizeMissing = mHatnote.missingTargetCat,
link = mHatnote.disambiguate(options.title)
}
local forSeeStr = string.format(options.forSeeForm, useStr, pagesStr)
forSeeStr = punctuationCollapse(forSeeStr)
table.insert(strList, forSeeStr)
end
end
if options.extratext then table.insert(strList, punctuationCollapse(options.extratext..'.')) end
-- Return the concatenated list
return table.concat(strList, ' ')
end
-- Produces a "For X, see [[Y]]" string from arguments. Expects index gaps
-- but not blank/whitespace values. Ignores named args and args < "from".
function p._forSee (args, from, options)
local forSeeTable = p.forSeeArgsToTable(args, from, options)
return p.forSeeTableToString(forSeeTable, options)
end
-- As _forSee, but uses the frame.
function p.forSee (frame, from, options)
mArguments = require('Module:Arguments')
return p._forSee(mArguments.getArgs(frame), from, options)
end
return p
nwsmiiwh6i0wy53qgrgm1bw4yoqo5jd
Mô đun:Hatnote list/tài liệu
828
10551
63367
2026-10-01T03:04:38Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) --> == Cách sử dụng từ wikitext == This module cannot be used from wikitext. == Cách sử dụng từ Lua == To call the module, use <syntaxhighlight lang="lua">local mHatList = require('Mô đun:Hatnote list')</syntaxhighlight> or similar, then access its methods through the <code>mHatList</code> variable (or whateve…”
63367
wikitext
text/x-wiki
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
== Cách sử dụng từ wikitext ==
This module cannot be used from wikitext.
== Cách sử dụng từ Lua ==
To call the module, use <syntaxhighlight lang="lua">local mHatList = require('Mô đun:Hatnote list')</syntaxhighlight> or similar, then access its methods through the <code>mHatList</code> variable (or whatever was used).
===andList===
<code>andList</code> takes a list in table form, and returns a string with the list separated with "và" and commas as appropriate.
===orList===
<code>orList</code> takes a list in table form, and returns a string with the list separated with "hoặc" and commas as appropriate.
===forSee===
<code>_forSee</code> takes three arguments: a table of trimmed arguments with blanks removed, a "from" number with the index to start at, and an options table, and returns a string with a number of "<code><nowiki>Để X, xem [[Y]]</nowiki></code>" sentences. The links are formatted using the methods from [[Mô đun:Hatnote]].
As a convenience, the <code>forSee</code> method (without the leading underscore) takes the same arguments except with a frame instead of an args table, using <code>getArgs()</code> from [[Mô đun:Arguments]] to preprocess the arguments.
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox |chỗ thử |
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Thể loại:Mô đun Hatnote| ]]
}}</includeonly>
0j4luonf6klcae00pmjffq546mmiucc
Bản mẫu:Tlg/doc
10
10552
63368
2026-10-01T03:06:23Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. --> {{#ifexpr:{{#gọi:Transclusion count|fetch|0}} > 2000|{{high-use}}}} {{#ifeq:{{FULLPAGENAME}}|Bản mẫu:Template link expanded|{{used in system}}}} {{tsh|{{{1|tlg}}}|{{{2|}}}}} {{lua|Mô đun:Template link general}} Bản mẫu này, thường được viết tắt là {{tlf|{{#switch:{{lc:{{ROOTPAGENAME}}}} | tlg | liên kết bản mẫu chung = tlg | tlb…”
63368
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. -->
{{#ifexpr:{{#gọi:Transclusion count|fetch|0}} > 2000|{{high-use}}}}
{{#ifeq:{{FULLPAGENAME}}|Bản mẫu:Template link expanded|{{used in system}}}}
{{tsh|{{{1|tlg}}}|{{{2|}}}}}
{{lua|Mô đun:Template link general}}
Bản mẫu này, thường được viết tắt là {{tlf|{{#switch:{{lc:{{ROOTPAGENAME}}}}
| tlg | liên kết bản mẫu chung = tlg
| tlb | liên kết bản mẫu in đậm = tlb
| tlc | mã liên kết bản mẫu = tlc
| tlw ||liên kết bản mẫu có dấu ngoặc nhọn liên kết = tlw
| tlf | liên kết bản mẫu có liên kết tắt = tlf
| tltss | liên kết bản mẫu với khoảng tiêu đề, subst = tltss
| tlx | liên kết bản mẫu được mở rộng = tlx
| tlxb | liên kết bản mẫu được mở rộng bằng chữ in đậm = tlxb
| tlxi | liên kết bản mẫu được mở rộng với chữ nghiêng = tlxi
| tlx | liên kết bản mẫu được mở rộng với subst = tlxs
| tls | liên kết bản mẫu với subst = tls
| tnull | liên kết bản mẫu null = tnull
| tlc | mã liên kết bản mẫu = tlc
| tlp | liên kết bản mẫu có tham số = tlp}}
}}, được sử dụng để cung cấp các liên kết cách điệu đến các mẫu mà không cần mở rộng mẫu đó.
===Các tham số===
Ngoại trừ {{mono|alttext}}, các tham số được đặt tên là các nút chuyển đổi bị bỏ qua (mặc định trong hầu hết các trường hợp) hoặc được kích hoạt (bằng cách được gán một giá trị chẳng hạn như "bật", "có", "true", " bao gồm", v.v.). Chúng có thể được bao gồm theo bất kỳ thứ tự nào ([[#Các ví dụ|xem ví dụ bên dưới]]). Một số mẫu nhất định có tham số "bật" theo mặc định; xem [[#Định dạng mục đích chung|bảng chính]] để biết tất cả các tùy chọn thay thế.
{| class="wikitable"
! Tham số || Tác vụ || Kích hoạt mặc định
|-
| brace || Bao gồm các dấu ngoặc nhọn như một phần của liên kết mẫu || {{tl|tlw}}/{{tl|tn}}
|-
| braceinside || Bao gồm các dấu ngoặc nhọn trong cùng như một phần của liên kết mẫu ||
|-
| bold || Hiển thị liên kết/tên mẫu ở dạng '''in đậm''' || {{tl|tlb}}, {{tl|tlxb}}
|-
| code || Hiển thị kết quả đầu ra bằng cách sử dụng thẻ HTML [[HTML element#code|{{tag|code}}]] ([[Phông chữ monospace]]) || {{tl|tlc}}, {{tl|Liên kết bản mẫu chung}}, v.v.
|-
| italic || Hiển thị bất kỳ thông số nào đi kèm với liên kết/tên mẫu ở dạng ''in nghiêng'' || {{tl|tlxi}}
|-
| kbd || Hiển thị đầu ra bằng cách sử dụng thẻ HTML [[HTML element#kbd|{{tag|kbd}}]] (phông chữ đơn cách) ||
|-
| nolink || Không hiển thị tên mẫu dưới dạng liên kết || {{tl|tlf}}, {{t|tlc}}, {{t|tnull}}
|-
| nowrap || Ngăn chặn việc chèn dấu ngắt dòng vào đầu ra ||
|-
| nowrapname || Ngăn chặn việc ngắt từ trong đầu ra của tên/liên kết mẫu (các tham số sẽ ngắt dòng nếu cần) ||
|-
| plaincode || Sử dụng {{tag|code|params=style="border:none; nền:transparent;"}} || {{tl|tltss}}
|-
| subst || Bao gồm tiền tố [[Trợ giúp:Thay thế|thế]] trước liên kết/tên bản mẫu || {{tl|tls}}, {{tl|tlxs}}, v.v.
|-
| {{para|alttext|[văn bản]}} || Sử dụng [văn bản] làm nhãn cho liên kết mẫu || {{tl|tla}}
|}
====Chưa đặt tên (Vị trí)====
Bản mẫu này có tối đa mười [[tham số không tên]] làm tham số đi kèm với liên kết (hoặc tên) bản mẫu; xem ví dụ dưới đây.
===Các ví dụ===
{{#switch:{{SITENAME}} |Wikipedia|Meta= |
; Ghi chú: On the source sister projects, en.wikipedia and Meta, '''X0, X1, X2, …, X9 are sandbox templates''' for experimentation on involved templates that need be in template space. An auto-cleansing software facility exists that might be used to duplicate the facility on other Sister projects.
}}
{{Aligned table
|cols=3 |class=wikitable
|style=background-color:transparent;<!-- to see background of <code>...</code> -->
| '''Mã''' | '''Đầu ra''' | '''Nhận xét'''
| {{tlx|{{{1|tlg}}}|Termometro}} | {{{{{1|tlg}}}|Termometro}} | {{error|Termometro}} template does not exist. Be aware with linking to non-existing templates, although desired.
| {{tlx|{{{1|tlg}}}|ok}} | {{{{{1|tlg}}}|ok}} | ok template does exist
| {{tlx|{{{1|tlg}}}|convert|<nowiki><nowiki>14|m|ftin|abbr=out|sp=us</nowiki></nowiki>}} | {{{{{1|tlg}}}|convert|<nowiki>14|m|ftin|abbr=out|sp=us</nowiki>}} | Unlimited parameters as one {{tag|nowiki|link=yes}} [[Help:Wikitext#Nowiki|string]]
| {{tlx|{{{1|tlg}}}|Abc}} | {{{{{1|tlg}}}|Abc}} |
| {{tlx|{{{1|tlg}}}|abC}} | {{{{{1|tlg}}}|abC}} | template names are case-sensitive
| {{tlx|{{{1|tlg}}}|abc}} | {{{{{1|tlg}}}|abc}} | first letter is case-insensitive though
| {{tlx|{{{1|tlg}}}|abc|'''<nowiki>{{spaces}}</nowiki>'''{{{1}}}'''<nowiki>{{spaces}}</nowiki>'''}} | {{{{{1|tlg}}}|abc|{{spaces}}{{{1}}}{{spaces}}}}| Using {{tl|spaces}} before and after <nowiki>{{{1}}}</nowiki> parameter.
| {{tlx|{{{1|tlg}}}|x0}} | {{{{{1|tlg}}}|x0}} |
| {{tlx|{{{1|tlg}}}|x0|code{{=}}on}} | {{{{{1|tlg}}}|x0|code=on}} | <code> style
| {{tlx|{{{1|tlg}}}|x0|plaincode{{=}}on}} | {{{{{1|tlg}}}|x0|plaincode=on}} | plaincode style
| {{tlx|{{{1|tlg}}}|x0|kbd{{=}}on}} | {{{{{1|tlg}}}|x0|kbd=on}} | <kbd> style
| {{tlx|{{{1|tlg}}}|x0|bold{{=}}on}} | {{{{{1|tlg}}}|x0|bold=on}} | bold link/name
| {{tlx|{{{1|tlg}}}|x1|one|italic{{=}}on}} | {{{{{1|tlg}}}|x1|one|italic=on}} | parameter/s in italics
| {{tlx|{{{1|tlg}}}|x0|nolink{{=}}on}} | {{{{{1|tlg}}}|x0|nolink=on}} |
| {{tlx|{{{1|tlg}}}|x0|subst{{=}}on}} | {{{{{1|tlg}}}|x0|subst=on}} |
| {{tlx|{{{1|tlg}}}|x0|brace{{=}}on}} | {{{{{1|tlg}}}|x0|brace=on}} | all braces in link
| {{tlx|{{{1|tlg}}}|x0|braceinside{{=}}on}} | {{{{{1|tlg}}}|x0|braceinside=on}} | inside braces in link
| {{tlx|{{{1|tlg}}}|x0|alttext{{=}}x0 link}} | {{{{{1|tlg}}}|x0|alttext=x0 link}} |
| {{tlx|{{{1|tlg}}}|x0|bold{{=}}on|code{{=}}on|brace{{=}}on}} | {{{{{1|tlg}}}|x0|bold=on|code=on|brace=on}} | No reason you can't combine multiple parameter settings
| {{tlx|{{{1|tlg}}}|x1|one}} | {{{{{1|tlg}}}|x1|one}} |
| {{tlx|{{{1|tlg}}}|x2|one|two}} | {{{{{1|tlg}}}|x2|one|two}} |
| {{tlx|{{{1|tlg}}}|x2|bold{{=}}on|code{{=}}on|one|two}} | {{{{{1|tlg}}}|x2|bold=on|code=on|one|two}} | Can combine named and anonymous parameters …
| {{tlx|{{{1|tlg}}}|x2|one|two|bold{{=}}on|code{{=}}on}} | {{{{{1|tlg}}}|x2|one|two|bold=on|code=on}} | … in any order …
| {{tlx|{{{1|tlg}}}|x2|one|code{{=}}on|two|bold{{=}}on|three}} | {{{{{1|tlg}}}|x2|one|code=on|two|bold=on|three}} | … even intermixed …
| {{tlx|{{{1|tlg}}}|x2|one|code{{=}}on|two|bold{{=}}on|three|italic{{=}}on}} | {{{{{1|tlg}}}|x2|one|code=on|two|bold=on|three|italic=on}} | … with many different configurations.
| {{tlx|{{{1|tlg}}}|x3|1|2|3|4|5|6|7|8|9|10}} | {{{{{1|tlg}}}|x3|1|2|3|4|5|6|7|8|9|10}} |
| <code><nowiki>{{tlg|x4|1|2|3|4|5|6|7|8|9|10|11}}</nowiki></code> | {{{{{1|tlg}}}|x4|1|2|3|4|5|6|7|8|9|10|11}} | up to 10 parameters, then …
| <code><nowiki>{{tlg|x5|1|2|3|4|5|6|7|8|9|10&#124;11}}</nowiki></code> | {{{{{1|tlg}}}|x5|1|2|3|4|5|6|7|8|9|10|11}} | {{align|right|<code>&#124;</code> for more}}
| {{tlx|{{{1|tlg}}}}} | {{{1|tlg}}} | with no arguments, the current page name is substituted
| {{tlx|{{{1|tlg}}}|x1|x=u}} | {{{{{1|tlg}}}|x1|x=u}} | '''{{=}}''' won't work
| {{tlx|{{{1|tlg}}}|x1|x&#61;u}} | {{{{{1|tlg}}}|x1|x=u}} | {{align|right|<code>&#61;</code> is okay}}
| {{tlx|{{{1|tlg}}}|x1|x<nowiki>{{=}}</nowiki>u}} | {{{{{1|tlg}}}|x1|x{{=}}u}} | {{align|right|<code><nowiki>{{=}}</nowiki></code> is okay (see [[:template:=|template equal sign]])}}
| {{tlx|{{{1|tlg}}}|x1|x<nowiki>=</nowiki>u}} | {{{{{1|tlg}}}|x1|x<nowiki>=</nowiki>u}} | {{align|right|sticky nowiki is okay}}
| {{tlx|{{{1|tlg}}}|x2|<nowiki />|two|<nowiki />|<nowiki />}} | {{{{{1|tlg}}}|x2||two||}} | empty parameters work too, even at the end
| {{tlx|{{{1|tlg}}}|x2|<nowiki>3=two</nowiki>|<nowiki>2=one</nowiki>}} | {{{{{1|tlg}}}|x2|3=two|2=one}} | {{align|right|right to left okay}}
}}
{| class="wikitable" |style="border:1; cellpadding:4; background-color:transparent;"
|+ style="text-align:left;" | Gói tên dài (mặc định)
|-
! Mã
! style="width:15em;" | Đầu ra
|-
| {{tlx|{{{1|tlg}}}|long template name that would wrap to new line|this is a long value for the 1st parameter that would wrap}}
| {{{{{1|tlg}}}|long template name that would wrap to new line|this is a long value for the 1st parameter that would wrap}}
|}
{| class="wikitable" |style="border:1; cellpadding:4; background-color:transparent;"
|+ style="text-align:left;" | Gói tên dài (<kbd>nowrap=on</kbd>)
|-
! Mã
! style="width:15em;" | Đầu ra
|-
| {{tlx|{{{1|tlg}}}|nowrap{{=}}on|tên bản mẫu dài sẽ bao bọc thành dòng mới|giá trị dài cho tham số đầu tiên sẽ bao bọc}}
| {{{{{1|tlg}}}|nowrap=on|tên bản mẫu dài sẽ bao bọc thành dòng mới|giá trị dài cho tham số đầu tiên sẽ bao bọc}}
|}
{| class="wikitable" |style="border:1; cellpadding:4; background-color:transparent;"
|+ style="text-align:left;" | Gói tên dài (<kbd>nowrapname=on</kbd>)
|-
! Mã
! style="width:15em;" | Đầu ra
|-
| {{tlx|{{{1|tlg}}}|nowrapname{{=}}on|tên bản mẫu dài sẽ bao bọc thành dòng mới|giá trị dài cho tham số đầu tiên sẽ bao bọc}}
| {{{{{1|tlg}}}|nowrapname=on|tên bản mẫu dài sẽ bao bọc thành dòng mới|giá trị dài cho tham số đầu tiên sẽ bao bọc}}
|}
== Xem thêm ==
{{Template-linking templates}}
<includeonly>{{Sandbox other|
| <!-- THỂ LOẠI TẠI ĐÂY, CẢM ƠN. -->
[[Thể loại:Bản mẫu liên kết bản mẫu trong]]
[[Thể loại:Bản mẫu trợ giúp đánh máy]]
}}</includeonly>
r2joge29deyjlxy3ssao0si6cru58cz
Bản mẫu:Tlnull
10
10553
63369
2026-10-01T03:07:23Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Template link null]]
63369
wikitext
text/x-wiki
#đổi [[Bản mẫu:Template link null]]
8373cwd3o8nmfjsuczx05hu88vppcub
Bản mẫu:Xem thêm thông tin
10
10554
63370
2026-10-01T03:08:09Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#gọi:labelled list hatnote|labelledList|Xem thêm thông tin{{#if:{{{topic|{{{Đề mục|}}}}}}| về {{{topic|{{{Đề mục|}}}}}}}}}}</includeonly><noinclude> {{tài liệu}} <!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --> </noinclude>”
63370
wikitext
text/x-wiki
<includeonly>{{#gọi:labelled list hatnote|labelledList|Xem thêm thông tin{{#if:{{{topic|{{{Đề mục|}}}}}}| về {{{topic|{{{Đề mục|}}}}}}}}}}</includeonly><noinclude>
{{tài liệu}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
se6uznrmps7ngy9cqjyvwna1kc0kylb
Bản mẫu:Xem thêm thông tin/doc
10
10555
63371
2026-10-01T03:08:40Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Lua|Module:Labelled list hatnote}} <!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. --> <!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. --> Bản mẫu này được sử dụng để liên kết đến các bài viết có chứa thêm thông tin về một chủ đề. Nó trông như thế này: {{Xem thêm thông tin|Bài viết}} Nó thường được sử dụng ở trên của m…”
63371
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Lua|Module:Labelled list hatnote}}
<!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. -->
<!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. -->
Bản mẫu này được sử dụng để liên kết đến các bài viết có chứa thêm thông tin về một chủ đề. Nó trông như thế này:
{{Xem thêm thông tin|Bài viết}}
Nó thường được sử dụng ở trên của một phần, khi chủ đề của phần đó được trình bày chi tiết hơn bởi một trang khác. Nó rất hữu ích cho việc thực hiện [[WP:Tóm tắt|tóm tắt phong cách]].
== Cách sử dụng ==
; Cách sử dụng đơn giản:
{{Xem thêm thông tin|''trang 1''|''trang 2''|''trang 3''|...}}
;Cách sử dụng với đề mục
{{Xem thêm thông tin|topic=''Viết đề mục vào đây''|''trang 1''}}
; Tất cả các thông số:
{{Xem thêm thông tin|Đề mục=''Ghi Đề mục vào đây''|''trang 1''|''trang 2''|''trang 3''|selfref=''yes''|category=''no''}}
== Các thông số ==
Bản mẫu này chấp nhận các thông số sau:
* <code>1</code>, <code>2</code>, <code>3</code>, ... - các trang liên kết đến. Ít nhất một tên trang được yêu cầu. Các thể loại và các tập tin sẽ được tự động thoát ra với [[trợ giúp:Colon trick|colon trick]], và các liên kết đến các phần sẽ được tự động định dạng như ''trang § phần'', chứ không phải là mặc định MediaWiki của ''trang#phần''.
* <code>selfref</code> - nếu thiết lập để "yes", "y", "true" hoặc "1", các thêm CSS class "selfref". Điều này được sử dụng để biểu thị tự tài liệu tham khảo Wikipedia. Xem [[bản mẫu:Selfref]] để biết thêm thông tin.
* <code>category</code> - nếu thiết lập để "no", "n", "false", hoặc "0", ngăn chặn các lỗi theo dõi thể loại ([[:Thể loại:Bản mẫu Hatnote với các lỗi]]). Điều này chỉ có hiệu lực nếu tham số vị trí đầu tiên (trang liên kết đến) được bỏ qua.
== Các ví dụ ==
;Thông thường
* <code><nowiki>{{Xem thêm thông tin|Bài viết}}</nowiki></code> → {{Xem thêm thông tin|Bài viết}}
* <code><nowiki>{{Xem thêm thông tin|Bài viết 1|Bài viết 2|Bài viết 3}}</nowiki></code> → {{Xem thêm thông tin|Bài viết 1|Bài viết 2|Bài viết 3}}
; Có thêm đề mục
* <code><nowiki>{{Xem thêm thông tin|topic= Cái này|bài viết 1}}</nowiki></code> → {{Xem thêm thông tin|topic= Cái này|bài viết 1}}
== Các lỗi ==
Nếu không có tên trang được cung cấp, bản mẫu sẽ ra thông báo sau:
* {{Xem thêm thông tin|category=no}}
Nếu bạn thấy thông báo lỗi này, nó là một trong bốn lý do:
# Không có thông số đã được chỉ định (mẫu mã đã <code><nowiki>{{Xem thêm thông tin}}</nowiki></code>). Xin vui lòng sử dụng <code><nowiki>{{Xem thêm thông tin|</nowiki>''trang''<nowiki>}}</nowiki></code> thay vào đó.
# Một số thông số đã được chỉ định, nhưng không có tên trang đã bao gồm. Ví dụ, văn bản mẫu <code><nowiki>{{Xem thêm thông tin|selfref=yes}}</nowiki></code> sẽ tạo ra lỗi này. Xin vui lòng sử dụng (ví dụ) <code><nowiki>{{Xem thêm thông tin|</nowiki>''trang''<nowiki>|selfref=yes}}</nowiki></code> thay vào đó.
# Một tên trang đã được chỉ định, nhưng nó chứa một dấu bằng ("="). Dấu bằng có một ý nghĩa đặc biệt trong mẫu mã, và do đó nó không thể được sử dụng trong tham số bản mẫu đó không chỉ định một tên tham số. Ví dụ, mẫu mã <code><nowiki>{{Xem thêm thông tin|1+1=2|2+2=4}}</nowiki></code> sẽ tạo ra lỗi này. Để khắc phục điều này, bạn có thể chỉ định tên tham số một cách rõ ràng bằng cách sử dụng <code>1=</code>, <code>2</code>, v.v, trước khi tên trang, như thế này: <code><nowiki>{{Xem thêm thông tin|1=1+1=2|2=2+2=4}}</nowiki></code>.
# Bạn đã cố gắng sử dụng mô đun trực tiếp bằng <code><nowiki>{{#invoke:(tên mô đun)|further|</nowiki>''text''<nowiki>}}</nowiki></code>. Cách sử dụng #invoke như vậy đã bị vô hiệu hoá vì lý do hiệu suất. Vui lòng dùng <code><nowiki>{{(tên mô đun)|</nowiki>''text''<nowiki>}}</nowiki></code> thay thế.
Nếu bạn nhìn thấy thông báo lỗi này và không chắc chắn về những gì để làm, xin vui lòng gửi một tin nhắn trên [[WP:HD|bàn giúp]], và ai đó sẽ có thể giúp bạn.
Các trang đó chứa thông báo lỗi này được theo dõi trong [[:Thể loại:Bản mẫu Hatnote với các lỗi]].
==Xem thêm==
* {{Tl|Chính}}
{{Bản mẫu ghi chú}}
<includeonly>{{sandbox other||
<!-- Xin hãy thêm thể loại vào phía dưới dòng này, để bổ sung liên kết liên wiki vào Wikidata -->
[[Thể loại:Bản mẫu ghi chú đầu trang]]
[[Thể loại:Bản mẫu định hướng và đổi hướng]]
[[Thể loại:Ẩn khi in]]
}}</includeonly>
a5evgus4lyhpk2mo8b1fwexd0avjyh5
Mô đun:Labelled list hatnote
828
10556
63372
2026-10-01T03:09:03Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-------------------------------------------------------------------------------- -- Labelled list -- -- -- -- This module does the core work of creating a hatnote composed of a list -- -- prefixed by a colon-terminated label, i.e. "LABEL: [andList of pages]", -- -- for {{see also}} and similar templates.…”
63372
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Labelled list --
-- --
-- This module does the core work of creating a hatnote composed of a list --
-- prefixed by a colon-terminated label, i.e. "LABEL: [andList of pages]", --
-- for {{see also}} and similar templates. --
--------------------------------------------------------------------------------
local mHatnote = require('Module:Hatnote')
local mHatlist = require('Module:Hatnote list')
local mArguments --initialize lazily
local yesno --initialize lazily
local p = {}
-- Defaults global to this module
local defaults = {
label = 'Xem thêm', --Final fallback for label argument
labelForm = '%s: %s',
prefixes = {'label', 'label ', 'nhãn', 'nhãn ', 'l', 'n'},
template = 'Module:Labelled list hatnote'
}
-- Localizable message strings
local msg = {
errorSuffix = '#Lỗi',
noInputWarning = 'chưa chỉ định tên trang',
noOutputWarning =
"'''[[%s]] — không có đầu ra: không có trang đích nào tồn tại.'''"
}
-- Helper function that pre-combines display parameters into page arguments.
-- Also compresses sparse arrays, as a desirable side-effect.
function p.preprocessDisplays (args, prefixes)
-- Prefixes specify which parameters, in order, to check for display options
-- They each have numbers auto-appended, e.g. 'label1', 'label 1', & 'l1'
prefixes = prefixes or defaults.prefixes
local indices = {}
local sparsePages = {}
for k, v in pairs(args) do
if type(k) == 'number' then
indices[#indices + 1] = k
local display
for i = 1, #prefixes do
display = args[prefixes[i] .. k]
if display then break end
end
sparsePages[k] = display and
string.format('%s|%s', string.gsub(v, '|.*$', ''), display) or v
end
end
table.sort(indices)
local pages = {}
for k, v in ipairs(indices) do pages[#pages + 1] = sparsePages[v] end
return pages
end
--Helper function to get a page target from a processed page string
--e.g. "Page|Label" → "Page" or "Target" → "Target"
local function getTarget(pagename)
local pipe = string.find(pagename, '|')
return string.sub(pagename, 0, pipe and pipe - 1 or nil)
end
-- Produces a labelled pages-list hatnote.
-- The main frame (template definition) takes 1 or 2 arguments, for a singular
-- and (optionally) plural label respectively:
-- * {{#invoke:Labelled list hatnote|labelledList|Singular label|Plural label}}
-- The resulting template takes pagename & label parameters normally.
function p.labelledList (frame)
mArguments = require('Module:Arguments')
yesno = require('Module:Yesno')
local labels = {frame.args[1] or defaults.label}
labels[2] = frame.args[2] or labels[1]
labels[3] = frame.args[3] --no defaulting
labels[4] = frame.args[4] --no defaulting
local template = frame:getParent():getTitle()
local args = mArguments.getArgs(frame, {parentOnly = true})
local pages = p.preprocessDisplays(args)
local options = {
category = yesno(args.category),
extraclasses = frame.args.extraclasses,
ifexists = yesno(frame.args.ifexists),
namespace = frame.args.namespace or args.namespace,
selfref = yesno(frame.args.selfref or args.selfref),
template = template
}
return p._labelledList(pages, labels, options)
end
local function exists(title)
local success, result = pcall(function() return title.exists end)
if success then
return result
else
return true
end
end
function p._labelledList (pages, labels, options)
local removednonexist = false
if options.ifexists then
for k = #pages, 1, -1 do --iterate backwards to allow smooth removals
local v = pages[k]
if mw.ustring.sub(mw.text.trim(v), 1, 1) ~= "#" then
local title = mw.title.new(getTarget(v), namespace)
if (v == '') or (title == nil) or not exists(title) then
table.remove(pages, k)
removednonexist = true
end
end
end
end
labels = labels or {}
label = (#pages == 1 and labels[1] or labels[2]) or defaults.label
for k, v in pairs(pages) do
if mHatnote.findNamespaceId(v) ~= 0 then
label =
(
#pages == 1 and
(labels[3] or labels[1] or defaults.label) or
(labels[4] or labels[2] or defaults.label)
) or defaults.label
end
end
if #pages == 0 then
if removednonexist then
mw.addWarning(
string.format(
msg.noOutputWarning, options.template or defaults.template
)
)
return ''
else
return mHatnote.makeWikitextError(
msg.noInputWarning,
(options.template or defaults.template) .. msg.errorSuffix,
options.category
)
end
end
local text = string.format(
options.labelForm or defaults.labelForm,
label,
mHatlist.andList(pages, true)
)
local hnOptions = {
extraclasses = options.extraclasses,
selfref = options.selfref
}
return mHatnote._hatnote(text, hnOptions)
end
return p
5otpmtudxjb6o3kmi55jd4dw502tiuh
Bản mẫu:More
10
10557
63373
2026-10-01T03:09:59Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Xem thêm thông tin]]
63373
wikitext
text/x-wiki
#đổi [[Bản mẫu:Xem thêm thông tin]]
f3mryajqybk0tudvzbnr5hbe5egsrt2
Mô đun:Format link
828
10558
63374
2026-10-01T03:10:33Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-------------------------------------------------------------------------------- -- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the {{format link}} template. -------------------------------------------------------------------------------- local libr…”
63374
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Format link
--
-- Makes a wikilink from the given link and display values. Links are escaped
-- with colons if necessary, and links to sections are detected and displayed
-- with " § " as a separator rather than the standard MediaWiki "#". Used in
-- the {{format link}} template.
--------------------------------------------------------------------------------
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local checkTypeForNamedArg = libraryUtil.checkTypeForNamedArg
local mArguments -- lazily initialise [[Module:Arguments]]
local mError -- lazily initialise [[Module:Error]]
local yesno -- lazily initialise [[Module:Yesno]]
local p = {}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function getArgs(frame)
-- Fetches the arguments from the parent frame. Whitespace is trimmed and
-- blanks are removed.
mArguments = require('Module:Arguments')
return mArguments.getArgs(frame, {parentOnly = true})
end
local function removeInitialColon(s)
-- Removes the initial colon from a string, if present.
return s:match('^:?(.*)')
end
local function maybeItalicize(s, shouldItalicize)
-- Italicize s if s is a string and the shouldItalicize parameter is true.
if s and shouldItalicize then
return '<i>' .. s .. '</i>'
else
return s
end
end
local function parseLink(link)
-- Parse a link and return a table with the link's components.
-- These components are:
-- - link: the link, stripped of any initial colon (always present)
-- - page: the page name (always present)
-- - section: the page name (may be nil)
-- - display: the display text, if manually entered after a pipe (may be nil)
link = removeInitialColon(link)
-- Find whether a faux display value has been added with the {{!}} magic
-- word.
local prePipe, display = link:match('^(.-)|(.*)$')
link = prePipe or link
-- Find the page, if it exists.
-- For links like [[#Bar]], the page will be nil.
local preHash, postHash = link:match('^(.-)#(.*)$')
local page
if not preHash then
-- We have a link like [[Foo]].
page = link
elseif preHash ~= '' then
-- We have a link like [[Foo#Bar]].
page = preHash
end
-- Find the section, if it exists.
local section
if postHash and postHash ~= '' then
section = postHash
end
return {
link = link,
page = page,
section = section,
display = display,
}
end
local function formatDisplay(parsed, options)
-- Formats a display string based on a parsed link table (matching the
-- output of parseLink) and an options table (matching the input options for
-- _formatLink).
local page = maybeItalicize(parsed.page, options.italicizePage)
local section = maybeItalicize(parsed.section, options.italicizeSection)
if (not section) then
return page
elseif (not page) then
return mw.ustring.format('§ %s', section)
else
return mw.ustring.format('%s § %s', page, section)
end
end
local function missingArgError(target)
mError = require('Module:Error')
return mError.error{message =
'Error: no link or target specified! ([[' .. target .. '#Errors|help]])'
}
end
--------------------------------------------------------------------------------
-- Main functions
--------------------------------------------------------------------------------
function p.formatLink(frame)
-- The formatLink export function, for use in templates.
yesno = require('Module:Yesno')
local args = getArgs(frame)
local link = args[1] or args.link
local target = args[3] or args.target
if not (link or target) then
return missingArgError('Template:Format link')
end
return p._formatLink{
link = link,
display = args[2] or args.display,
target = target,
italicizePage = yesno(args.italicizepage),
italicizeSection = yesno(args.italicizesection),
categorizeMissing = args.categorizemissing
}
end
function p._formatLink(options)
-- The formatLink export function, for use in modules.
checkType('_formatLink', 1, options, 'table')
local function check(key, expectedType) --for brevity
checkTypeForNamedArg(
'_formatLink', key, options[key], expectedType or 'string', true
)
end
check('link')
check('display')
check('target')
check('italicizePage', 'boolean')
check('italicizeSection', 'boolean')
check('categorizeMissing')
-- Normalize link and target and check that at least one is present
if options.link == '' then options.link = nil end
if options.target == '' then options.target = nil end
if not (options.link or options.target) then
return missingArgError('Module:Format link')
end
local parsed = parseLink(options.link)
local display = options.display or parsed.display
local catMissing = options.categorizeMissing
local category = ''
-- Find the display text
if not display then display = formatDisplay(parsed, options) end
-- Handle the target option if present
if options.target then
local parsedTarget = parseLink(options.target)
parsed.link = parsedTarget.link
parsed.page = parsedTarget.page
end
-- Test if page exists if a diagnostic category is specified
if catMissing and (mw.ustring.len(catMissing) > 0) then
local title = nil
if parsed.page then title = mw.title.new(parsed.page) end
if title and (not title.isExternal) then
local success, exists = pcall(function() return title.exists end)
if success and not exists then
category = mw.ustring.format('[[Category:%s]]', catMissing)
end
end
end
-- Format the result as a link
if parsed.link == display then
return mw.ustring.format('[[:%s]]%s', parsed.link, category)
else
return mw.ustring.format('[[:%s|%s]]%s', parsed.link, display, category)
end
end
--------------------------------------------------------------------------------
-- Derived convenience functions
--------------------------------------------------------------------------------
function p.formatPages(options, pages)
-- Formats an array of pages using formatLink and the given options table,
-- and returns it as an array. Nil values are not allowed.
local ret = {}
for i, page in ipairs(pages) do
ret[i] = p._formatLink{
link = page,
categorizeMissing = options.categorizeMissing,
italicizePage = options.italicizePage,
italicizeSection = options.italicizeSection
}
end
return ret
end
return p
252hp8jk2qv051cngf0qjx0ljcf0bof
Bản mẫu:Linktext
10
10559
63375
2026-10-01T03:11:53Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>[[{{{pref|wikt}}}:{{{1}}}|{{{1}}}]]{{{n1|}}}{{#if: {{{2|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{2}}}|{{{2}}}]]}}{{{n2|}}}{{#if: {{{3|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{3}}}|{{{3}}}]]}}{{{n3|}}}{{#if: {{{4|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{4}}}|{{{4}}}]]}}{{{n4|}}}{{#if: {{{5|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{5}}}|{{{5}}}]]}}{{{n5|}}}{{#if: {{{6|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{6}}}|{{{6}}}]]}}{{{n6|}}}{{#if: {{{7|}}}|{{{lim|}}}{{{pref|wikt…”
63375
wikitext
text/x-wiki
<includeonly>[[{{{pref|wikt}}}:{{{1}}}|{{{1}}}]]{{{n1|}}}{{#if: {{{2|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{2}}}|{{{2}}}]]}}{{{n2|}}}{{#if: {{{3|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{3}}}|{{{3}}}]]}}{{{n3|}}}{{#if: {{{4|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{4}}}|{{{4}}}]]}}{{{n4|}}}{{#if: {{{5|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{5}}}|{{{5}}}]]}}{{{n5|}}}{{#if: {{{6|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{6}}}|{{{6}}}]]}}{{{n6|}}}{{#if: {{{7|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{7}}}|{{{7}}}]]}}{{{n7|}}}{{#if: {{{8|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{8}}}|{{{8}}}]]}}{{{n8|}}}{{#if: {{{9|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{9}}}|{{{9}}}]]}}{{{n9|}}}{{#if: {{{10|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{10}}}|{{{10}}}]]}}{{{n10|}}}{{#if: {{{11|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{11}}}|{{{11}}}]]}}{{{n11|}}}{{#if: {{{12|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{12}}}|{{{12}}}]]}}{{{n12|}}}{{#if: {{{13|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{13}}}|{{{13}}}]]}}{{{n13|}}}{{#if: {{{14|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{14}}}|{{{14}}}]]}}{{{n14|}}}{{#if: {{{15|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{15}}}|{{{15}}}]]}}{{{n15|}}}{{#if: {{{16|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{16}}}|{{{16}}}]]}}{{{n16|}}}{{#if: {{{17|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{17}}}|{{{17}}}]]}}{{{n17|}}}{{#if: {{{18|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{18}}}|{{{18}}}]]}}{{{n18|}}}{{#if: {{{19|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{19}}}|{{{19}}}]]}}{{{n19|}}}{{#if: {{{20|}}}|{{{lim|}}}[[{{{pref|wikt}}}:{{{20}}}|{{{20}}}]]}}{{{n20|}}}</includeonly><noinclude>
{{tài liệu}}
</noinclude>
08b29v1nvhi3i4qjj0aq6sxk8eziceo
Bản mẫu:Tính đến
10
10560
63376
2026-10-01T03:13:08Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<!--Bắt đầu {{Tính đến}}--><includeonly><!-- ## param 1 is the year ## optional param 2 is the month ## optional param 3 is the day of the month ## optional named parameter alt=[text] is alternative display text (may include wiki markup) ## optional named parameter df=US produces American date format in displayed text ## optional named parameter lc=on gives lower-case-first output ## optional named parameter url=[URL] gives statement reference…”
63376
wikitext
text/x-wiki
<!--Bắt đầu {{Tính đến}}--><includeonly><!--
## param 1 is the year
## optional param 2 is the month
## optional param 3 is the day of the month
## optional named parameter alt=[text] is alternative display text (may include wiki markup)
## optional named parameter df=US produces American date format in displayed text
## optional named parameter lc=on gives lower-case-first output
## optional named parameter url=[URL] gives statement reference
## Hiển thị văn bản ([T/t]ính đến của [Ngày bắt đầu] theo mặc định)
-->{{#if: {{{alt|}}} | {{{alt}}} | {{#if:{{{since|{{{kể từ|}}}}}}|{{#ifeq: {{{lc}}} | {{{lc|}}} | k | K }}ể từ | {{#ifeq: {{{lc}}} | {{{lc|}}} | t | T }}ính đến}} {{#if:{{{pre|}}}|{{{pre|}}}}} {{#if: {{{3|}}} | {{#ifeq:{{lc:{{{df|}}}}}|us|ngày {{#expr:{{{3}}}}} {{MONTHNAME|{{{2}}}}}|ngày {{#expr:{{{3}}}}} {{MONTHNAME|{{{2}}}}} }} năm {{{1}}} | {{#if: {{{2|}}} | {{MONTHNAME|{{{2}}}}} }} năm {{{1}}} }}}}{{#if:{{{post|}}}|<nowiki />{{{post}}}}}<!--
#### That nowiki is required or, various characters (:, ;, #, and *} will be parsed as wikisyntax for list items.
## ref/update inline banner (hidden by default)
--><sup class="plainlinks noprint asof-tag {{#if:{{{url|}}}|ref|cập nhật}}" style="display:none;">[{{#if:{{{url|}}}|{{{url}}} [ref]|{{fullurl:{{PAGENAME}}|action=edit}} [cập nhật]}}]</sup><!--
## categorisation disabled outside main namespace
{{DMCA|Bài viết có báo cáo khả năng ngày tháng|từ|
## temporal category for template (word method)
{{#if: {{#ifexpr:{{{1}}} = 1 }} | {{#ifexpr:{{#time:Y|{{{1}}}}} > 2004 | {{{1}}} | {{#ifexpr:{{#time:Y|{{{1}}}}} > 1989 | {{#time:Y|{{{1}}}}} | trước 1990 }}}} |
## temporal category for template (parameter method)
{{#ifexpr:{{{1}}} > 2004 | {{#if:{{{2|}}} | {{MONTHNAME|{{{2}}}}} }} năm {{{1}}} | {{#ifexpr: {{{1}}} > 1989 | {{{1}}} | trước 1990 }}}}}}|
## global category for template
Tất cả bài viết có báo cáo khả năng ngày tháng}}--></includeonly><!--Kết thúc {{Tính đến}}--><noinclude><!--
## dynamic example (as of today, self ref)
-->Tính đến {{Start date|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|df=yes}}<sup class="plainlinks">[https://vi.wikipedia.org/wiki/Bản_mẫu:Tính_đến [ref]]</sup>
{{Tài liệu}}
<!-- Add categories and inter-wikis to the /doc subpage, not here! -->
</noinclude>
nazby15yarn10fminmrhoj6ntr86a2o
Bản mẫu:Tính đến/doc
10
10561
63377
2026-10-01T03:13:36Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. --> {{Phân biệt|text=[[Bản mẫu:As of?]], mà đổi hướng đến [[Bản mẫu:Khi nào]]}} <!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. --> ==Cách sử dụng== Bản mẫu {{tl|tính đến}} được sử dụng để biểu thị có báo cáo khả năng ngày tháng, và sẽ thêm một bài viết để thích hợp thể…”
63377
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. -->
{{Phân biệt|text=[[Bản mẫu:As of?]], mà đổi hướng đến [[Bản mẫu:Khi nào]]}}
<!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. -->
==Cách sử dụng==
Bản mẫu {{tl|tính đến}} được sử dụng để biểu thị có báo cáo khả năng ngày tháng, và sẽ thêm một bài viết để thích hợp thể loại con [[Wikipedia:Thể loại|ẩn]] của [[:Thể loại:Bài viết có báo cáo khả năng ngày tháng]]. Điều này cho phép các biên tập viên để tạo thể loại báo cáo rằng có thể trở nên lạc hậu theo thời gian. Ngày sử dụng cho một tuyên bố được đưa ra nên là ngày hiện tại (đối với báo cáo hiện đang có hiệu lực) hoặc là ngày mà tham khảo chú thích được sản xuất (ví dụ, khi nào sử dụng dữ liệu điều tra dân số). Không giống như bản mẫu {{tl|update after}}, {{tl|tính đến}} không yêu cầu trình biên tập viên để cung cấp cho một ngày đầy đủ. Bản mẫu này '''không''' nên [[Wikipedia:Thay thế bản mẫu|được thay thế]].
'''Ghi chú:'''
*'''Bản mẫu này PHẢI KHÔNG được sử dụng trong hộp thông tin phát ra một microformat, như mã ngày phát ra của nó sẽ xung đột với điều đó.'''
*'''Bản mẫu này là không cần thiết trong báo giá, và sử dụng của bản mẫu trong trường hợp này cần phải tránh.'''
Bản mẫu này không tạo ra một siêu liên kết có thể nhìn thấy trong văn bản mà nó được sử dụng.
==Cú pháp==
Bản mẫu có thể được sử dụng trong các hình thức sau:
:<code><nowiki>{{Tính đến|năm}}</nowiki></code>
:<code><nowiki>{{Tính đến|năm|tháng}}</nowiki></code>
:<code><nowiki>{{Tính đến|năm|tháng|ngày}}</nowiki></code>
Xin vui lòng không sử dụng <code><nowiki>{{Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}}}</nowiki></code> hoặc tương tự. Đó là đánh bại điểm của bản mẫu.
Một số bổ sung tên tham số cũng có thể được sử dụng (xem bên dưới).
===Các ví dụ===
<!-- NOTE: DO NOT copy and paste this code to use the template. Copy and paste what it renders for today's date -->
:{{tlc|Tính đến|{{CURRENTYEAR}}}} – {{tính đến|{{CURRENTYEAR}}}}
:{{tlc|Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}}} – {{tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}}}
:{{tlc|Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}}} – {{tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}}}
:{{tlc|Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|df{{=}}US}} – {{tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|df=US}}
:{{tlc|Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|lc{{=}}y}} – {{tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|lc=y}}
<!-- As this next example is referring to the census date, doesn't make sense to use current date -->
:{{tlc|Tính đến|2010|4|1|alt{{=}}tính đến <nowiki>[[điều tra dân số Hoa Kỳ 2010]]</nowiki>}} – {{tính đến|2010|4|1|alt=tính đến [[điều tra dân số Hoa Kỳ 2010]]}}
:{{tlc|Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|url{{=}}<nowiki>http://vi.wikipedia.org/</nowiki>}} trở lại:
:: ''cho đăng nhập người dùng, với các liên kết sẽ hiển thị (xem [[Wikipedia:Tính đến#Bài viết bảo trì|Wikipedia:Tính đến]])'' – Tính đến {{MONTHNAME|{{CURRENTMONTH}}}}{{space}}năm{{space}}{{CURRENTYEAR}}<sup class="plainlinks">[http://vi.wikipedia.org/ [ref]]</sup>
:: ''cho tất cả các người dùng khác'' – Tính đến {{MONTHNAME|{{CURRENTMONTH}}}}{{space}}năm{{space}}{{CURRENTYEAR}}
:{{tlc|Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|df{{=}}US|kể từ{{=}}y}} – {{tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|df=US|kể từ=y}}
:{{tlc|Tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|lc{{=}}y|kể từ{{=}}y}} – {{tính đến|{{CURRENTYEAR}}|{{CURRENTMONTH}}|{{CURRENTDAY}}|lc=y|kể từ=y}}
==Xem thêm==
*{{tl|Category as of}}
*{{tl|Show by date}}/{{tls|Show by}}
*{{tl|Ngày bắt đầu và tuổi}}
*{{tl|Update}}
*{{tl|Update after}}
*{{tl|Khi nào}}
*[[Wikipedia:As of]]
*[[Wikipedia:Avoid statements that will date quickly]]
<includeonly>{{#switch:{{SUBPAGENAME}}|sandbox|thử|chỗ thử = |
<!-- THỂ LOẠI TẠI ĐÂY, CẢM ƠN. -->
[[Thể loại:Bản mẫu Inline]]
[[Thể loại:Bản mẫu thời gian]]
[[Thể loại:Bản mẫu bảo trì ngày và thời gian]]
<!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. -->
}}</includeonly>
1z7wqvvjb6h2tpq9dpkjmqwa2s80wa4
Bản mẫu:As of
10
10562
63378
2026-10-01T03:14:15Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Tính đến]]
63378
wikitext
text/x-wiki
#đổi [[Bản mẫu:Tính đến]]
6sls57v14pu6au7guc4fprrvll95re7
Bản mẫu:Thời điểm bắt đầu
10
10563
63379
2026-10-01T03:15:10Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#if: {{{4|}}} |{{#if: {{{5|}}} |{{padleft:{{{4}}}|2|0}}:{{padleft:{{{5}}}|2|0}}{{#if: {{{6|}}} |:{{padleft:{{{6}}}|2|0}} }}, }} }}<!--ABOVE FOR TIME; BELOW FOR DATE -->{{#if: {{{1|}}} |{{#if: {{{2|}}} |{{#if: {{{3|}}} |{{#expr:{{{3}}}}} {{MONTHNAME|{{{2}}}}}|Tháng {{#expr:{{{2}}}}} }} năm {{{1}}}|{{{1}}}}}}}{{#if: {{{7|}}} | ({{#i…”
63379
wikitext
text/x-wiki
<includeonly>{{#if: {{{4|}}}
|{{#if: {{{5|}}}
|{{padleft:{{{4}}}|2|0}}:{{padleft:{{{5}}}|2|0}}{{#if: {{{6|}}}
|:{{padleft:{{{6}}}|2|0}} }}, }} }}<!--ABOVE FOR TIME; BELOW FOR DATE
-->{{#if: {{{1|}}}
|{{#if: {{{2|}}}
|{{#if: {{{3|}}}
|{{#expr:{{{3}}}}} {{MONTHNAME|{{{2}}}}}|Tháng {{#expr:{{{2}}}}} }} năm {{{1}}}|{{{1}}}}}}}{{#if: {{{7|}}}
| ({{#ifeq: {{{7}}}|Z|UTC|{{{7}}}}})}}<!-- BELOW FOR hCalendar
--><span style="display:none"> (<span class="bday dtstart published updated">{{#if: {{{1|}}}
| {{{1}}}{{#if: {{{2|}}}
| -{{padleft:{{{2}}}|2|0}}{{#if: {{{3|}}}
| -{{padleft:{{{3}}}|2|0}} }} }}<!--
-->{{#if: {{{4|}}}
| T{{padleft:{{{4}}}|2|0}}{{#if: {{{5|}}}
| :{{padleft:{{{5}}}|2|0}}{{#if: {{{6|}}}
| :{{padleft:{{{6}}}|2|0}} }} }} }} }}{{{7|}}}</span>)</span></includeonly><noinclude>
{{Tài liệu}}
</noinclude>
7lbw8h8lrlg2h6xerxgntlfk2f7a62k
Bản mẫu:Thời điểm bắt đầu/doc
10
10564
63380
2026-10-01T03:15:23Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Sử dụng nhiều|8108}} {{COinS safe|n}} <!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE --> Bản mẫu '''{{tl|start date}}''' dùng để để trả về ngày (hoặc ngày giờ) mà một sự kiện hoặc thực thể bắt đầu hoặc đã được tạo. Nó cũng bao gồm trùng lặp, ngày có thể đọc bằng máy (hoặc ngày giờ) ở định dạng ngày ISO (được ẩn bởi CSS), để sử…”
63380
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Sử dụng nhiều|8108}}
{{COinS safe|n}}
<!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE -->
Bản mẫu '''{{tl|start date}}''' dùng để để trả về ngày (hoặc ngày giờ) mà một sự kiện hoặc thực thể bắt đầu hoặc đã được tạo. Nó cũng bao gồm trùng lặp, ngày có thể đọc bằng máy (hoặc ngày giờ) ở định dạng ngày ISO (được ẩn bởi CSS), để sử dụng bên trong các bản mẫu khác (hoặc các hàng trong bảng) phát ra [[microformat]]. '''Chỉ nên được sử dụng một lần trong mỗi mẫu như vậy''' và '''không nên được sử dụng bên ngoài các bản mẫu như vậy'''. Ngày ẩn xuống cấp một cách duyên dáng khi CSS không có sẵn.
===Khi nào không sử dụng bản mẫu này===
Không dùng bản mẵu này khi:
* ngày không chắc chắn, ví dụ: "trước ngày 4 tháng 4 năm 1933"; "khoảng 18 tháng 11 năm 1939".
* ngày nằm ngoài phạm vi được cung cấp trong "[[#Giới hạn|Giới hạn]]", bên dưới.
* khác, ngày thứ cấp
* bên ngoài [[microformat]]- phát ra các bản mẫu - nếu nghi ngờ, hãy xem tài liệu của bản mẫu gốc
* nhiều hơn một ngày trong bản mẫu chính.
===Cú pháp===
* {{tlx|start date|year|month|day}}
* {{tlx|start date|year|month|day|HH|MM|SS|TimeZone}} (MM và SS là tùy chọn; TimeZone có thể là một số nguyên, hoặc "Z" cho [[Coordinated Universal Time|UTC]]; Xem ví dụ)
; Ví dụ
* {{tlx|start date|1993}} → "{{start date|1993}}"
* {{tlx|start date|1993|02}} → "{{start date|1993|02}}"
* {{tlx|start date|1993|02|24}} → "{{start date|1993|02|24}}"
* {{tlx|start date|1993|02|24|08|30}} → "{{start date|1993|02|24|08|30}}"
* {{tlx|start date|1993|02|24|08<nowiki>|||+01:00</nowiki>}} → "{{start date|1993|02|24|08|||+01:00}}"
* {{tlx|start date|1993|02|24|08<nowiki>|||-07:00</nowiki>}} → "{{start date|1993|02|24|08|||-07:00}}"
* {{tlx|start date|1993|02|24|08|30|23}} → "{{start date|1993|02|24|08|30|23}}"
* {{tlx|start date|1993|02|24|08|30|23|Z}} → "{{start date|1993|02|24|08|30|23|Z}}"
* {{tlx|start date|1993|02|24|08|30|23|+01:00}} → "{{start date|1993|02|24|08|30|23|+01:00}}"
* {{tlx|start date|1993|02|24|08|30|23|-07:00}} → "{{start date|1993|02|24|08|30|23|-07:00}}"
===Tham số không tương thích===
Bản mẫu này tương thích với các bản mẫu tại enwiki. Khi biên dịch bài viết từ tiếng Anh, chúng ta thường gặp các tham số {{tham số|df|y}} và {{tham số|mf|y}}: đây là các tham số quy định cách hiển thị ngày kiểu Anh (ngày viết trước tháng, VD: 1 January {{CURRENTYEAR}}) hay kiểu Mỹ (tháng viết trước ngày, VD: January 1, {{CURRENTYEAR}}). Các tham số này có thể bỏ đi vì không hữu ích trong tiếng Việt.
===Dữ liệu bản mẫu===
{{TemplateDataHeader}}
<templatedata>
{
"description": "Date that an event or entity started or was created",
"params": {
"1": {
"label": "YYYY",
"description": "start year",
"type": "number"
},
"2": {
"label": "MM",
"description": "start month",
"inherits": "1"
},
"3": {
"label": "DD",
"description": "start day of month",
"inherits": "1"
},
"4": {
"label": "HH",
"description": "start hours",
"inherits": "1"
},
"5": {
"label": "MM",
"description": "start minutes",
"inherits": "1",
"default": "0"
},
"6": {
"label": "SS",
"description": "start seconds",
"inherits": "5"
},
"7": {
"label": "TZ",
"description": "time zone offset, “+02:00”, “-06:00” or “Z” for UTC",
"inherits": "1",
"type": "string/line"
},
"df": {
"label": "day first",
"description": "boolean parameter to put the date before the month name",
"default": "false",
"type": "string/line"
},
"mf": {
"label": "month first",
"description": "mf=yes: order mm-dd-yyyy (=the default order)",
"type": "string",
"default": "yes",
"deprecated": "trivial becazuse defalt. Or use df=yes (for mf=no)."
}
}
}
</templatedata>
== Xem thêm ==
* {{tlg|start-date}}, an alternative to this template.
* {{tlg|film date}}, a similar template for use with {{tl|Infobox film}}.
* {{tlg|start date and age}}
* {{tlg|start date and years ago}}
* {{tlg|Start and end dates}}
* {{tlg|end date}}
* {{tlg|end-date}}
* {{tlg|trim date}}
* [[Wikipedia:WikiProject Microformats|WikiProject Microformats]]
<includeonly>
<!-- Thể loại bên dưới dòng này -->
[[Thể loại:Tiêu bản dữ liệu toán học]]
[[Thể loại:Templates generating hAtom]]
[[Thể loại:Templates generating hCalendars]]
</includeonly>
d48sbe6q7sqirci7ooy0mmp4g1utgze
Bản mẫu:Start date
10
10565
63381
2026-10-01T03:16:29Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Thời điểm bắt đầu]]
63381
wikitext
text/x-wiki
#đổi [[Bản mẫu:Thời điểm bắt đầu]]
{{R from move}}
a5wfo78tinraibztf62ohnjk36a3w87
Bản mẫu:COinS safe
10
10566
63382
2026-10-01T03:16:53Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{notice |image={{#ifeq: {{{1|}}}|n|Stop hand nuvola.svg}} |{{#ifeq: {{{1|}}}|n |Bản mẫu này không nên được sử dụng trong các bản mẫu trích dẫn như {{cs1}} và {{cs2}}, bởi vì nó bao gồm đánh dấu có khả năng làm hỏng siêu dữ liệu [[COinS]] mà chúng tạo ra; xem [[:en:Wikipedia:COinS|COinS in Wikipedia]]. {{{addtext|}}} |Bản mẫu này an toàn để sử dụng trong các mẫu trích dẫn…”
63382
wikitext
text/x-wiki
{{notice
|image={{#ifeq: {{{1|}}}|n|Stop hand nuvola.svg}}
|{{#ifeq: {{{1|}}}|n
|Bản mẫu này không nên được sử dụng trong các bản mẫu trích dẫn như {{cs1}} và {{cs2}}, bởi vì nó bao gồm đánh dấu có khả năng làm hỏng siêu dữ liệu [[COinS]] mà chúng tạo ra; xem [[:en:Wikipedia:COinS|COinS in Wikipedia]]. {{{addtext|}}}
|Bản mẫu này an toàn để sử dụng trong các mẫu trích dẫn sản xuất [[COinS]] metadata; xem [[:en:Wikipedia:COinS|COinS in Wikipedia]]. Nếu HTML hoặc đánh dấu khác được thêm vào, thì bản mẫu phải được đánh giá. {{{addtext|}}}
}}
}}<noinclude>
{{Tài liệu}}
</noinclude>
7k7c9vyegiu8h88nt3urzu4fvso3sr0
Bản mẫu:MONTHNAME
10
10567
63383
2026-10-01T03:17:43Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#if:{{{1|}}}|{{#switch:{{MONTHNUMBER|{{{1}}}}}|1|2|3|4|5|6|7|8|9|10|11|12=tháng {{MONTHNUMBER|{{{1}}}}}|Tham số yêu cầu sai 1=''tháng''!}}|Thiếu tham số yêu cầu 1=''tháng''!}}</includeonly><noinclude> {{Tài liệu}} <!-- Add categories and interwikis to the /doc subpage, not here! --> </noinclude>”
63383
wikitext
text/x-wiki
<includeonly>{{#if:{{{1|}}}|{{#switch:{{MONTHNUMBER|{{{1}}}}}|1|2|3|4|5|6|7|8|9|10|11|12=tháng {{MONTHNUMBER|{{{1}}}}}|Tham số yêu cầu sai 1=''tháng''!}}|Thiếu tham số yêu cầu 1=''tháng''!}}</includeonly><noinclude>
{{Tài liệu}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
3ndo3c795l0wj1906eqt230ujbsd9uz
Bản mẫu:MONTHNAME/doc
10
10568
63384
2026-10-01T03:18:13Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- PLEASE ADD CATEGORIES WHERE INDICATED AT THE BOTTOM OF THIS PAGE --> {{Sử dụng nhiều|56013}} Bản mẫu này trả về tên của tháng có số của tháng là tham số. Ngoài ra, tên tháng tiếng Anh hoặc viết tắt (với bất kỳ trường hợp chữ cái) có thể được cung cấp. ; Syntax<nowiki>:</nowiki> : {{tlc|MONTHNAME|''month''}} * Giá trị ''month'' được giải thích modulo 1…”
63384
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- PLEASE ADD CATEGORIES WHERE INDICATED AT THE BOTTOM OF THIS PAGE -->
{{Sử dụng nhiều|56013}}
Bản mẫu này trả về tên của tháng có số của tháng là tham số. Ngoài ra, tên tháng tiếng Anh hoặc viết tắt (với bất kỳ trường hợp chữ cái) có thể được cung cấp.
; Syntax<nowiki>:</nowiki>
: {{tlc|MONTHNAME|''month''}}
* Giá trị ''month'' được giải thích modulo 12 (các số 0 và số thập phân hàng đầu được bỏ qua).
; Ví dụ cho số tháng tiêu chuẩn<nowiki>:</nowiki>
: {{tlc|MONTHNAME|1}} → {{MONTHNAME|1}}
: {{tlc|MONTHNAME|2}} → {{MONTHNAME|2}}
: {{tlc|MONTHNAME|3}} → {{MONTHNAME|3}}
:…
: {{tlc|MONTHNAME|12}} → {{MONTHNAME|12}}
; Ví dụ về số tháng có thêm số không<nowiki>:</nowiki>
: {{tlc|MONTHNAME|01}} → {{MONTHNAME|01}}
: {{tlc|MONTHNAME|02}} → {{MONTHNAME|02}}
: {{tlc|MONTHNAME|03}} → {{MONTHNAME|03}}
:…
: {{tlc|MONTHNAME|12}} → {{MONTHNAME|12}}
; Ví dụ cho số tháng tràn và tràn, từ các giá trị được tính toán<nowiki>:</nowiki>
: {{tlc|MONTHNAME|-12}} → {{MONTHNAME|-12}}
: {{tlc|MONTHNAME|-11}} → {{MONTHNAME|-11}}
: {{tlc|MONTHNAME|-3}} → {{MONTHNAME|-3}}
: {{tlc|MONTHNAME|-2}} → {{MONTHNAME|-2}}
: {{tlc|MONTHNAME|-1}} → {{MONTHNAME|-1}}
: {{tlc|MONTHNAME|0}} → {{MONTHNAME|0}}
: {{tlc|MONTHNAME|13}} → {{MONTHNAME|13}}
: {{tlc|MONTHNAME|14}} → {{MONTHNAME|14}}
: {{tlc|MONTHNAME|15}} → {{MONTHNAME|15}}
: {{tlc|MONTHNAME|16}} → {{MONTHNAME|16}}
: {{tlc|MONTHNAME|23}} → {{MONTHNAME|23}}
: {{tlc|MONTHNAME|24}} → {{MONTHNAME|24}}
: {{tlc|MONTHNAME|25}} → {{MONTHNAME|25}}
: {{tlc|MONTHNAME|1200}} → {{MONTHNAME|1200}}
: {{tlc|MONTHNAME|1201}} → {{MONTHNAME|1201}}
: {{tlc|MONTHNAME|1212}} → {{MONTHNAME|1212}}
; Ví dụ cho tất cả số tháng viết bằng tiếng Anh<nowiki>:</nowiki>
: {{tlc|MONTHNAME|JANUARY}} → {{MONTHNAME|JANUARY}}
: {{tlc|MONTHNAME|FEBRUARY}} → {{MONTHNAME|FEBRUARY}}
: {{tlc|MONTHNAME|MARCH}} → {{MONTHNAME|MARCH}}
:…
: {{tlc|MONTHNAME|DECEMBER}} → {{MONTHNAME|DECEMBER}}
; Ví dụ cho tất cả các tên tháng được viết bằng tiếng Anh viết tắt<nowiki>:</nowiki>
: {{tlc|MONTHNAME|jan}} → {{MONTHNAME|jan}}
: {{tlc|MONTHNAME|feb}} → {{MONTHNAME|feb}}
: {{tlc|MONTHNAME|mar}} → {{MONTHNAME|mar}}
:…
: {{tlc|MONTHNAME|dec}} → {{MONTHNAME|dec}}
=== Xem thêm ===
*{{tl|MONTHNUMBER}}
*{{tl|MONTHNAMEH}}
*{{tl|Date}}
<includeonly>{{#ifeq:{{SUBPAGENAME}}|chỗ thử ||
<!-- CATEGORIES BELOW THIS LINE, PLEASE: -->
[[Thể loại:Bản mẫu tính toán ngày tháng]]
}}</includeonly>
5z45gvzwhsan2bx2z340igrhyth3xvv
Bản mẫu:Template link code
10
10569
63385
2026-10-01T03:19:16Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#gọi:Template link general|main|nolink=yes|code=yes|nowrap=yes}}</includeonly><noinclude> {{tài liệu|1=Bản mẫu:Tlg/doc |content = {{tlg/doc|tlc}} }} <!-- Add categories to the /doc subpage, not here! --> </noinclude>”
63385
wikitext
text/x-wiki
<includeonly>{{#gọi:Template link general|main|nolink=yes|code=yes|nowrap=yes}}</includeonly><noinclude>
{{tài liệu|1=Bản mẫu:Tlg/doc
|content = {{tlg/doc|tlc}}
}}
<!-- Add categories to the /doc subpage, not here! -->
</noinclude>
cibvv6h5rz7mt27hzlsc84dq1tqpxyg
Bản mẫu:Tlc
10
10570
63386
2026-10-01T03:21:00Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Template link code]]
63386
wikitext
text/x-wiki
#đổi [[Bản mẫu:Template link code]]
56vcdo41tv9o4s8vuvmntza1wpwrxrf
Bản mẫu:Viết tắt bản mẫu
10
10571
63387
2026-10-01T03:22:21Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#gọi:Shortcut|main|template=yes}}</includeonly><noinclude> {{Tài liệu}} </noinclude>”
63387
wikitext
text/x-wiki
<includeonly>{{#gọi:Shortcut|main|template=yes}}</includeonly><noinclude>
{{Tài liệu}}
</noinclude>
gtzduo9fxsorrk81xzk9ylx04po7xql
Bản mẫu:Tsh
10
10572
63388
2026-10-01T03:23:12Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Viết tắt bản mẫu]]
63388
wikitext
text/x-wiki
#đổi [[Bản mẫu:Viết tắt bản mẫu]]
kabo0ug3mnssgaovaj6kn1wlkpenbbt
Mô đun:Shortcut
828
10573
63389
2026-10-01T03:23:53Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-- Mô đun này thực hiện {{Viết tắt}}. -- Set constants local CONFIG_MODULE = 'Mô đun:Shortcut/config' -- Load required modules local checkType = require('libraryUtil').checkType local yesno = require('Mô đun:Yesno') local p = {} local function message(msg, ...) return mw.message.newRawMessage(msg, ...):plain() end local function makeCategoryLink(cat) return string.format('[[%s:%s]]', mw.site.namespaces[14].name, cat) end function…”
63389
Scribunto
text/plain
-- Mô đun này thực hiện {{Viết tắt}}.
-- Set constants
local CONFIG_MODULE = 'Mô đun:Shortcut/config'
-- Load required modules
local checkType = require('libraryUtil').checkType
local yesno = require('Mô đun:Yesno')
local p = {}
local function message(msg, ...)
return mw.message.newRawMessage(msg, ...):plain()
end
local function makeCategoryLink(cat)
return string.format('[[%s:%s]]', mw.site.namespaces[14].name, cat)
end
function p._main(shortcuts, options, frame, cfg)
checkType('_main', 1, shortcuts, 'table')
checkType('_main', 2, options, 'table', true)
options = options or {}
frame = frame or mw.getCurrentFrame()
cfg = cfg or mw.loadData(CONFIG_MODULE)
local templateMode = options.template and yesno(options.template)
local redirectMode = options.redirect and yesno(options.redirect)
local isCategorized = not options.category or yesno(options.category) ~= false
-- Validate shortcuts
for i, shortcut in ipairs(shortcuts) do
if type(shortcut) ~= 'string' or #shortcut < 1 then
error(message(cfg['invalid-shortcut-error'], i), 2)
end
end
-- Make the list items. These are the shortcuts plus any extra lines such
-- as options.msg.
local listItems = {}
for i, shortcut in ipairs(shortcuts) do
local templatePath, prefix
if templateMode then
-- Namespace detection
local titleObj = mw.title.new(shortcut, 10)
if titleObj.namespace == 10 then
templatePath = titleObj.fullText
else
templatePath = shortcut
end
prefix = options['pre' .. i] or options.pre or ''
end
if options.target and yesno(options.target) then
listItems[i] = templateMode
and string.format("{{%s[[%s|%s]]}}", prefix, templatePath, shortcut)
or string.format("[[%s]]", shortcut)
else
listItems[i] = frame:expandTemplate{
title = 'No redirect',
args = templateMode and {templatePath, shortcut} or {shortcut, shortcut}
}
if templateMode then
listItems[i] = string.format("{{%s%s}}", prefix, listItems[i])
end
end
end
table.insert(listItems, options.msg)
-- Return an error if we have nothing to display
if #listItems < 1 then
local msg = cfg['no-content-error']
msg = string.format('<strong class="error">%s</strong>', msg)
if isCategorized and cfg['no-content-error-category'] then
msg = msg .. makeCategoryLink(cfg['no-content-error-category'])
end
return msg
end
local root = mw.html.create()
root:wikitext(frame:extensionTag{ name = 'templatestyles', args = { src = 'Mô đun:Shortcut/styles.css'} })
-- Anchors
local anchorDiv = root
:tag('div')
:addClass('module-shortcutanchordiv')
for i, shortcut in ipairs(shortcuts) do
local anchor = mw.uri.anchorEncode(shortcut)
anchorDiv:tag('span'):attr('id', anchor)
end
-- Shortcut heading
local shortcutHeading
do
local nShortcuts = #shortcuts
if nShortcuts > 0 then
local headingMsg = options['shortcut-heading'] or
redirectMode and cfg['redirect-heading'] or
cfg['shortcut-heading']
shortcutHeading = message(headingMsg, nShortcuts)
shortcutHeading = frame:preprocess(shortcutHeading)
end
end
-- Shortcut box
local shortcutList = root
:tag('div')
:addClass('module-shortcutboxplain noprint')
:attr('role', 'note')
if options.float and options.float:lower() == 'left' then
shortcutList:addClass('module-shortcutboxleft')
end
if options.clear and options.clear ~= '' then
shortcutList:css('clear', options.clear)
end
if shortcutHeading then
shortcutList
:tag('div')
:addClass('module-shortcutlist')
:wikitext(shortcutHeading)
end
local ubl = require('Mô đun:List').unbulleted(listItems)
shortcutList:wikitext(ubl)
return tostring(root)
end
function p.main(frame)
local args = require('Mô đun:Arguments').getArgs(frame)
-- Separate shortcuts from options
local shortcuts, options = {}, {}
for k, v in pairs(args) do
if type(k) == 'number' then
shortcuts[k] = v
else
options[k] = v
end
end
-- Compress the shortcut array, which may contain nils.
local function compressArray(t)
local nums, ret = {}, {}
for k in pairs(t) do
nums[#nums + 1] = k
end
table.sort(nums)
for i, num in ipairs(nums) do
ret[i] = t[num]
end
return ret
end
shortcuts = compressArray(shortcuts)
return p._main(shortcuts, options, frame)
end
return p
9rspslogwvxd1r89saq7fws0td8js0a
Bản mẫu:Mono
10
10574
63390
2026-10-01T03:24:57Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{<includeonly>safesubst:</includeonly>ifsubst|1=|2=<templatestyles src="Mono/styles.css" />}}<span class="monospaced">{{{2|{{{1}}}}}}</span><noinclude> {{tài liệu}} <!-- Categories go on the /doc subpage and interwikis go on Wikidata. --> </noinclude>”
63390
wikitext
text/x-wiki
{{<includeonly>safesubst:</includeonly>ifsubst|1=|2=<templatestyles src="Mono/styles.css" />}}<span class="monospaced">{{{2|{{{1}}}}}}</span><noinclude>
{{tài liệu}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
p14y76pmjhhp9dwv5oqyu3myumy2ly9
Bản mẫu:Mono/doc
10
10575
63391
2026-10-01T03:25:09Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE --> == Cách sử dụng == {{tlx|Mono|<var>text to format here</var>}} renders as: {{Mono|text to format here}} This template is for formatting short bits of content (the only parameter) as monospaced (nonproportional) text. It is simply a quick shorthand for the necessary [[Cascading Style Sheets|CSS]] code. It is a replacement for {{tag|tt}} which is…”
63391
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
== Cách sử dụng ==
{{tlx|Mono|<var>text to format here</var>}}
renders as:
{{Mono|text to format here}}
This template is for formatting short bits of content (the only parameter) as monospaced (nonproportional) text. It is simply a quick shorthand for the necessary [[Cascading Style Sheets|CSS]] code. It is a replacement for {{tag|tt}} which is an obsolete element under HTML5. ([http://www.w3.org/TR/html5/obsolete.html#non-conforming-features Non-conforming features])
This template ''should'' be used where the content is being rendered in monospaced text for purely stylistic/display reasons, where this display has no particular semantic significance.
It ''should not'' be used to indicate source code, nor for variables or variable input (use {{tag|code}} or {{tag|source}} for code and {{tag|var}} for variables). For keyboard or samples, use {{tag|kbd}} or {{tag|samp}} respectively.
It ''cannot'' be used to mark up multiple paragraphs, sections or other block elements, as it uses {{tag|span|o}}, which is an inline element. See {{tl|Monoblock}} for a <code><div></code>-based block version. Or, multiple instances of {{tl|Mono}} can be invoked.
===Các tham số===
;Có hai tham số{{colon}}
:{{para|1}} or unnamed – the content to format as monospaced. If the content contains a <code>=</code> character, the parameter must be numbered or the template will break. For backward compatibility with an old, merged-in template, this parameter can also be called {{para|2}}.
:{{para|needs_review|yes}} – used (e.g. by [[WP:Bot|bots]] or [[WP:AWB|AWB]] scripts) to indicate replacement of now-obsolete {{tag|tt}} markup with {{tnull|mono|...}} markup. This template displays nothing and presently does no categorization, though a cleanup category can be created if necessary. It indicates that the markup may need to be changed to something more semantically meaningful, such as {{tag|code}}, {{tag|samp}}, or {{tag|kbd}}.
== Xem thêm ==
* [[Bản mẫu:Boldmono]]
* [[Bản mẫu:Monoblock]]
<includeonly>
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
[[Thể loại:Bản mẫu Typing-aid|{{PAGENAME}}]]
</includeonly>
ti4n6kaiktopg5tfbz1bbg47dc70kex
Bản mẫu:Ifsubst
10
10576
63392
2026-10-01T03:25:58Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{ {{{|safesubst:}}}#if:{{{demo|}}} |{{ {{{|safesubst:}}}#ifeq:{{{demo}}} |no |{{{no|{{{2|}}}}}} |{{{yes|{{{1|}}}}}} }} |{{ {{{|safesubst:}}}#ifeq:{{ {{{|safesubst:}}}NAMESPACE}}|{{NAMESPACE}} |{{{no|{{{2|}}}}}} |{{{yes|{{{1|}}}}}} }}}}<noinclude> {{Tài liệu}} </noinclude>”
63392
wikitext
text/x-wiki
{{ {{{|safesubst:}}}#if:{{{demo|}}}
|{{ {{{|safesubst:}}}#ifeq:{{{demo}}} |no
|{{{no|{{{2|}}}}}}
|{{{yes|{{{1|}}}}}}
}}
|{{ {{{|safesubst:}}}#ifeq:{{ {{{|safesubst:}}}NAMESPACE}}|{{NAMESPACE}}
|{{{no|{{{2|}}}}}}
|{{{yes|{{{1|}}}}}}
}}}}<noinclude>
{{Tài liệu}}
</noinclude>
0zviulilt6bd2m8e9mvkcmv5cttc4mf
Bản mẫu:Ifsubst/doc
10
10577
63393
2026-10-01T03:26:28Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE --> ===Cách sử dụng=== Meta template that returns the first parameter if evaluated during substitution, and the second parameter if evaluated during transclusion.<br />Note that this template must be used in [[mw:Manual:Substitution#Multilevel_substitution|safesubst]] mode to work properly: :<code><nowiki>{{ {{{|safesubst:}}}ifsubst| yes | no }}</nowiki…”
63393
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
===Cách sử dụng===
Meta template that returns the first parameter if evaluated during substitution, and the second parameter if evaluated during transclusion.<br />Note that this template must be used in [[mw:Manual:Substitution#Multilevel_substitution|safesubst]] mode to work properly:
:<code><nowiki>{{ {{{|safesubst:}}}ifsubst| yes | no }}</nowiki></code>
The {{para|demo}} parameter can be used for testing the template. Set {{para|demo|yes}} to always display the ''yes'' text, {{para|demo|no}} to always display the ''no'' text, or {{para|demo|<nowiki>{{{demo|}}}</nowiki>}} to pass through the value from the parent template.
{{List of subst helper templates}}
<includeonly>
<!-- CATEGORIES AND INTERWIKIS HERE, THANKS -->
[[Thể loại:Siêu bản mẫu Wikipedia]]
[[Thể loại:Bản mẫu If-then-else]]
</includeonly>
j1pxt6ij28n5pdp5om7t2rxaesen6s3
Bản mẫu:List of subst helper templates
10
10578
63394
2026-10-01T03:26:53Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “== Bản mẫu liên quan == {{Navbar-header|Danh sách các bản mẫu giúp đỡ thế|List of subst helper templates}} * {{tl|require subst}}: Prints an error unless substituted. ** {{tl|subst only}}: For the doc of the above templates; prints a message asking for it be substituted. ** {{tl|nosubst}}: The reverse of {{tl|subst only}}. For the doc of templates which should ''not'' be substituted; prints a message asking for it not to be substituted.…”
63394
wikitext
text/x-wiki
== Bản mẫu liên quan ==
{{Navbar-header|Danh sách các bản mẫu giúp đỡ thế|List of subst helper templates}}
* {{tl|require subst}}: Prints an error unless substituted.
** {{tl|subst only}}: For the doc of the above templates; prints a message asking for it be substituted.
** {{tl|nosubst}}: The reverse of {{tl|subst only}}. For the doc of templates which should ''not'' be substituted; prints a message asking for it not to be substituted.
** {{tl|substitution}}: Allows free-fill description of whether the template should be substituted and under what conditions.
* {{tl|issubst}}: Returns "yes" if substituted.
* {{tl|ifsubst}}: Forks if substituted or not.
<noinclude>[[Thể loại:Tài liệu bản mẫu]]</noinclude>
8dwd0ge8anrgn23b4eox8rayuomlpkk
Bản mẫu:Đầu đề thanh điều hướng
10
10579
63395
2026-10-01T03:28:00Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<div style="text-align:center;position:relative;white-space:nowrap; {{#if:{{{fontcolor|}}}| color:{{{fontcolor}}};}}">{{{1}}}<!-- -->{{Thanh điều hướng | 1 = {{{2<noinclude>|Navbar-header</noinclude>}}} | {{#ifeq: {{{plain|}}} |<!--equals:-->1 |<!--then:-->plain |<!--else:-->mini }} = 1 | style = position:absolute; right:0; top:0; margin:0 5px; | {{#if: {{{fontcolor|}}} | fontstyle | NULL }} = color:{{{fontcolo…”
63395
wikitext
text/x-wiki
<div style="text-align:center;position:relative;white-space:nowrap; {{#if:{{{fontcolor|}}}| color:{{{fontcolor}}};}}">{{{1}}}<!--
-->{{Thanh điều hướng
| 1 = {{{2<noinclude>|Navbar-header</noinclude>}}}
| {{#ifeq: {{{plain|}}}
|<!--equals:-->1
|<!--then:-->plain
|<!--else:-->mini
}} = 1
| style = position:absolute; right:0; top:0; margin:0 5px;
| {{#if: {{{fontcolor|}}}
| fontstyle | NULL }} = color:{{{fontcolor}}};
}}<!--
--></div><noinclude>
{{Tài liệu}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
dp1c7ys1utva2v70prq2e4xmsbyd1m9
Bản mẫu:Navbar-header
10
10580
63396
2026-10-01T03:29:34Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Đầu đề thanh điều hướng]]
63396
wikitext
text/x-wiki
#đổi [[Bản mẫu:Đầu đề thanh điều hướng]]
1w2ws5hoc6kmpkg771eithkk69qarzg
Bản mẫu:Thanh điều hướng
10
10581
63397
2026-10-01T03:30:23Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#gọi:Navbar|navbar}}</includeonly><noinclude> {{Tài liệu}} </noinclude>”
63397
wikitext
text/x-wiki
<includeonly>{{#gọi:Navbar|navbar}}</includeonly><noinclude>
{{Tài liệu}}
</noinclude>
f3usdm012v6k91sfhnff4335884jbjt
Bản mẫu:Thanh điều hướng/doc
10
10582
63398
2026-10-01T03:30:46Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{#ifeq:{{BASEPAGENAME}}|Thanh điều hướng|{{nguy hiểm cao|all-pages = yes}} {{used in system}}}} {{lua|Mô đun:Navbar}} {{tlx|Thanh điều hướng}} provides a small "view '''·''' talk '''·''' edit" navigation bar. It is primarily used for content-heavy templates and other transcluded content blocks, so that the content inside the template or block is more easily editable {{lang|la|…”
63398
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{#ifeq:{{BASEPAGENAME}}|Thanh điều hướng|{{nguy hiểm cao|all-pages = yes}} {{used in system}}}}
{{lua|Mô đun:Navbar}}
{{tlx|Thanh điều hướng}} provides a small "view '''·''' talk '''·''' edit" navigation bar. It is primarily used for content-heavy templates and other transcluded content blocks, so that the content inside the template or block is more easily editable {{lang|la|in situ}} where it was found, without having track it down through examining transclusion code. {{tnull|Thanh điều hướng}}'s extremely high use rate and consequent protection level are because it is integrated as a feature into numerous [[WP:NAVBOX|navigation box]] and [[WP:INFOBOX|infobox]] templates used in millions of articles. It is also a regular feature of many internal-use templates and tables of the Wikipedia, Help, and Template [[WP:NAMESPACE|namespaces]].
==Cách sử dụng==
===Chung===
When one of the following examples is placed inside a given [[Wikipedia:Navigation templates|template]] (or block of content used for [[Wikipedia:Transclusion#Selective transclusion|selective transclusion]]), it adds basic navbar navigational functionality:
:<code><nowiki>{{thanh điều hướng|{{thế:PAGENAME}}|mini=y}}</nowiki></code>
:<code><nowiki>{{thanh điều hướng|{{thế:PAGENAME}}|plain=y}}</nowiki></code>
:<code><nowiki>{{thanh điều hướng|{{thế:PAGENAME}}|fontstyle=color: green; font-style: italic;}}</nowiki></code>
The <code><nowiki>{{thế:PAGENAME}}</nowiki></code> will be [[WP:SUBST|substituted]] with the page name of the real location of the content when parsed by the servers. For example, <code><nowiki>{{thanh điều hướng|Navbar/doc}}</nowiki></code> gives:<br />{{thanh điều hướng|Navbar/doc}}
When used in content that is selectively transcluded but which is also used as-is in its original location, this template should be wrapped in {{xtag|includeonly|p}} markup, so that it only appears when transcluded.
===Kích thước và trọng lượng phông chữ ===
Font-size is 88% when used in a topical navbar template or in plain text, and 100% when nested in a navbox or infobox (because those templates' text size is already reduced; the "100%" is relative to the surrounding template's own content, not that of the entire page). The {{para|fontstyle}} parameter can be used to adjust font size as needed (e.g. to reduce font size even more when the template is used inside a block element with a large font size). Do not abuse this to make excessively small text (i.e. less than 85% of the normal page text), since that causes [[MOS:SMALLTEXT|accessibility problems]] for many readers.
In a topical navbar, the weight is "normal"; when nested in a navbox or infobox, it inherits the style of the surrounding content. The middot bullets are bold for better visibility.
==Các ví dụ==
===Các tham số được yêu cầu===
*<code><nowiki>{{thanh điều hướng|Tên bản mẫu}}</nowiki></code> – tên bản mẫu này được yêu cầu.
===Các tham số tùy chọn===
{| class="wikitable"
! Tùy chọn !! Các tham số !! Tạo ra... !! Bản mẫu "Viết tắt"
|-
| Basic || <code><nowiki>{{thanh điều hướng|Tên bản mẫu}}</nowiki></code> || {{thanh điều hướng|Navbar/doc}} ||
|-
| Different text || <code><nowiki>{{thanh điều hướng|Tên bản mẫu|</nowiki>'''text'''<nowiki>=Bản mẫu này:}}</nowiki></code> || {{thanh điều hướng|Navbar/doc|text=Bản mẫu này:}} ||
|-
| Without "Hộp này:" text || <code><nowiki>{{thanh điều hướng|Tên bản mẫu|</nowiki>'''plain'''<nowiki>=y}}</nowiki></code> || {{thanh điều hướng|Navbar/doc|plain=y}} || {{tl|view}}
|-
| Short version || <code><nowiki>{{thanh điều hướng|Tên bản mẫu|</nowiki>'''mini'''<nowiki>=y}}</nowiki></code> || {{thanh điều hướng|Navbar/doc|mini=y}} || {{tl|v}}
|-
| With brackets || <code><nowiki>{{thanh điều hướng|Tên bản mẫu|</nowiki>'''brackets'''<nowiki>=y}}</nowiki></code> || {{thanh điều hướng|Navbar/doc|brackets=y}} ||
|-
| With font styling examples ([[Span and div|span]]) || <code><nowiki>{{thanh điều hướng|Tên bản mẫu|</nowiki>'''fontstyle'''<nowiki>=color: green; font-style: italic;}}</nowiki></code> || {{thanh điều hướng|Navbar/doc|fontstyle=color: green; font-style: italic;}} ||
|-
| With whole-template styling examples ([[Span and div|div]]) || <code><nowiki>{{thanh điều hướng|Tên bản mẫu|</nowiki>'''style'''<nowiki>=float:right; background: Beige; padding: 5px; border: 1px solid;}}</nowiki></code> || {{thanh điều hướng|Navbar/doc|style=float:right; background: Beige; padding: 5px; border: 1px solid;}} ||
|}
===Các bản mẫu viết tắt ===
The <code>mini=y</code> and <code>plain=y</code> parameters can be avoided by using the {{tlx|v}} or {{tlx|view}} templates, respectively, instead.
{{tl|view}} and {{tl|v}} also support changing the shown links, for example only view and edit, or only view and talk:
{| class="wikitable"
|-
! Mã
! Kết quả
|-
|{{demo|br=<td>|<nowiki>{{view|template=view/doc}}</nowiki>}}
|-
|{{demo|br=<td>|<nowiki>{{view|template=view/doc|talk}}</nowiki>}}
|-
|{{demo|br=<td>|<nowiki>{{view|template=view/doc|talk|edit}}</nowiki>}}
|-
|{{demo|br=<td>|<nowiki>{{v|template=v/doc}}</nowiki>}}
|-
|{{demo|br=<td>|<nowiki>{{v|template=v/doc|t}}</nowiki>}}
|-
|{{demo|br=<td>|<nowiki>{{v|template=v/doc|t|e}}</nowiki>}}
|}
==Ghi chú==
Navbar is contained within a {{tag|div}} in order to accommodate a horizontal unnumbered list. This means it cannot be placed inside a {{tag|span}} or other inline element, because the [[HTML Tidy]] extension will 'fix' situations where it finds block elements inside inline elements.
==Đóng gói sẵn==
;{{tl|Navbar-header}}: Positions {{thanh điều hướng|Navbar/doc|mini=1}} on the right edge of the line, often used in non-collapsible navbox heading.
;{{tl|Navbar-navframe}}: For use in conjunction with [[Wikipedia:NavFrame#NavFrame divs|NavFrame divs]], positions {{thanh điều hướng|Navbar/doc|mini=1}} opposite of the [hide]/[show] feature.
;{{tl|Navbar-collapsible}}: For use in conjunction with [[Wikipedia:NavFrame#Collapsible tables|collapsible tables]], floats {{thanh điều hướng|Navbar/doc|mini=1}} opposite of the [hide]/[show] feature.
==Xem thêm==
{{Edit templates}}
[[:Thể loại:Bản mẫu liên kết trong|Bản mẫu liên kết trong]] khác, bao gồm:
*{{tl|Talk}} – plain talk link
*{{tl|Watch}} – plain link that adds the page to your [[Help:Watchlist|watchlist]]
*[[:Thể loại:Bản mẫu liên kết bản mẫu trong]]
{{bản mẫu điều hướng}}
== Dữ liệu bản mẫu ==
{{Đầu đề dữ liệu bản mẫu}}
<templatedata>
{
"description": "When placed inside a given template, it adds navbar navigational functionality",
"params": {
"1": {
"label": "Template Name",
"description": "The name of the template, so links work correctly",
"type": "string",
"default": "",
"required": true
},
"text": {
"label": "Different text",
"description": "Allows custom text to replace the default 'Hộp này'",
"type": "string",
"default": "Hộp này",
"required": false
},
"plain": {
"label": "Without 'Hộp này:' text",
"description": "Removes 'Hộp này'",
"type": "number",
"default": "0",
"required": false
},
"mini": {
"label": "Short Version",
"description": "Shortens text to V T E",
"type": "number",
"default": "0",
"required": false
},
"brackets": {
"label": "with brackets",
"description": "adds brackets before and after the links",
"type": "number",
"default": "0",
"required": false
},
"fontstyle": {
"label": "Font color",
"description": "Allows you to change the color of the font (in the format color:green)",
"type": "string",
"default": "",
"required": false
},
"style": {
"label": "To float to the side",
"description": "Allows the template to float to the side (format=float:right)",
"type": "string",
"default": "float:left",
"required": false
}
}
}
</templatedata><!---
PLEASE ADD METADATA TO THE <includeonly> SECTION HERE
---><includeonly>{{Sandbox other||
[[Thể loại:Bản mẫu liên kết trong]]
}}</includeonly>
8tpzq10xvib69mw0abriu54y9vy58dz
Bản mẫu:Sử dụng nhiều/doc
10
10583
63399
2026-10-01T03:32:08Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{lua|Mô đun:High-use}} Hộp thông báo {{tlx|{{ROOTPAGENAME}}}} được đặt trong trang tài liệu của những bản mẫu được nhúng ở hơn 2000 trang. Đối với các bản mẫu được nhúng ở hơn 100.000 trang, hoặc nếu tham số đầu tiên được đặt thành <code>risk</code>, bản mẫu sẽ đưa ra thông điệp cảnh báo mạnh hơn. ==Cách sử dụng== ;Cách dùng cơ bả…”
63399
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{lua|Mô đun:High-use}}
Hộp thông báo {{tlx|{{ROOTPAGENAME}}}} được đặt trong trang tài liệu của những bản mẫu được nhúng ở hơn 2000 trang. Đối với các bản mẫu được nhúng ở hơn 100.000 trang, hoặc nếu tham số đầu tiên được đặt thành <code>risk</code>, bản mẫu sẽ đưa ra thông điệp cảnh báo mạnh hơn.
==Cách sử dụng==
;Cách dùng cơ bản
{{tlc|Sử dụng nhiều}}
;Tất cả tham số
{{tlc|Sử dụng nhiều |<nowiki>1= |2= |info= |demo= |form= |expiry= |no-percent= </nowiki>}}
{{Anchor|Chi tiết kĩ thuật}} <!-- for Mô đun:High-use -->
*{{para|1|''số trang nhúng''}}: (đã lỗi thời) Để nhập tay số trang nhúng, hoặc đặt bằng <code>risk</code> để hiển thị thông điệp "nguy hiểm cao". Hộp thông báo nay đã có thể tự động hiển thị số trang nhúng theo giá trị nó tìm thấy tại [[Mô đun:Transclusion count/data]] (được cập nhật định kì).
'''Lưu ý:''' Nếu bản mẫu tìm thấy số liệu tại Mô đun:Transclusion count/data, nó sẽ bỏ qua giá trị nhập tay.
*{{para|2|''liên kết trang thảo luận''}}
*{{para|info|''thông điệp bổ sung''}}
*{{para|demo|''Tên bản mẫu''}}
*{{para|form}}: <code>editnotice</code>
*{{para|expiry}}: tham số expiry của {{tl|editnotice}}
*{{para|no-percent}}: Đặt bằng <kbd>yes</kbd> để tắt dòng "chiếm x% tổng số trang". Thông tin này được tự động hiển thị nếu số trang nhúng lớn hơn hơn 1% tổng số trang (hiện tại <code><nowiki>{{NUMBEROFPAGES}}</nowiki></code> bằng {{NUMBEROFPAGES}} do đó 1% tương ứng {{formatnum:{{#expr:trunc({{formatnum:{{NUMBEROFPAGES}}|R}}/100)}}}} trang).
==Ví dụ==
===Thông điệp thông thường===
<pre>{{Sử dụng nhiều}}</pre>
{{Sử dụng nhiều}}
<pre>{{Sử dụng nhiều|49500+|Wikipedia:Thảo luận|demo=Bản mẫu không có thật}}</pre>
{{Sử dụng nhiều|49500+|Wikipedia:Thảo luận|demo=Bản mẫu không có thật}}
<pre>{{Sử dụng nhiều|49500|form=editnotice|demo=Bản mẫu không có thật}}</pre>
{{Sử dụng nhiều|49500|form=editnotice|demo=Bản mẫu không có thật}}
=== Nguy hiểm cao ===
<pre>{{Sử dụng nhiều|demo=Hộp điều hướng}}</pre>
{{Sử dụng nhiều|demo=Hộp điều hướng}}
<pre>{{Sử dụng nhiều| |Wikipedia:Thảo luận|demo=Hộp thông tin|info=Đó là một con số lớn!}}</pre>
{{Sử dụng nhiều| |Wikipedia:Thảo luận|demo=Hộp thông tin|info=Đó là một con số lớn!}}
== Đổi hướng ==
* {{tl|High-use}}
* {{tl|High-risk}} ({{tl|Nguy hiểm cao}})
== Xem thêm ==
* {{tl|Bản mẫu phức tạp}}
* {{tl|Used in system}} - cho các bản mẫu nhúng vào trang MediaWiki
=== Đếm bản mẫu ===
* [[toolforge:templatecount]] – dễ sử dụng, trả về số lượng trang nhúng hiện tại (thời gian thực) của một bản mẫu
* [[toolforge:linkcount]]
* <span class="plainlinks">[{{fullurl:Special:MostTranscludedPages|limit=500}} Special:MostTranscludedPages]</span> – Những trang được nhúng nhiều nhất<!--
* [[tools:~dispenser/cgi-bin/embeddedincount.py]] – Có vẻ như thiếu giao diện của con người, có lẽ có nghĩa là cho các chương trình để gọi.-->
<includeonly>{{sandbox other||
[[Thể loại:Tài liệu bản mẫu]]
}}</includeonly>
hhzze2umgc65zu5ilkqwmh3qg64rscw
Bản mẫu:Nguy hiểm cao
10
10584
63400
2026-10-01T03:33:18Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{#gọi:High-use|main|1={{{1|}}}|2={{{2|}}}|info={{{info|}}}|demo={{{demo|}}}|form={{{form|}}}|expiry={{{expiry|}}}|system={{{system|}}}}}<noinclude> {{Tài liệu}} </noinclude>”
63400
wikitext
text/x-wiki
{{#gọi:High-use|main|1={{{1|}}}|2={{{2|}}}|info={{{info|}}}|demo={{{demo|}}}|form={{{form|}}}|expiry={{{expiry|}}}|system={{{system|}}}}}<noinclude>
{{Tài liệu}}
</noinclude>
643eds4bp4cxphqlrf2fpzcitjwmlzq
63403
63400
2026-10-01T03:34:50Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Sử dụng nhiều]]
63403
wikitext
text/x-wiki
#đổi [[Bản mẫu:Sử dụng nhiều]]
cztgghqxo4i28th6e1ie9peevu16aae
Bản mẫu:Nguy hiểm cao/doc
10
10585
63401
2026-10-01T03:33:47Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{lua|Mô đun:High-use}} Hộp thông báo {{tlx|{{ROOTPAGENAME}}}} được đặt trong trang tài liệu của những bản mẫu được nhúng ở hơn 2000 trang. Đối với các bản mẫu được nhúng ở hơn 100.000 trang, hoặc nếu tham số đầu tiên được đặt thành <code>risk</code>, bản mẫu sẽ đưa ra thông điệp cảnh báo mạnh hơn. ==Cách sử dụng== ;Cách dùng cơ bả…”
63401
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{lua|Mô đun:High-use}}
Hộp thông báo {{tlx|{{ROOTPAGENAME}}}} được đặt trong trang tài liệu của những bản mẫu được nhúng ở hơn 2000 trang. Đối với các bản mẫu được nhúng ở hơn 100.000 trang, hoặc nếu tham số đầu tiên được đặt thành <code>risk</code>, bản mẫu sẽ đưa ra thông điệp cảnh báo mạnh hơn.
==Cách sử dụng==
;Cách dùng cơ bản
{{tlc|Sử dụng nhiều}}
;Tất cả tham số
{{tlc|Sử dụng nhiều |<nowiki>1= |2= |info= |demo= |form= |expiry= |no-percent= </nowiki>}}
{{Anchor|Chi tiết kĩ thuật}} <!-- for Mô đun:High-use -->
*{{para|1|''số trang nhúng''}}: (đã lỗi thời) Để nhập tay số trang nhúng, hoặc đặt bằng <code>risk</code> để hiển thị thông điệp "nguy hiểm cao". Hộp thông báo nay đã có thể tự động hiển thị số trang nhúng theo giá trị nó tìm thấy tại [[Mô đun:Transclusion count/data]] (được cập nhật định kì).
'''Lưu ý:''' Nếu bản mẫu tìm thấy số liệu tại Mô đun:Transclusion count/data, nó sẽ bỏ qua giá trị nhập tay.
*{{para|2|''liên kết trang thảo luận''}}
*{{para|info|''thông điệp bổ sung''}}
*{{para|demo|''Tên bản mẫu''}}
*{{para|form}}: <code>editnotice</code>
*{{para|expiry}}: tham số expiry của {{tl|editnotice}}
*{{para|no-percent}}: Đặt bằng <kbd>yes</kbd> để tắt dòng "chiếm x% tổng số trang". Thông tin này được tự động hiển thị nếu số trang nhúng lớn hơn hơn 1% tổng số trang (hiện tại <code><nowiki>{{NUMBEROFPAGES}}</nowiki></code> bằng {{NUMBEROFPAGES}} do đó 1% tương ứng {{formatnum:{{#expr:trunc({{formatnum:{{NUMBEROFPAGES}}|R}}/100)}}}} trang).
==Ví dụ==
===Thông điệp thông thường===
<pre>{{Sử dụng nhiều}}</pre>
{{Sử dụng nhiều}}
<pre>{{Sử dụng nhiều|49500+|Wikipedia:Thảo luận|demo=Bản mẫu không có thật}}</pre>
{{Sử dụng nhiều|49500+|Wikipedia:Thảo luận|demo=Bản mẫu không có thật}}
<pre>{{Sử dụng nhiều|49500|form=editnotice|demo=Bản mẫu không có thật}}</pre>
{{Sử dụng nhiều|49500|form=editnotice|demo=Bản mẫu không có thật}}
=== Nguy hiểm cao ===
<pre>{{Sử dụng nhiều|demo=Hộp điều hướng}}</pre>
{{Sử dụng nhiều|demo=Hộp điều hướng}}
<pre>{{Sử dụng nhiều| |Wikipedia:Thảo luận|demo=Hộp thông tin|info=Đó là một con số lớn!}}</pre>
{{Sử dụng nhiều| |Wikipedia:Thảo luận|demo=Hộp thông tin|info=Đó là một con số lớn!}}
== Đổi hướng ==
* {{tl|High-use}}
* {{tl|High-risk}} ({{tl|Nguy hiểm cao}})
== Xem thêm ==
* {{tl|Bản mẫu phức tạp}}
* {{tl|Used in system}} - cho các bản mẫu nhúng vào trang MediaWiki
=== Đếm bản mẫu ===
* [[toolforge:templatecount]] – dễ sử dụng, trả về số lượng trang nhúng hiện tại (thời gian thực) của một bản mẫu
* [[toolforge:linkcount]]
* <span class="plainlinks">[{{fullurl:Special:MostTranscludedPages|limit=500}} Special:MostTranscludedPages]</span> – Những trang được nhúng nhiều nhất<!--
* [[tools:~dispenser/cgi-bin/embeddedincount.py]] – Có vẻ như thiếu giao diện của con người, có lẽ có nghĩa là cho các chương trình để gọi.-->
<includeonly>{{sandbox other||
[[Thể loại:Tài liệu bản mẫu]]
}}</includeonly>
hhzze2umgc65zu5ilkqwmh3qg64rscw
63402
63401
2026-10-01T03:34:37Z
Làm Việc Thiện
13742
Requesting speedy deletion (Test page). (TwinkleGlobal)
63402
wikitext
text/x-wiki
<noinclude>{{Chờ_xóa|1=Test page}}</noinclude>
{{Trang con tài liệu}}
{{lua|Mô đun:High-use}}
Hộp thông báo {{tlx|{{ROOTPAGENAME}}}} được đặt trong trang tài liệu của những bản mẫu được nhúng ở hơn 2000 trang. Đối với các bản mẫu được nhúng ở hơn 100.000 trang, hoặc nếu tham số đầu tiên được đặt thành <code>risk</code>, bản mẫu sẽ đưa ra thông điệp cảnh báo mạnh hơn.
==Cách sử dụng==
;Cách dùng cơ bản
{{tlc|Sử dụng nhiều}}
;Tất cả tham số
{{tlc|Sử dụng nhiều |<nowiki>1= |2= |info= |demo= |form= |expiry= |no-percent= </nowiki>}}
{{Anchor|Chi tiết kĩ thuật}} <!-- for Mô đun:High-use -->
*{{para|1|''số trang nhúng''}}: (đã lỗi thời) Để nhập tay số trang nhúng, hoặc đặt bằng <code>risk</code> để hiển thị thông điệp "nguy hiểm cao". Hộp thông báo nay đã có thể tự động hiển thị số trang nhúng theo giá trị nó tìm thấy tại [[Mô đun:Transclusion count/data]] (được cập nhật định kì).
'''Lưu ý:''' Nếu bản mẫu tìm thấy số liệu tại Mô đun:Transclusion count/data, nó sẽ bỏ qua giá trị nhập tay.
*{{para|2|''liên kết trang thảo luận''}}
*{{para|info|''thông điệp bổ sung''}}
*{{para|demo|''Tên bản mẫu''}}
*{{para|form}}: <code>editnotice</code>
*{{para|expiry}}: tham số expiry của {{tl|editnotice}}
*{{para|no-percent}}: Đặt bằng <kbd>yes</kbd> để tắt dòng "chiếm x% tổng số trang". Thông tin này được tự động hiển thị nếu số trang nhúng lớn hơn hơn 1% tổng số trang (hiện tại <code><nowiki>{{NUMBEROFPAGES}}</nowiki></code> bằng {{NUMBEROFPAGES}} do đó 1% tương ứng {{formatnum:{{#expr:trunc({{formatnum:{{NUMBEROFPAGES}}|R}}/100)}}}} trang).
==Ví dụ==
===Thông điệp thông thường===
<pre>{{Sử dụng nhiều}}</pre>
{{Sử dụng nhiều}}
<pre>{{Sử dụng nhiều|49500+|Wikipedia:Thảo luận|demo=Bản mẫu không có thật}}</pre>
{{Sử dụng nhiều|49500+|Wikipedia:Thảo luận|demo=Bản mẫu không có thật}}
<pre>{{Sử dụng nhiều|49500|form=editnotice|demo=Bản mẫu không có thật}}</pre>
{{Sử dụng nhiều|49500|form=editnotice|demo=Bản mẫu không có thật}}
=== Nguy hiểm cao ===
<pre>{{Sử dụng nhiều|demo=Hộp điều hướng}}</pre>
{{Sử dụng nhiều|demo=Hộp điều hướng}}
<pre>{{Sử dụng nhiều| |Wikipedia:Thảo luận|demo=Hộp thông tin|info=Đó là một con số lớn!}}</pre>
{{Sử dụng nhiều| |Wikipedia:Thảo luận|demo=Hộp thông tin|info=Đó là một con số lớn!}}
== Đổi hướng ==
* {{tl|High-use}}
* {{tl|High-risk}} ({{tl|Nguy hiểm cao}})
== Xem thêm ==
* {{tl|Bản mẫu phức tạp}}
* {{tl|Used in system}} - cho các bản mẫu nhúng vào trang MediaWiki
=== Đếm bản mẫu ===
* [[toolforge:templatecount]] – dễ sử dụng, trả về số lượng trang nhúng hiện tại (thời gian thực) của một bản mẫu
* [[toolforge:linkcount]]
* <span class="plainlinks">[{{fullurl:Special:MostTranscludedPages|limit=500}} Special:MostTranscludedPages]</span> – Những trang được nhúng nhiều nhất<!--
* [[tools:~dispenser/cgi-bin/embeddedincount.py]] – Có vẻ như thiếu giao diện của con người, có lẽ có nghĩa là cho các chương trình để gọi.-->
<includeonly>{{sandbox other||
[[Thể loại:Tài liệu bản mẫu]]
}}</includeonly>
a28ap45bzldjkn63bwg8f4wvvglnx3o
Mô đun:Shortcut/config
828
10586
63404
2026-10-01T03:35:51Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-- This module holds configuration data for [[Mô đun:Shortcut]]. return { -- The heading at the top of the shortcut box. It accepts the following parameter: -- $1 - the total number of shortcuts. (required) ['shortcut-heading'] = '[[Wikipedia:Viết tắt|Viết tắt]]', -- The heading when |redirect=yes is given. It accepts the following parameter: -- $1 - the total number of shortcuts. (required) ['redirect-heading'] = '[[Wikipedia:Trang đ…”
63404
Scribunto
text/plain
-- This module holds configuration data for [[Mô đun:Shortcut]].
return {
-- The heading at the top of the shortcut box. It accepts the following parameter:
-- $1 - the total number of shortcuts. (required)
['shortcut-heading'] = '[[Wikipedia:Viết tắt|Viết tắt]]',
-- The heading when |redirect=yes is given. It accepts the following parameter:
-- $1 - the total number of shortcuts. (required)
['redirect-heading'] = '[[Wikipedia:Trang đổi hướng|Đổi hướng]]',
-- The error message to display when a shortcut is invalid (is not a string, or
-- is the blank string). It accepts the following parameter:
-- $1 - the number of the shortcut in the argument list. (required)
['invalid-shortcut-error'] = 'viết tắt #$1 không hợp lệ (các viết tắt phải là ' ..
'chuỗi gồm ít nhất một ký tự)',
-- The error message to display when no shortcuts or other displayable content
-- were specified. (required)
['no-content-error'] = 'Lỗi: không có viết tắt nào được chỉ định và tham số ' ..
mw.text.nowiki('|msg=') ..
' không được thiết lập.',
-- A category to add when the no-content-error message is displayed. (optional)
['no-content-error-category'] = 'Bản mẫu viết tắt thiếu tham số',
}
75lifkdc3j9mxxo4zvz7gz4y2o1aew0
Bản mẫu:Thông báo sửa đổi
10
10587
63405
2026-10-01T03:37:12Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{#ifeq:{{FULLROOTPAGENAME}}|Bản mẫu:Các thông báo sửa đổi |{{Thông báo sửa đổi/Thông báo |expiry={{{expiry|¬}}} |redirect={{{redirect|}}} }} }}{{#ifexpr:{{#ifeq:{{FULLROOTPAGENAME}}|Bản mẫu:Các thông báo sửa đổi |1 |0 }}+{{#switch:{{{expiry|¬}}} |vô hạn|indefinite = 1 | |¬ = 1 <!-- Expiry not specified --> |#default = {{#iferror:{{#time:U|{{{expiry}}}}} |0 <!-- Invalid expiry time…”
63405
wikitext
text/x-wiki
{{#ifeq:{{FULLROOTPAGENAME}}|Bản mẫu:Các thông báo sửa đổi
|{{Thông báo sửa đổi/Thông báo
|expiry={{{expiry|¬}}}
|redirect={{{redirect|}}}
}}
}}{{#ifexpr:{{#ifeq:{{FULLROOTPAGENAME}}|Bản mẫu:Các thông báo sửa đổi
|1
|0
}}+{{#switch:{{{expiry|¬}}}
|vô hạn|indefinite = 1
|
|¬ = 1 <!-- Expiry not specified -->
|#default = {{#iferror:{{#time:U|{{{expiry}}}}}
|0 <!-- Invalid expiry time -->
|{{#ifexpr:{{#time:U|{{{expiry}}}}}-{{#time:U|{{CURRENTTIMESTAMP}}}}>0
|1 <!-- Notice current -->
|0 <!-- Notice expired -->
}}
}}
}}
|{{fmbox
|type = {{{type|editnotice}}}
|id = {{{id|}}}
|textstyle = {{{textstyle|}}}
|style = {{{style|}}}
|class = {{{class|}}}
|image = {{#if:{{{image|}}}
|{{#invoke:InfoboxImage|InfoboxImage|image={{{image}}}|size={{{imagesize|}}}|sizedefault=40x40px}}
|none
}}
|imageright= {{#if:{{{imageright|}}}
|{{#invoke:InfoboxImage|InfoboxImage|image={{{imageright}}}|size={{{imagerightsize|}}}|sizedefault=40x40px}}
}}
|text = {{#if:{{{header|}}}
|<div style="font-weight: bold; {{{headerstyle|}}}">{{{header}}}</div>
}}
{{{text|{{{1}}}}}}
}}
}}{{#ifeq:{{FULLROOTPAGENAME}}|Bản mẫu:Các thông báo sửa đổi|{{#switch:{{{expiry|¬}}}
|indefinite
|
|¬ = <!-- Expiry not specified -->
|#default = {{#iferror:{{#time:U|{{{expiry}}}}}
| <!-- Invalid expiry time -->
|{{#ifexpr:{{#time:U|{{{expiry}}}}}-{{#time:U|{{CURRENTTIMESTAMP}}}}>0
| <!-- Notice current -->
| <!-- [[Category:Expired editnotices]] --> <!-- Notice expired -->
}}
}}
}}
}}<noinclude>
{{Tài liệu}}
</noinclude>
ggoytkylizasalsm2e038ynpbicvv7k
Bản mẫu:Thông báo sửa đổi/doc
10
10588
63406
2026-10-01T03:37:24Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Documentation subpage}} {{Used in system}} <!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[</nowiki>[[Wikipedia:Wikidata]]<nowiki>]]) --> == Sử dụng == Bản mẫu này là một bản mẫu định dạng cho các thông báo sửa đổi, là các thông báo xuất hiện phía trên vùng văn bản trên các trang sửa đổi. Thông báo sửa đổi có thể là mỗi không gian…”
63406
wikitext
text/x-wiki
{{Documentation subpage}}
{{Used in system}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[</nowiki>[[Wikipedia:Wikidata]]<nowiki>]]) -->
== Sử dụng ==
Bản mẫu này là một bản mẫu định dạng cho các thông báo sửa đổi, là các thông báo xuất hiện phía trên vùng văn bản trên các trang sửa đổi. Thông báo sửa đổi có thể là mỗi không gian tên hoặc mỗi bài viết.
Để tạo một thông báo sửa đổi mới, vui lòng làm theo hướng dẫn tại [[Wikipedia:Thông báo sửa đổi]].
===Tham số===
<pre style="overflow: auto">
{{Thông báo sửa đổi
| expiry =
| id =
| header =
| headerstyle =
| text =
| textstyle =
| image =
| imagesize =
| style =
| class =
}}
</pre>
'''''Chú ý''': Tất cả các tham số là tùy chọn, ngoại trừ <code>text</code>.''
== Tham số ==
{| class="wikitable"
|-
! Thông số !! Chức năng !! Cần thiết
|-
| expire || Ngày hết hạn của thông báo || Không
|-
| id || id cho HTML || Không
|-
| header || Đầu đề || Không
|-
| headerstyle || Mã CSS cho đầu đề || Không
|-
| text || Nội dung chính || Có
|-
| textstyle || Mã CSS cho nội dung chính || Không
|-
| image || Hình || Không
|-
| imageright || Hình ở phía bên tay phải || Không
|}
* {{para|class|Tên lớp CSS cho toàn bộ thông báo sửa đổi}}
* {{para|style|Giá trị CSS cho toàn bộ thông báo sửa đổi}}
::<small>''Chỉ sử dụng tên của tập tin hình ảnh, vì vậy thay vì "<nowiki>[[File:Wikipedia-logo-v2.svg]]</nowiki>", dùng "'''Wikipedia-logo-v2.svg'''" bên cạnh "image =".''</small>
=== Ngày hết hạn ===
Tham số ''expiry'' có thể được sử dụng để chỉ định khi nào một thông báo sửa đổi không còn hiển thị trên một bài viết. Điều này có thể hữu ích khi một bản thông báo sửa đổi được tạo ra vì lý do có tính chất tạm thời. Bất kỳ định dạng thời gian hợp lệ có thể được sử dụng, ví dụ:
* January 2012
* 4 April 2009
* 11:09 April 5 2013
Để xác định rằng một thông báo sửa đổi không bao giờ hết hạn, có thể sử dụng {{para|expiry|indefinite}}.
== Ví dụ ==
<pre style="overflow: auto">
{{Thông báo sửa đổi
| id = loremipsumedn
| header = Attention editors
| headerstyle = font-size: 150%;
| text = Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
| textstyle = font-size: 120%;
| image =
}}
</pre>
{{Thông báo sửa đổi
| id = loremipsumedn
| header = Attention editors
| headerstyle = font-size: 150%;
| text = Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
| textstyle = font-size: 120%;
| image =
}}
<pre style="overflow: auto">
{{Thông báo sửa đổi
| id = faqedn
| header = Frequently asked questions
| headerstyle = font-size: 120%;
| text = Before editing, please consult the list of Frequently Asked Questions specific to this article. The FAQ includes questions on many issues that have been discussed.
| textstyle = background-color: #fee;
| image =
}}
</pre>
{{Thông báo sửa đổi
| id = faqedn
| header = Frequently asked questions
| headerstyle = font-size: 120%;
| text = Before editing, please consult the list of Frequently Asked Questions specific to this article. The FAQ includes questions on many issues that have been discussed.
| textstyle = background-color: #fee;
| image =
}}
<pre style="overflow: auto">
{{Thông báo sửa đổi
| id = engvaredn
| header =
| headerstyle =
| text = This article is written in '''[[British English]]''', which differs from [[American English]] in some ways. See [[American and British English differences]]. According to the [[Wikipedia:Cẩm nang biên soạn#National varieties of English|relevant style guide]], this should not be changed without broad consensus.
| textstyle =
| image = Flag of the United Kingdom.svg
| imagesize = 50px
}}
</pre>
{{Thông báo sửa đổi
| id = engvaredn
| header =
| headerstyle =
| text = This article is written in '''[[British English]]''', which differs from [[American English]] in some ways. See [[American and British English differences]]. According to the [[Wikipedia:Cẩm nang biên soạn#National varieties of English|relevant style guide]], this should not be changed without broad consensus.
| textstyle =
| image = Flag of the United Kingdom.svg
| imagesize = 50px
}}
=== Số không gian tên ===
<poem>
0 – (Chính)
1 – Thảo luận:
2 – Thành viên: <ref group="note">Thông báo sửa đổi thành viên hiện được triển khai bằng cách tạo một trang con trên trang thành viên có tên "/Editnotice". Điều này cho phép người dùng không phải bảo quản viên sửa thông báo sửa đổi của riêng họ. Hiển thị thông báo sửa đổi người dùng được kiểm soát bởi [[MediaWiki:Editnotice-2]].</ref>
3 – Thảo luận Thành viên: <ref group="note">Thông báo sửa đổi thảo luận thành viên hiện được triển khai bằng cách tạo một trang con trên trang thảo luận thành viên có tên "/Editnotice". Điều này cho phép người dùng không phải bảo quản viên sửa thông báo sửa đổi của riêng họ. Hiển thị thông báo sửa đổi thảo luận thành viên được kiểm soát bởi [[MediaWiki:Editnotice-3]].</ref>
4 – Wikipedia:
5 – Thảo luận Wikipedia:
6 – Tập tin:
7 – Thảo luận Tập tin:
8 – MediaWiki:
9 – Thảo luận MediaWiki:
10 – Bản mẫu:
11 – Thảo luận Bản mẫu:
12 – Trợ giúp:
13 – Thảo luận Trợ giúp:
14 – Thể loại:
15 – Thảo luận Thể loại:
100 – Dự án:
101 – Thảo luận Dự án:
828 – Mô đun:
829 – Thảo luận Mô đun:
</poem>
{{reflist|group="note"}}
== Câc thông báo sửa đổi được tạo cho đến nay ==
{{Hidden begin|title=Danh sách này được tạo tự động bởi [[Special:PrefixIndex]] và bị cắt ngắn không đưa ra số lượng lớn các thông báo sửa đổi.}}
{{Special:PrefixIndex/MediaWiki:Editnotice}}
{{Special:PrefixIndex/Bản mẫu:Các thông báo sửa đổi/}}
{{Hidden end}}
== Xem thêm ==
* [[Wikipedia:Thông báo sửa đổi]] – More about editnotices
* {{tl|editnotice pagename}} – Trả về tên trang cho phần thông báo sửa đổi cho trang hiện tại.
* {{tl|editnotice talkpagename}} – Trả về tên trang thảo luạn cho phần thông báo sửa đổi cho trang hiện tại.
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox||
[[Thể loại:Thông báo sửa đổi Wikipedia|{{PAGENAME}}]]
<!-- Categories below this line, please; interwikis at Wikidata -->
}}</includeonly>
q4k4fp6wsxgfl45cyogizv0sor5yxya
Mô đun:InfoboxImage
828
10589
63407
2026-10-01T03:39:04Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-- Inputs: -- image - Can either be a bare filename (with or without the File:/Image: prefix) or a fully formatted image link -- page - page to display for multipage images (DjVu) -- size - size to display the image -- maxsize - maximum size for image -- sizedefault - default size to display the image if size param is blank -- alt - alt text for image -- title - title text for image -- border - set to yes if border -- center -…”
63407
Scribunto
text/plain
-- Inputs:
-- image - Can either be a bare filename (with or without the File:/Image: prefix) or a fully formatted image link
-- page - page to display for multipage images (DjVu)
-- size - size to display the image
-- maxsize - maximum size for image
-- sizedefault - default size to display the image if size param is blank
-- alt - alt text for image
-- title - title text for image
-- border - set to yes if border
-- center - set to yes, if the image has to be centered
-- upright - upright image param
-- suppressplaceholder - if yes then checks to see if image is a placeholder and suppresses it
-- link - page to visit when clicking on image
-- class - HTML classes to add to the image
-- Outputs:
-- Formatted image.
-- More details available at the "Module:InfoboxImage/doc" page
local i = {}
-- List of placeholder images and tracking categories stored in [[Module:InfoboxImage/data]]
-- Other constants:
-- the system-wide default thumbnail size (in px)
local defaultThumbnailSize = 250
-- If page is not a user page, return tracking category. Else return empty.
local function trackingCat(cat)
local ns = mw.title.getCurrentTitle().nsText:lower()
local categories = mw.loadData('Module:InfoboxImage/data').categories
return (ns ~= 'thành_viên' and ns ~= 'thảo_luận_thành_viên' and categories[cat]) or ""
end
-- Determine whether image is a placeholder
function i.IsPlaceholder(image)
-- change underscores to spaces
image = mw.ustring.gsub(image, "_", " ");
assert(image ~= nil, 'mw.ustring.gsub(image, "_", " ") must not return nil')
-- if image starts with [[ then remove that and anything after |
if mw.ustring.sub(image,1,2) == "[[" then
image = mw.ustring.sub(image,3);
image = mw.ustring.gsub(image, "([^|]*)|.*", "%1");
assert(image ~= nil, 'mw.ustring.gsub(image, "([^|]*)|.*", "%1") must not return nil')
end
-- Trim spaces
image = mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1');
assert(image ~= nil, "mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1') must not return nil")
-- remove prefix if exists
local allNames = mw.site.namespaces[6].aliases
allNames[#allNames + 1] = mw.site.namespaces[6].name
allNames[#allNames + 1] = mw.site.namespaces[6].canonicalName
for i, name in ipairs(allNames) do
if mw.ustring.lower(mw.ustring.sub(image, 1, mw.ustring.len(name) + 1)) == mw.ustring.lower(name .. ":") then
image = mw.ustring.sub(image, mw.ustring.len(name) + 2);
break
end
end
-- Trim spaces
image = mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1');
-- capitalise first letter
image = mw.ustring.upper(mw.ustring.sub(image,1,1)) .. mw.ustring.sub(image,2);
local placeholder_image = mw.loadData('Module:InfoboxImage/data').placeholder_image
return placeholder_image[image]
end
local function isempty(x)
return (not x) or x == ""
end
-- Main entry point
function i.InfoboxImage(frame)
local image = frame.args["image"];
if isempty(image) then
return "";
end
if image == " " then
return image;
end
if frame.args["suppressplaceholder"] ~= "no" then
if i.IsPlaceholder(image) == true then
return "";
end
end
if string.find(image, "^%[*https?:") then
-- Error category.
return trackingCat("url_image_links")
end
if mw.ustring.sub(image,1,2) == "[[" then
-- search for thumbnail images and add to tracking cat if found
local cat = "";
if mw.title.getCurrentTitle().namespace == 0 and (mw.ustring.find(image, "|%s*thumb%s*[|%]]") or mw.ustring.find(image, "|%s*thumbnail%s*[|%]]")) then
cat = trackingCat("thumbnail_images")
end
return image .. cat;
elseif mw.ustring.sub(image,1,2) == "{{" and mw.ustring.sub(image,1,3) ~= "{{{" then
return image;
elseif mw.ustring.sub(image,1,1) == "<" then
return image;
elseif mw.ustring.sub(image,1,8) == mw.ustring.char(127).."'\"`UNIQ" then
-- Found strip marker at begining, so pass don't process at all
return image;
else
local result = "";
local page = frame.args["page"];
local upright = frame.args["upright"] or ""
local size = frame.args["size"];
local maxsize = frame.args["maxsize"];
local sizedefault = frame.args["sizedefault"];
local alt = frame.args["alt"];
local link = frame.args["link"];
local title = frame.args["title"];
local border = frame.args["border"];
local thumbtime = frame.args["thumbtime"] or "";
local center = frame.args["center"];
local class = frame.args["class"];
-- remove prefix if exists
local allNames = mw.site.namespaces[6].aliases
allNames[#allNames + 1] = mw.site.namespaces[6].name
allNames[#allNames + 1] = mw.site.namespaces[6].canonicalName
for i, name in ipairs(allNames) do
if mw.ustring.lower(mw.ustring.sub(image, 1, mw.ustring.len(name) + 1)) == mw.ustring.lower(name .. ":") then
image = mw.ustring.sub(image, mw.ustring.len(name) + 2);
break
end
end
if not isempty(maxsize) then
-- if no sizedefault nor upright, then set to maxsize
if isempty(sizedefault) and isempty(upright) then
sizedefault = maxsize
end
-- check to see if size bigger than maxsize
local maxsizenumber = tonumber(mw.ustring.match(maxsize,"%d*")) or 0;
if not isempty(size) then
local sizenumber = tonumber(mw.ustring.match(size,"%d*")) or 0;
if sizenumber > maxsizenumber and maxsizenumber > 0 then
size = maxsize;
end
end
-- check to see if upright bigger than maxsize (at default preferred size)
if not isempty(upright) then
local uprightnumber = tonumber(upright) or (upright == "yes" and 0.75) or 0
if uprightnumber*defaultThumbnailSize > maxsizenumber and maxsizenumber > 0 then
upright = tostring(maxsizenumber/defaultThumbnailSize)
end
end
end
-- add px to size if just a number
if (tonumber(size) or 0) > 0 then
size = size .. "px";
end
-- add px to sizedefault if just a number
if (tonumber(sizedefault) or 0) > 0 then
sizedefault = sizedefault .. "px";
end
result = "[[File:" .. image;
if not isempty(page) then
result = result .. "|page=" .. page;
end
if not isempty(size) then
result = result .. "|" .. size;
elseif not isempty(sizedefault) and isempty(upright) then
result = result .. "|" .. sizedefault;
else
result = result .. "|frameless";
end
if center == "yes" then
result = result .. "|center"
end
if not isempty(alt) then
result = result .. "|alt=" .. alt;
end
if not isempty(link) then
result = result .. "|link=" .. link;
end
if border == "yes" then
result = result .. "|border";
end
if upright == "yes" then
result = result .. "|upright";
elseif upright ~= "" then
result = result .. "|upright=" .. upright;
end
if thumbtime ~= "" then
result = result .. "|thumbtime=" .. thumbtime;
end
if not isempty(class) then
result = result .. "|class=" .. class;
end
-- if alt value is a keyword then do not use as a description
if alt == "thumbnail" or alt == "thumb" or alt == "frameless" or alt == "left" or alt == "center" or alt == "right" or alt == "upright" or alt == "border" or mw.ustring.match(alt or "", '^[0-9]*px$', 1) ~= nil then
alt = nil;
end
if not isempty(title) then
-- does title param contain any templatestyles? If yes then set to blank.
if mw.ustring.match(frame:preprocess(title), 'UNIQ%-%-templatestyles', 1) ~= nil then
title = nil;
end
end
if not isempty(title) then
result = result .. "|" .. title;
end
result = result .. "]]";
return result;
end
end
return i;
cxqzpz2200qy3spgyjwdip5gpsba4j6
Mô đun:InfoboxImage/tài liệu
828
10590
63408
2026-10-01T03:39:28Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{High-risk|1047296}} {{Module rating|protected}} ==Tổng quan== Mô-đun này được sử dụng trong các hộp thông tin để xử lý các tham số hình ảnh và thu gọn định dạng của kết quả. ==Các tham số== {| class="wikitable" ! Tham số ! Mô tả |- | image | Cần thiết. Tham số chính cần được chuyển qua có chứa thông tin hình ảnh. |- | size | Cỡ tùy chỉnh của hình khi hiện ra |- | maxs…”
63408
wikitext
text/x-wiki
{{High-risk|1047296}}
{{Module rating|protected}}
==Tổng quan==
Mô-đun này được sử dụng trong các hộp thông tin để xử lý các tham số hình ảnh và thu gọn định dạng của kết quả.
==Các tham số==
{| class="wikitable"
! Tham số
! Mô tả
|-
| image
| Cần thiết. Tham số chính cần được chuyển qua có chứa thông tin hình ảnh.
|-
| size
| Cỡ tùy chỉnh của hình khi hiện ra
|-
| maxsize
| Kích thước tối đa để hiển thị hình ảnh. Lưu ý: Nếu không có thông số kích thước hoặc kích thước được chỉ định thì hình ảnh sẽ được hiển thị ở mức tối đa.
|-
| sizedefault
| Kích thước để sử dụng cho hình ảnh nếu không có số trong tham số size được chỉ định. Thì tham số mặc định là [[:en:Wikipedia:Autosizing images|frameless]].
|-
| alt
| Văn bản thay thế cho hình ảnh.
|-
| title
| Tiêu đề của hình ảnh (chữ hiện trong khung hiện ra khi rê chuột vào ảnh). Nếu trống trường này thì văn bản tham số alt sẽ được sử dụng.
|-
| border
| Nếu để là có (yes), viền khung biên hình ảnh sẽ được thêm vào.
|-
| page
| Số trang sẽ được hiển thị khi sử dụng hình ảnh trong nhiều trang
|-
| upright
| Nếu upright=yes, thêm tham số "upright" sẽ hiện ảnh bằng 75% kích thước ban đầu hoặc cỡ hình mặc định (cỡ hình 220px nếu không thay đổi tham số trong [[Special:Preferences]]). Nếu thêm giá trị, thêm tham số "upright='''Giá trị'''" vào ảnh, trong đó các giá trị nhỏ hơn 1 tỷ lệ hình ảnh xuống (0,9 = 90%) và giá trị lớn hơn 1 tỷ lệ hình ảnh lên (1,15 = 115%).
|-
| center
| Nếu để là có (yes) , ảnh sẽ được để giữa.
|-
| thumbtime
| tham số thumbtime, được sử dụng cho các video clip.
|-
| suppressplaceholder
| Nếu không dùng tham số này, sẽ không triệt tiêu hình ảnh giữ chỗ nhất định. Xem {{section link||Hình ảnh giữ chỗ có thể bị chặn}}.
|-
| link
| Link điều hướng khi nhấn vào ảnh
|}
Lưu ý : Nếu bạn chỉ định các thông số cho maxsize hoặc sizedefault, thì bạn nên bao gồm đơn px sau số.
{{Use dmy dates|date=July 2016}}
==Các tham số hiển thị trong cú pháp hình ảnh==
Tất cả tham số:
:<pre style="overflow:auto;">{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | size={{{size}}} | upright={{{upright}}} | alt={{{alt}}} | title={{{title}}} | thumbtime={{{thumbtime}}} | link={{{link}}} | border=yes | center=yes | page={{{page}}} }}</pre>
:<code>{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | size={{{size}}} | upright={{{upright}}} | alt={{{alt}}} | title={{{title}}} | thumbtime={{{thumbtime}}} | link={{{link}}} | border=yes | center=yes | page={{{page}}} }}</code>
Khi "size" and "maxsize" được xác định thêm vào, cái nhỏ hơn trong hai cái sẽ được sử dụng (nếu "px" bị bỏ qua thì nó sẽ được thêm vào bởi mô-đun):
:<pre style="overflow:auto;">{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | size=300px | maxsize=250px }}</pre>
:<code>{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | size=300px | maxsize=250px }}</code>
Khi "size" không được xác định (có thể hiểu là không có tham số này), "sizedefault" sẽ được sử dụng, mặc dù nó có thể lớn hơn "maxsize" (trong sử dụng thực tế "px" là bắt buộc sau số; bỏ qua ở đây để hiển thị nó không được thêm bởi mô-đun):
:<pre style="overflow:auto;">{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | sizedefault=250px | maxsize=200px }}</pre>
:<code>{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | sizedefault=250px | maxsize=200px }}</code>
Khi "size" and "sizedefault" không được xác định, "maxsize" sẽ được sử dụng (trong sử dụng thực tế "px" là bắt buộc sau số; bỏ qua ở đây để hiển thị nó không được thêm bởi mô-đun):
:<pre style="overflow:auto;">{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | maxsize=250px }}</pre>
:<code>{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | maxsize=250px }}</code>
Khi "size", "sizedefault", và "maxsize" không được xác định, "frameless" sẽ được thêm vào, Hiển thị hình ảnh theo kích thước hình thu nhỏ mặc định (220px, nhưng người dùng đăng nhập có thể chỉnh thông số này tại [[Special:Preferences]]) và nó được yêu cầu bắt buộc nếu dùng "upright" để mở rộng kích thước mặc định:
:<pre style="overflow:auto;">{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} }}</pre>
:<code>{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} }}</code>
Dùng "upright" mà không có giá trị số thêm vào, sẽ hiện hình ảnh ở kích thước xấp xỉ 75% kích thước mặc định của người dùng (nhân với 0,75 sau đó làm tròn đến 10 gần nhất):
:<pre style="overflow:auto;">{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | upright = yes }}</pre>
:<code>{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | upright = yes }}</code>
Khi "alt" được sử dụng mà không có "title", chữ alt cũng sẽ được sử dụng làm tiêu đề cho ảnh:
:<pre style="overflow:auto;">{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | alt = Alt text }}</pre>
:<code>{{#invoke:InfoboxImage | InfoboxImage | image={{{image}}} | alt = Alt text }}</code>
Để biết thêm thông tin, xem [[:en:Wikipedia:Extended image syntax]].
==Ví dụ sử dụng==
<pre style="overflow:auto;">
|image = {{#invoke:InfoboxImage|InfoboxImage|image={{{image|}}}|upright={{{image_upright|1}}}|alt={{{alt|}}}}}
</pre>
==Ví dụ==
{| class="wikitable"
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=}}
|-
|
<nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg}}</nowiki><br />
<nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=File:Abbey Rd Studios.jpg}}</nowiki><br />
<nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Image:Abbey Rd Studios.jpg}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg}}
|-
|
<nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|upright=yes}}</nowiki><br />
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|upright=yes}}
|-
|
<nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|upright=1.2}}</nowiki><br />
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|upright=1.2}}
|-
|
<nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=100px}}</nowiki><br />
<nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=100}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=100px}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=[[Image:Abbey Rd Studios.jpg|200px]]}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=[[Image:Abbey Rd Studios.jpg|200px]]}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=[[Image:Abbey Rd Studios.jpg|200px]]|title=Abbey Road!}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=[[Image:Abbey Rd Studios.jpg|200px]]|title=Abbey Road!}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|sizedefault=250px|alt=The front stairs and door of Abbey Road Studios}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|sizedefault=250px|alt=The front stairs and door of Abbey Road Studios}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|sizedefault=250|alt=The front stairs and door of Abbey Road Studios}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|sizedefault=250|alt=The front stairs and door of Abbey Road Studios}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|sizedefault=250px|alt=The front stairs and door of Abbey Road Studios|title=Exterior, front view of Abbey Road studios}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|sizedefault=250px|alt=The front stairs and door of Abbey Road Studios|title=Exterior, front view of Abbey Road studios}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|alt=The front stairs and door of Abbey Road Studios}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|alt=The front stairs and door of Abbey Road Studios}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=100px|alt=The front stairs and door of Abbey Road Studios}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=100px|alt=The front stairs and door of Abbey Road Studios}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Bandera de Bilbao.svg|size=100|border=yes}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Bandera de Bilbao.svg|size=200|border=yes}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Image is needed male.svg}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Image is needed male.svg}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Image is needed male.svg|suppressplaceholder=no}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Image is needed male.svg|suppressplaceholder=no}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=[[File:Image is needed male.svg|200px]]}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=[[File:Image is needed male.svg|200px]]}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=[[File:Image is needed male.svg|200px]]|suppressplaceholder=no}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=[[File:Image is needed male.svg|200px]]|suppressplaceholder=no}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=50px|maxsize=100px}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=50px|maxsize=100px}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=200px|maxsize=100px}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|size=200px|maxsize=100px}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=[[File:Abbey Rd Studios.jpg|200px]]|maxsize=100px}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=[[File:Abbey Rd Studios.jpg|200px]]|maxsize=100px}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|maxsize=100px|center=yes}}</nowiki>
| {{#invoke:InfoboxImage|InfoboxImage|image=Abbey Rd Studios.jpg|maxsize=100px|center=yes}}
|-
| <nowiki>{{#invoke:InfoboxImage|InfoboxImage|image=no such image|maxsize=100px|center=yes}}</nowiki><!-- this issue sh'd be fixed somewhow-->
| {{#invoke:InfoboxImage|InfoboxImage|image=no such image|maxsize=100px|center=yes}}
|}
== Hình ảnh giữ chỗ có thể bị chặn ==
{|
| style="vertical-align:top;" |
* [[:File:Blue - replace this image female.svg]]
* [[:File:Blue - replace this image male.svg]]
* [[:File:Female no free image yet.png]]
* [[:File:Male no free image yet.png]]
* [[:File:Flag of None (square).svg]]
* [[:File:Flag of None.svg]]
* [[:File:Flag of.svg]]
* [[:File:Green - replace this image female.svg]]
* [[:File:Green - replace this image male.svg]]
* [[:File:Image is needed female.svg]]
* [[:File:Image is needed male.svg]]
* [[:File:Location map of None.svg]]
* [[:File:Male no free image yet.png]]
* [[:File:Missing flag.png]]
* [[:File:No flag.svg]]
* [[:File:No free portrait.svg]]
* [[:File:No portrait (female).svg]]
* [[:File:No portrait (male).svg]]
* [[:File:Red - replace this image female.svg]]
* [[:File:Red - replace this image male.svg]]
* [[:File:Replace this image female (blue).svg]]
* [[:File:Replace this image female.svg]]
* [[:File:Replace this image male (blue).svg]]
* [[:File:Replace this image male.svg]]
* [[:File:Silver - replace this image female.svg]]
* [[:File:Silver - replace this image male.svg]]
* [[:File:Replace this image.svg]]
* [[:File:Cricket no pic.png]]
* [[:File:CarersLogo.gif]]
* [[:File:Diagram Needed.svg]]
* [[:File:Example.jpg]]
* [[:File:Image placeholder.png]]
* [[:File:No male portrait.svg]]
* [[:File:Nocover-upload.png]]
* [[:File:NoDVDcover copy.png]]
* [[:File:Noribbon.svg]]
| style="vertical-align:top;" |
* [[:File:No portrait-BFD-test.svg]]
* [[:File:Placeholder barnstar ribbon.png]]
* [[:File:Project Trains no image.png]]
* [[:File:Image-request.png]]
* [[:File:Sin bandera.svg]]
* [[:File:Sin escudo.svg]]
* [[:File:Replace this image - temple.png]]
* [[:File:Replace this image butterfly.png]]
* [[:File:Replace this image.svg]]
* [[:File:Replace this image1.svg]]
* [[:File:Resolution angle.png]]
* [[:File:Image-No portrait-text-BFD-test.svg]]
* [[:File:Insert image here.svg]]
* [[:File:No image available.png]]
* [[:File:NO IMAGE YET square.png]]
* [[:File:NO IMAGE YET.png]]
* [[:File:No Photo Available.svg]]
* [[:File:No Screenshot.svg]]
* [[:File:No-image-available.jpg]]
* [[:File:Null.png]]
* [[:File:PictureNeeded.gif]]
* [[:File:Place holder.jpg]]
* [[:File:Unbenannt.JPG]]
* [[:File:UploadACopyrightFreeImage.svg]]
* [[:File:UploadAnImage.gif]]
* [[:File:UploadAnImage.svg]]
* [[:File:UploadAnImageShort.svg]]
* [[:File:CarersLogo.gif]]
* [[:File:Diagram Needed.svg]]
* [[:File:No male portrait.svg]]
* [[:File:NoDVDcover copy.png]]
* [[:File:Placeholder barnstar ribbon.png]]
* [[:File:Project Trains no image.png]]
* [[:File:Image-request.png]]
|}
== Thể loại giám sát ==
* {{clc|Pages using deprecated image syntax}}
* {{clc|Trang có hộp thông tin có hình nhỏ}}
<includeonly>{{Sandbox other||
{{DEFAULTSORT:Image, {{PAGENAME}}}}
[[Category:Modules for image handling]]
[[Category:Modules that add a tracking category]]
}}</includeonly>
p4cgfg81izufpxlr3pryeijmq0mv4i8
Bản mẫu:High-risk
10
10591
63409
2026-10-01T03:41:23Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Sử dụng nhiều]]
63409
wikitext
text/x-wiki
#đổi [[Bản mẫu:Sử dụng nhiều]]
cztgghqxo4i28th6e1ie9peevu16aae
Bản mẫu:Xếp loại bản mẫu
10
10592
63410
2026-10-01T03:42:22Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#if:{{{1|}}}<!-- Escape empty required first unnamed parameter -->|{{#switch:{{Namespace detect|template=t|module=m|demospace={{{demospace|}}}|page={{{demopage|}}}}} |m |t = <!-- ***** IF IN MODULE OR TEMPLATE NAMESPACE ***** -->{{ombox | type = notice | image = {{#switch: {{lc:{{{1|}}}}} | pre-alpha | prealpha | pa | experimental = [[File:Ambox warning blue construction.svg|40x40px|link=|alt=]] | alpha | a…”
63410
wikitext
text/x-wiki
<includeonly>{{#if:{{{1|}}}<!-- Escape empty required first unnamed parameter -->|{{#switch:{{Namespace detect|template=t|module=m|demospace={{{demospace|}}}|page={{{demopage|}}}}}
|m
|t = <!-- ***** IF IN MODULE OR TEMPLATE NAMESPACE ***** -->{{ombox
| type = notice
| image = {{#switch: {{lc:{{{1|}}}}}
| pre-alpha | prealpha | pa | experimental = [[File:Ambox warning blue construction.svg|40x40px|link=|alt=]]
| alpha | a = [[File:Greek lc alpha icon.svg|class=skin-invert|26x26px|link=|alt=]]
| beta | b = [[File:Greek lc beta icon.svg|class=skin-invert|40x40px|link=|alt=]]
| release | r | general | g | stable | protected | protect | p | semiprotected | semiprotect | semi = [[File:Green check.svg|40x40px|link=|alt=]]
| broken | br | unstable = [[File:Red x.svg|40x40px|link=|alt=]]
| deprecated | d | defunct = [[File:Historical.svg|40x40px|link=|alt=]]
}}
| style =
| textstyle =
| text = {{#switch: {{lc:{{{1|}}}}}
| pre-alpha | prealpha | pa | experimental = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại là [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn phát triển tiền alpha|đang trong giai đoạn phát triển tiền alpha]]. Nó chưa hoàn thiện và có thể có hoặc không được phát triển một cách tích cực. Không nên sử dụng {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}} này trong các trang thuộc [[Wikipedia:Không gian tên bài viết|không gian tên bài viết]]. {{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} vẫn duy trì trong giai đoạn phát triển tiền alpha trừ khi tác giả của {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}} hoặc biên tập viên khác (nếu nó đã bị bỏ lại được một thời gian) nhận thấy cấu trúc cơ bản đó đã thật sự được hoàn thiện.
| alpha | a = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn alpha|alpha]]. Nó đã sẵn sàng cho việc sử dụng giới hạn và nhận phản hồi từ bên ngoài. Nó có thể được sử dụng trên một vài trang, nhưng cần được giám sát cẩn thận. Mọi đề xuất cho các tính năng mới hoặc điều chỉnh đầu vào và đầu ra của {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}} này đều được hoan nghênh.
| beta | b = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn beta|beta]]. Nó được đánh giá là sẵn sàng để sử dụng rộng rãi, nhưng vì nó vẫn còn khá là mới, nên vẫn cần phải được sử dụng một cách thận trọng để đảm bảo rằng kết quả đạt được như mong đợi.
| release | r | general | g | stable | protected | protect | p | semiprotected | semiprotect | semi = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại là [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} sẵn sàng sử dụng rộng rãi|đã sẵn sàng để sử dụng rộng rãi]]. Nó đã đạt đến mức độ hoàn thiện, được coi là khá ổn định và không có lỗi, và có thể được sử dụng bất kỳ chỗ nào nếu phù hợp. Nó có thể được nêu trên [[Wikipedia:Trang trợ giúp|các trang trợ giúp]] cũng như các tài liệu Wikipedia khác làm tùy chọn tìm hiểu cho người dùng mới. Để giảm tải tài nguyên máy chủ và tránh tạo đầu ra gây hại, mọi cải tiến nên được thực hiện thông qua việc [[Wikipedia:Chỗ thử và kiểm thử bản mẫu|kiểm thử tại chỗ thử]] thay vì sửa đổi "thử và sai" lặp đi lặp lại liên tục.
| broken | br | unstable = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} không ổn định|không ổn định]]. Nó thiếu các thư viện phụ thuộc, vấn đề về khả năng tương thích hoặc lỗi đầu ra khiến cho nó không thể sử dụng được. Các biên tập viên được khuyên nên [[Special:EditPage/{{FULLPAGENAME}}|cải thiện khả năng tương thích]] hoặc [[Wikipedia:Biểu quyết xóa trang (thể loại, bản mẫu và mô đun)|mở biểu quyết xóa {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}}]] nếu nó không thể được giải quyết.
| deprecated | d | defunct = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại là '''[[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} lỗi thời|lỗi thời]]''' và không còn hoạt động.{{#if:{{{replaced|}}}|{{space}}Biên tập viên nên sử dụng '''{{{replaced}}}''' để thay thế.}}{{#if:{{{message|}}}|{{space}}{{{message}}}}}
| #default = {{error|Trang sử dụng [[Bản mẫu:Xếp loại bản mẫu]] có xếp loại bản mẫu hoặc mô đun <u>không hợp lệ</u> trong tham số {{para|1}}.}}[[Thể loại:Trang sử dụng bản mẫu xếp loại bản mẫu với tham số không rõ|{{FULLPAGENAME}}]]
}}
}}<!-- Categorize.
-->{{#if:{{{demopage|}}}{{{demospace|}}}||
{{#switch: {{lc:{{SUBPAGENAME}}}}
| doc | sandbox =<!-- No category for /doc or /sandbox subpages -->
| {{#ifeq: {{{nocat|}}} | true
| <!-- No category if user sets nocat=true -->
| {{#switch: {{lc:{{{1|}}}}}
| pre-alpha | prealpha | pa | experimental = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn phát triển tiền alpha|{{PAGENAME}}]]
| alpha | a = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn alpha|{{PAGENAME}}]]
| beta | b = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn beta|{{PAGENAME}}]]
| release | r | general | g | stable | protected | p | semiprotected | semiprotect | semi = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} sẵn sàng sử dụng rộng rãi|{{PAGENAME}}]]
| deprecated | d | defunct = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} lỗi thời|{{PAGENAME}}]]
| broken | br | unstable = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} không ổn định|{{PAGENAME}}]]
}}
}}
}}
}}
| #default = <!-- ***** Error not in Template or Module namespaces ***** -->{{if preview|1={{error|Lỗi: {{tl|Xếp loại bản mẫu}} chỉ có thể được sử dụng trên các trang thuộc [[Wikipedia:Không gian tên bản mẫu|các không gian Bản mẫu:]] hoặc [[Wikipedia:Không gian tên mô đun|Mô đun:]].}}}}[[Thể loại:Trang có bản mẫu dùng sai không gian tên]]
}}<!-- End switch. -->|{{If preview|1={{error|Trang sử dụng [[Bản mẫu:Xếp loại bản mẫu]] với tham số xếp loại mô đun {{para|1}} <u>trống</u>.}}}}[[Thể loại:Trang sử dụng bản mẫu xếp loại bản mẫu với tham số không rõ|{{FULLPAGENAME}}]]<!--
-->}}<!-- End if. Display protection template if necessary, this will obviously show it for /doc page too since it uses {{FULLPAGENAME}}: -->{{#switch:{{Namespace detect|template=t|module=m|demospace={{{demospace|}}}}}
|t|m = {{#if:{{{suppress-pp|}}}
|
|{{#switch:{{#invoke:Effective protection level|edit|1={{{demopage|{{FULLPAGENAME}}}}}}}
|*|user = <!-- If not protected page, do nothing. -->
|#default = {{#ifeq:{{lc:{{SUBPAGENAME}}}}|doc
|<!-- {{#if:{{{2|}}}{{{doc-reason|}}}{{{3|}}}{{{doc-action|}}} --><!--
--><!-- | -->{{pp|{{{2|{{{doc-reason|}}}}}}|action={{{3|{{{doc-action|}}}}}}}}<!--
--><!-- }} -->
-->|{{pp|1={{{reason|{{{doc-reason|}}}}}}|action={{{action|{{{doc-action|}}}}}}|demolevel={{{demolevel|}}}}}<!--
-->}}<!--
-->}}<!--
-->}}
|#default = <!-- If not in template or module namespace, do nothing
-->}}<!--
End template, start tracking.
-->{{#invoke:Check for unknown parameters| check
| unknown = {{#if:{{{demopage|}}}{{{demospace|}}}||{{#switch:{{Namespace detect|template=t|module=m}}|m|t=[[Thể loại:Trang sử dụng bản mẫu xếp loại bản mẫu với tham số không rõ|_VALUE_{{FULLPAGENAME}}]]}}}}
| preview = Trang sử dụng [[Bản mẫu:Xếp loại bản mẫu]] với tham số không rõ "_VALUE_"
| ignoreblank=y | demospace | demopage | 1 | 2 | 3 | reason | action | doc-reason | doc-action | nocat | replaced | message | demolevel | suppress-pp | demopage
}}</includeonly><!-- End tracking. --><noinclude>
{{Xếp loại bản mẫu/sandbox|release|nocat=true|demospace=bản mẫu|demopage=bản mẫu:xếp loại bản mẫu|demolevel=edit}}
{{mbox|text=Bản mẫu trên dùng để demo.}}
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go in Wikidata. -->
</noinclude>
imdx0dy2ro3o3pt8y6m1stq6cssww9i
Bản mẫu:Xếp loại bản mẫu/doc
10
10593
63411
2026-10-01T03:42:37Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Documentation subpage}} {{hatnote|"[[Template:Module rating]]" redirects here. It was merged into this template.}} {{high-use}} {{template rating|general<noinclude>|suppress-pp=true</noinclude>}} {{template redirect|Module rating}} {{lua|Module:Check for unknown parameters|Module:Effective protection level}} <!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) --> == Usage == B…”
63411
wikitext
text/x-wiki
{{Documentation subpage}}
{{hatnote|"[[Template:Module rating]]" redirects here. It was merged into this template.}}
{{high-use}}
{{template rating|general<noinclude>|suppress-pp=true</noinclude>}}
{{template redirect|Module rating}}
{{lua|Module:Check for unknown parameters|Module:Effective protection level}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
== Usage ==
Basic usage:
<syntaxhighlight lang=wikitext>{{Template rating|rating}}</syntaxhighlight>
Without categories:
<syntaxhighlight lang=wikitext>{{Template rating|rating|nocat=true}}</syntaxhighlight>
Template automatically detects if in module or template namespace, and displays the applicable notice.
Also detects if template or module protected from editing, the template will automatically display a message regarding that too. The reason can optionally be specified, it must be written in full using the {{para|reason}} parameter. This must be a full message and not one word like the reasons on [[Template:Protection padlock#Reasons|Template:Protection padlock § Reasons]].
If the documentation subpage is also protected, {{tl|Protection padlock}} can be manually generated on it when it is transcluded by declaring {{para|doc-reason}} the same value as you would enter in {{para|1}} in {{tlx|Protection padlock}}, and {{para|doc-action}} the same as the parameter of the name which is the protection action—must be one of {{pval|edit}} (default; for normal protection), {{pval|move}} (for move-protection) or {{pval|autoreview}} (for pending changes): <syntaxhighlight lang=wikitext inline>{{Template rating|rating|reason for documentation protection|action=the restricted action on documentation like move or edit}}</syntaxhighlight><!-- protection level protected semiprotected -->
If {{tlc|Template rating}} is used outside the Template or Module namespace, an error message is displayed instead and will be categorized under {{clc|Thể loại:Trang có bản mẫu dùng sai không gian tên}}.
For ''templates'', the rating {{para|1}} can be:
* {{tlc|Template rating|pre-alpha}}
* {{tlc|Template rating|alpha}}
* {{tlc|Template rating|beta}}
* {{tlc|Template rating|release}}
* {{dc|{{tlc|Template rating|{{dc|protected}}}} – deprecated but still accepted and displays equivalent as release; previously showed another protection message that was redundant to the message automatically shown by [[Template:Template rating/protected]].}}
For ''modules'', the rating {{para|1}} can be:
* {{tlc|Template rating|pre-alpha}}
* {{tlc|Template rating|alpha}}
* {{tlc|Template rating|beta}}
* {{tlc|Template rating|release}}
* {{tlc|Template rating|broken}}
* {{tlc|Template rating|deprecated}}
All parameter values are ''case-insensitive''.
Template will not autocategorize if {{para|nocat}} set to {{pval|true}}.
== Examples ==
{{Template rating{{\sandbox}}|pre-alpha|suppress-pp=true|nocat=true}}
{{Template rating{{\sandbox}}|alpha|suppress-pp=true|nocat=true}}
{{Template rating{{\sandbox}}|beta|suppress-pp=true|nocat=true}}
{{Template rating{{\sandbox}}|release|suppress-pp=true|nocat=true}}
{{Template rating{{\sandbox}}|broken|suppress-pp=true|nocat=true}}
{{Template rating{{\sandbox}}|deprecated|suppress-pp=true|nocat=true}}
==== Module with protection ====
The protection is automatically detected, but this is what it would look like on [[Module:String]] for example which is fully-protected.
<syntaxhighlight lang=wikitext>
{{Template rating|release|reason=template|action=edit}}
</syntaxhighlight>
{{Template rating{{\sandbox}}|release|demospace=mô đun|demopage=Mô đun:String|demolevel=edit|suppress-pp=true|nocat=true}}
== TemplateData==
<templatedata>
{
"description": "Used to mark the status of a template as one of pre-alpha, alpha, beta, release, or protected",
"params": {
"1": {
"label": "Rating",
"description": "The rating level of the template or module.",
"type": "string",
"required": true,
"suggestedvalues": [
"pre-alpha",
"alpha",
"beta",
"release",
"broken",
"deprecated"
]
},
"nocat": {
"label": "Nocat",
"description": "Suppress categories.",
"type": "boolean",
"default": "false",
"example": "true"
},
"demospace": {},
"replaced": {
"label": "Replacement (if deprecated)",
"description": "If module is set to deprecated, then give wikilink of module that replace it if one exists.",
"example": "[[Module:Example]]",
"type": "wiki-page-name"
},
"message": {
"label": "Message (if deprecated)",
"description": "If module is set to deprecated, then give optional message to append.",
"type": "content"
},
"demopage": {},
"suppress-pp": {
"label": "Suppress protection template",
"description": "Suppress the protection template with any value.",
"example": "true",
"type": "string"
},
"reason": {
"label": "Reason for protection (if protected)",
"description": "Reason for protection; may be one of: blp, dispute, dmca, mainpage, office, reset, sock, template, usertalk, vandalism",
"type": "string",
"suggestedvalues": [
"vandalism",
"template",
"dispute",
"dmca",
"mainpage",
"reset"
]
},
"doc-reason": {
"aliases": [
"2"
],
"label": "Reason for protection of /doc subpage (if protected)",
"description": "Reason for protection of doc subpage; may be one of: blp, dispute, dmca, mainpage, office, reset, sock, template, usertalk, vandalism",
"type": "string",
"suggestedvalues": [
"vandalism",
"template",
"dispute",
"dmca",
"mainpage",
"reset"
]
},
"action": {
"label": "Action restricted (if protected)",
"description": "Action which is restricted. Must be one of \"edit\" (for normal protection), \"move\" (for move-protection) or \"autoreview\" (for pending changes).",
"type": "string",
"suggestedvalues": [
"edit",
"move",
"autoreview"
]
},
"doc-action": {
"aliases": [
"3"
],
"label": "Action restricted of /doc subpage (if protected)",
"description": "Action which is restricted. Must be one of \"edit\" (for normal protection), \"move\" (for move-protection) or \"autoreview\" (for pending changes).",
"suggestedvalues": [
"edit",
"move",
"autoreview"
]
},
"demolevel": {}
},
"paramOrder": [
"1",
"nocat",
"replaced",
"message",
"suppress-pp",
"reason",
"doc-reason",
"action",
"doc-action",
"demospace",
"demopage",
"demolevel"
],
"format": "block"
}
</templatedata>
== Tracking categories ==
It autocategorizes into (unless {{para|nocat}} set to {{pval|true}}):
* {{clc|Bản mẫu trong giai đoạn phát triển tiền alpha}}
* {{clc|Bản mẫu trong giai đoạn alpha}}
* {{clc|Bản mẫu trong giai đoạn beta}}
* {{clc|Thể loại:Mô đun trong giai đoạn phát triển tiền alpha}}
* {{clc|Thể loại:Mô đun trong giai đoạn alpha}}
* {{clc|Thể loại:Mô đun trong giai đoạn beta}}
* {{clc|Thể loại:Mô đun sẵn sàng sử dụng rộng rãi}}
These categories are suppressed on pages ending with /doc and /sandbox. To suppress categories on all pages, you can use {{para|nocat|true}}.
Error tracking:
* {{clc|Thể loại:Trang sử dụng bản mẫu xếp loại bản mẫu với tham số không rõ}}
* {{clc|Thể loại:Trang có bản mẫu dùng sai không gian tên}}
<includeonly>{{sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Thể loại:Bản mẫu không gian tên Bản mẫu|Rating]]
[[Thể loại:Bản mẫu thêm một thể loại theo dõi]]
}}</includeonly>
kfmoao9q613gt3xi0jpuoasbx5si4x8
Bản mẫu:Xếp loại bản mẫu/sandbox
10
10594
63412
2026-10-01T03:43:35Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{#if:{{{1|}}}<!-- Escape empty required first unnamed parameter -->|{{#switch:{{Namespace detect|template=t|module=m|demospace={{{demospace|}}}|page={{{demopage|}}}}} |m |t = <!-- ***** IF IN MODULE OR TEMPLATE NAMESPACE ***** -->{{ombox | type = notice | image = {{#switch: {{lc:{{{1|}}}}} | pre-alpha | prealpha | pa | experimental = [[File:Ambox warning blue construction.svg|40x40px|link=|alt=]] | alpha | a…”
63412
wikitext
text/x-wiki
<includeonly>{{#if:{{{1|}}}<!-- Escape empty required first unnamed parameter -->|{{#switch:{{Namespace detect|template=t|module=m|demospace={{{demospace|}}}|page={{{demopage|}}}}}
|m
|t = <!-- ***** IF IN MODULE OR TEMPLATE NAMESPACE ***** -->{{ombox
| type = notice
| image = {{#switch: {{lc:{{{1|}}}}}
| pre-alpha | prealpha | pa | experimental = [[File:Ambox warning blue construction.svg|40x40px|link=|alt=]]
| alpha | a = [[File:Greek lc alpha icon.svg|class=skin-invert|26x26px|link=|alt=]]
| beta | b = [[File:Greek lc beta icon.svg|class=skin-invert|40x40px|link=|alt=]]
| release | r | general | g | stable | protected | protect | p | semiprotected | semiprotect | semi = [[File:Green check.svg|40x40px|link=|alt=]]
| broken | br | unstable = [[File:Red x.svg|40x40px|link=|alt=]]
| deprecated | d | defunct = [[File:Historical.svg|40x40px|link=|alt=]]
}}
| style =
| textstyle =
| text = {{#switch: {{lc:{{{1|}}}}}
| pre-alpha | prealpha | pa | experimental = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại là [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn phát triển tiền alpha|đang trong giai đoạn phát triển tiền alpha]]. Nó chưa hoàn thiện và có thể có hoặc không được phát triển một cách tích cực. Không nên sử dụng {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}} này trong các trang thuộc [[Wikipedia:Không gian tên bài viết|không gian tên bài viết]]. {{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} vẫn duy trì trong giai đoạn phát triển tiền alpha trừ khi tác giả của {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}} hoặc biên tập viên khác (nếu nó đã bị bỏ lại được một thời gian) nhận thấy cấu trúc cơ bản đó đã thật sự được hoàn thiện.
| alpha | a = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn|alpha]]. Nó đã sẵn sàng cho việc sử dụng giới hạn và nhận phản hồi từ bên ngoài. Nó có thể được sử dụng trên một vài trang, nhưng cần được giám sát cẩn thận. Mọi đề xuất cho các tính năng mới hoặc điều chỉnh đầu vào và đầu ra của {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}} này đều được hoan nghênh.
| beta | b = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn beta|beta]]. Nó được đánh giá là sẵn sàng để sử dụng rộng rãi, nhưng vì nó vẫn còn khá là mới, nên vẫn cần phải được sử dụng một cách thận trọng để đảm bảo rằng kết quả đạt được như mong đợi.
| release | r | general | g | stable | protected | protect | p | semiprotected | semiprotect | semi = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại là [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} sẵn sàng sử dụng rộng rãi|đã sẵn sàng để sử dụng rộng rãi]]. Nó đã đạt đến mức độ hoàn thiện, được coi là khá ổn định và không có lỗi, và có thể được sử dụng bất kỳ chỗ nào nếu phù hợp. Nó có thể được nêu trên [[Wikipedia:Trang trợ giúp|các trang trợ giúp]] cũng như các tài liệu Wikipedia khác làm tùy chọn tìm hiểu cho người dùng mới. Để giảm tải tài nguyên máy chủ và tránh tạo đầu ra gây hại, mọi cải tiến nên được thực hiện thông qua việc [[Wikipedia:Chỗ thử và kiểm thử bản mẫu|kiểm thử tại chỗ thử]] thay vì sửa đổi "thử và sai" lặp đi lặp lại liên tục.
| broken | br | unstable = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại [[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} không ổn định|không ổn định]]. Nó thiếu các thư viện phụ thuộc, vấn đề về khả năng tương thích hoặc lỗi đầu ra khiến cho nó không thể sử dụng được. Các biên tập viên được khuyên nên [[Special:EditPage/{{FULLPAGENAME}}|cải thiện khả năng tương thích]] hoặc [[Wikipedia:Biểu quyết xóa trang (thể loại, bản mẫu và mô đun)|mở biểu quyết xóa {{lc:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}}}]] nếu nó không thể được giải quyết.
| deprecated | d | defunct = [[Wikipedia:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}|{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}}]] này được xếp loại là '''[[:Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} lỗi thời|lỗi thời]]''' và không còn hoạt động.{{#if:{{{replaced|}}}|{{space}}Biên tập viên nên sử dụng '''{{{replaced}}}''' để thay thế.}}{{#if:{{{message|}}}|{{space}}{{{message}}}}}
| #default = {{error|Trang sử dụng [[Bản mẫu:Xếp loại bản mẫu]] có xếp loại bản mẫu hoặc mô đun <u>không hợp lệ</u> trong tham số {{para|1}}.}}[[Thể loại:Trang sử dụng bản mẫu xếp hạng bản mẫu với tham số không rõ|{{FULLPAGENAME}}]]
}}
}}<!-- Categorize.
-->{{#if:{{{demopage|}}}{{{demospace|}}}||
{{#switch: {{lc:{{SUBPAGENAME}}}}
| doc | sandbox =<!-- No category for /doc or /sandbox subpages -->
| {{#ifeq: {{{nocat|}}} | true
| <!-- No category if user sets nocat=true -->
| {{#switch: {{lc:{{{1|}}}}}
| pre-alpha | prealpha | pa | experimental = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn phát triển tiền alpha|{{PAGENAME}}]]
| alpha | a = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn alpha|{{PAGENAME}}]]
| beta | b = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} trong giai đoạn beta|{{PAGENAME}}]]
| release | r | general | g | stable | protected | p | semiprotected | semiprotect | semi = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} sẵn sàng sử dụng rộng rãi|{{PAGENAME}}]]
| deprecated | d | defunct = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} lỗi thời|{{PAGENAME}}]]
| broken | br | unstable = [[Thể loại:{{NAMESPACE:{{{demopage|{{FULLPAGENAME}}}}}}} không ổn định|{{PAGENAME}}]]
}}
}}
}}
}}
| #default = <!-- ***** Error not in Template or Module namespaces ***** -->{{if preview|1={{error|Lỗi: {{tl|Xếp loại bản mẫu}} chỉ có thể được sử dụng trên các trang thuộc [[Wikipedia:Không gian tên bản mẫu|các không gian Bản mẫu:]] hoặc [[Wikipedia:Không gian tên mô đun|Mô đun:]].}}}}[[Thể loại:Trang có bản mẫu dùng sai không gian tên]]
}}<!-- End switch. -->|{{If preview|1={{error|Trang sử dụng [[Bản mẫu:Xếp loại bản mẫu]] với tham số xếp loại mô đun {{para|1}} <u>trống</u>.}}}}[[Thể loại:Trang sử dụng bản mẫu xếp hạng bản mẫu với tham số không rõ|{{FULLPAGENAME}}]]<!--
-->}}<!-- End if. Display protection template if necessary, this will obviously show it for /doc page too since it uses {{FULLPAGENAME}}: -->{{#switch:{{Namespace detect|template=t|module=m|demospace={{{demospace|}}}}}
|t|m = {{#if:{{{suppress-pp|}}}
|
|{{#switch:{{#invoke:Effective protection level|edit|1={{{demopage|{{FULLPAGENAME}}}}}}}
|*|user = <!-- If not protected page, do nothing. -->
|#default = {{#ifeq:{{lc:{{SUBPAGENAME}}}}|doc
|<!-- {{#if:{{{2|}}}{{{doc-reason|}}}{{{3|}}}{{{doc-action|}}} --><!--
--><!-- | -->{{pp|{{{2|{{{doc-reason|}}}}}}|action={{{3|{{{doc-action|}}}}}}}}<!--
--><!-- }} -->
-->|{{pp|1={{{reason|{{{doc-reason|}}}}}}|action={{{action|{{{doc-action|}}}}}}|demolevel={{{demolevel|}}}}}<!--
-->}}<!--
-->}}<!--
-->}}
|#default = <!-- If not in template or module namespace, do nothing
-->}}<!--
End template, start tracking.
-->{{#invoke:Check for unknown parameters| check
| unknown = {{#if:{{{demopage|}}}{{{demospace|}}}||{{#switch:{{Namespace detect|template=t|module=m}}|m|t=[[Thể loại:Trang sử dụng bản mẫu xếp hạng bản mẫu với tham số không rõ|_VALUE_{{FULLPAGENAME}}]]}}}}
| preview = Trang sử dụng [[Bản mẫu:Xếp loại bản mẫu]] với tham số không rõ "_VALUE_"
| ignoreblank=y | demospace | demopage | 1 | 2 | 3 | reason | action | doc-reason | doc-action | nocat | replaced | message | demolevel | suppress-pp | demopage
}}</includeonly><!-- End tracking. --><noinclude>
{{Xếp loại bản mẫu/sandbox|release|nocat=true|demospace=bản mẫu|demopage=bản mẫu:xếp loại bản mẫu|demolevel=edit}}
{{mbox|text=Bản mẫu trên dùng để demo.}}
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go in Wikidata. -->
</noinclude>
98iei42xe5ioi4gw9g3ywmo2svebeej
Bản mẫu:If preview
10
10595
63413
2026-10-01T03:44:20Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{#gọi:If preview|pmain}}<noinclude> {{tài liệu}} </noinclude>”
63413
wikitext
text/x-wiki
{{#gọi:If preview|pmain}}<noinclude>
{{tài liệu}}
</noinclude>
mqi8sbgp8slquijyqpq8njw8kwv79un
Bản mẫu:If preview/doc
10
10596
63414
2026-10-01T03:44:32Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Lua|Mô đun:If preview}} <!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) --> This is a template that helps other templates determine if they are being previewed or not, and do or display different things accordingly == Cách sử dụng == <code><nowiki>{{If preview|value if being previewed|value if not being previewed}…”
63414
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Lua|Mô đun:If preview}}
<!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) -->
This is a template that helps other templates determine if they are being previewed or not, and do or display different things accordingly
== Cách sử dụng ==
<code><nowiki>{{If preview|value if being previewed|value if not being previewed}}</nowiki></code>
The first parameter is returned if the page is being previewed, otherwise the second parameter will be returned. Either parameter may be empty.
==Các ví dụ==
Preview this page to see the effect of previewing on the Example column.
{|class=wikitable
!Mã
!Giá trị khi được xem trước
!Giá trị khi được lưu
!Ví dụ
|-
|<code><nowiki>{{If preview|Có|Không}}</nowiki></code>
|Có
|Không
|{{If preview|Có|Không}}
|-
|<code><nowiki>{{If preview|Đỏ}}</nowiki></code>
|Đỏ
|
|{{If preview|Đỏ}}
|-
|<code><nowiki>{{If preview||Xanh}}</nowiki></code>
|
|Xanh
|{{If preview||Xanh}}
|}
<includeonly>{{sandbox other||
<!-- Xin hãy thêm thể loại vào phía dưới dòng này, để bổ sung liên kết liên wiki vào Wikidata -->
[[Thể loại:Bản mẫu If-then-else]]
}}</includeonly>
5mxsvmk29m5gi1syvujnr32bl9w7pba
Mô đun:If preview
828
10597
63415
2026-10-01T03:45:08Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “local p = {} local getArgs = require("Mô đun:Arguments").getArgs local yn = require("Mô đun:Yesno") local cfg = mw.loadData('Mô đun:If preview/configuration') --[[ main This function returns either the first argument or second argument passed to this module, depending on whether the page is being previewed. ]] function p.main(frame) local args = getArgs(frame) if cfg.preview then return args[1] or '' else return args[2] or '' end end -…”
63415
Scribunto
text/plain
local p = {}
local getArgs = require("Mô đun:Arguments").getArgs
local yn = require("Mô đun:Yesno")
local cfg = mw.loadData('Mô đun:If preview/configuration')
--[[
main
This function returns either the first argument or second argument passed to
this module, depending on whether the page is being previewed.
]]
function p.main(frame)
local args = getArgs(frame)
if cfg.preview then
return args[1] or ''
else
return args[2] or ''
end
end
--[[
pmain
This function returns either the first argument or second argument passed to
this module's parent (i.e. template using this module), depending on whether it
is being previewed.
]]
function p.pmain(frame)
return p.main(frame:getParent())
end
local function warning_text(warning)
return mw.ustring.format(
cfg.warning_infrastructure,
cfg.templatestyles,
warning
)
end
function p._warning(args)
local warning = args[1] and args[1]:match('^%s*(.-)%s*$') or ''
if warning == '' then
return warning_text(cfg.missing_warning)
end
if not cfg.preview then return '' end
if yn(args['consolewarning']) then mw.addWarning(args[1] or cfg.missing_warning) end
return warning_text(warning)
end
--[[
warning
This function returns a "preview warning", which is the first argument marked
up with HTML and some supporting text, depending on whether the page is being previewed.
]]
-- function p.warning(frame)
-- mw.addWarning(frame.args[1] or cfg.missing_warning)
-- return p._warning(frame.args)
-- end
--[[
warning, but for pass-through templates like {{preview warning}}
]]
function p.pwarning(frame)
local args = getArgs(frame)
return p._warning(args)
end
--[[
Does both mw.addWarning and preview warning
]]
function p.warn(text)
if text == nil or text == "" then return "" end
mw.addWarning(text)
return p._warning({text})
end
--[[
Console warning
]]
function p.consoleWarning(frame)
local args = getArgs(frame)
mw.addWarning(args[1] or cfg.missing_warning)
return ''
end
return p
ixw8e54oc5207ovz73g8pnqdyndnpaa
Bản mẫu:Module rating
10
10598
63416
2026-10-01T03:46:13Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Xếp loại bản mẫu]]
63416
wikitext
text/x-wiki
#đổi [[Bản mẫu:Xếp loại bản mẫu]]
bkq0b73g3ap1150o31rfzxqyf2tveo6
Mô đun:If preview/configuration
828
10599
63417
2026-10-01T03:46:48Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “--[[ We perform the actual check for whether this is a preview here since preprocessing is relatively expensive. ]] local frame = mw.getCurrentFrame() local function is_preview() local revision_id = frame:preprocess('{{REVISIONID}}') -- {{REVISIONID}} is usually the empty string when previewed. -- I don't know why we're checking for nil but hey, maybe someday things -- would have broken return revision_id == nil or revision_id == '' end local fun…”
63417
Scribunto
text/plain
--[[
We perform the actual check for whether this is a preview here since
preprocessing is relatively expensive.
]]
local frame = mw.getCurrentFrame()
local function is_preview()
local revision_id = frame:preprocess('{{REVISIONID}}')
-- {{REVISIONID}} is usually the empty string when previewed.
-- I don't know why we're checking for nil but hey, maybe someday things
-- would have broken
return revision_id == nil or revision_id == ''
end
local function templatestyles()
return frame:extensionTag{
name = 'templatestyles', args = { src = 'Module:If preview/styles.css' }
}
end
return {
preview = is_preview(),
templatestyles = templatestyles(),
warning_infrastructure = '%s<div class="preview-warning"><strong>Cảnh báo xem trước:</strong> %s</div>',
missing_warning = 'The template has no warning text. Please add a warning.'
}
0jjhgs9pt4luptc29h14tw7gypta0j9
Mô đun:InfoboxImage/data
828
10600
63418
2026-10-01T03:47:43Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “ local placeholderList = { "Blue - Replace this image female.svg", "Blue - Replace this image male.svg", "Flag of None (square).svg", "Flag of None.svg", "Flag of.svg", "Green - Replace this image female.svg", "Green - Replace this image male.svg", "Image is needed female.svg", "Image is needed male.svg", "Location map of None.svg", "Male no free image yet.png", "Missing flag.png", "No flag.svg", "…”
63418
Scribunto
text/plain
local placeholderList = {
"Blue - Replace this image female.svg",
"Blue - Replace this image male.svg",
"Flag of None (square).svg",
"Flag of None.svg",
"Flag of.svg",
"Green - Replace this image female.svg",
"Green - Replace this image male.svg",
"Image is needed female.svg",
"Image is needed male.svg",
"Location map of None.svg",
"Male no free image yet.png",
"Missing flag.png",
"No flag.svg",
"No free portrait.svg",
"No portrait (female).svg",
"No portrait (male).svg",
"Red - Replace this image female.svg",
"Red - Replace this image male.svg",
"Replace this image female.svg",
"Replace this image male (blue).svg",
"Replace this image male.svg",
"Silver - Replace this image female.svg",
"Silver - Replace this image male.svg",
"Replace this image.svg",
"Cricket no pic.png",
"CarersLogo.gif",
"Diagram Needed.svg",
"Example.jpg",
"Image placeholder.png",
"No male portrait.svg",
"Nocover-upload.png",
"NoDVDcover copy.png",
"Noribbon.svg",
"No portrait-BFD-test.svg",
"Placeholder barnstar ribbon.png",
"Project Trains no image.png",
"Image-request.png",
"Sin bandera.svg",
"Sin escudo.svg",
"Replace this image - temple.png",
"Replace this image butterfly.png",
"Replace this image.svg",
"Replace this image1.svg",
"Resolution angle.png",
"Image-No portrait-text-BFD-test.svg",
"Insert image here.svg",
"No image available.png",
"NO IMAGE YET square.png",
"NO IMAGE YET.png",
"No Photo Available.svg",
"No Screenshot.svg",
"No-image-available.jpg",
"Null.png",
"PictureNeeded.gif",
"Place holder.jpg",
"Unbenannt.JPG",
"UploadACopyrightFreeImage.svg",
"UploadAnImage.gif",
"UploadAnImage.svg",
"UploadAnImageShort.svg",
"CarersLogo.gif",
"Diagram Needed.svg",
"No male portrait.svg",
"NoDVDcover copy.png",
"Placeholder barnstar ribbon.png",
"Project Trains no image.png",
"Image-request.png",
"Noimage.gif",
}
local placeholder_image = {}
for _, val in ipairs(placeholderList) do
placeholder_image[val] = true
end
local categories = {
url_image_links = "[[Thể loại:Trang sử dụng infobox với URL trong tham số image]]",
thumbnail_images = "[[Thể loại:Trang có hộp thông tin có hình nhỏ]]",
}
return { placeholder_image = placeholder_image, categories = categories }
rwwnr32couq01274xjy4xbhe6x1l2qb
Bản mẫu:Category link with count
10
10601
63419
2026-10-01T03:49:08Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “[[:Thể loại:{{#ifeq:{{str left|{{{1}}}|9}}|Thể loại:|{{str right|{{{1}}}|9}}|{{{1}}}}}|<!-- -->{{#if:{{{name|}}}|{{{name}}}|Thể loại:{{#ifeq:{{str left|{{{1}}}|9}}|Thể loại:|{{str right|{{{1}}}|9}}|{{{1}}}}}}}<!-- -->]] ({{PAGESINCATEGORY:{{#ifeq:{{str left|{{{1}}}|9}}|Thể loại:|{{str right|{{{1}}}|9}}|{{{1}}}}}|{{{2|all}}}}})<noinclude> {{tài liệu}} </noinclude>”
63419
wikitext
text/x-wiki
[[:Thể loại:{{#ifeq:{{str left|{{{1}}}|9}}|Thể loại:|{{str right|{{{1}}}|9}}|{{{1}}}}}|<!--
-->{{#if:{{{name|}}}|{{{name}}}|Thể loại:{{#ifeq:{{str left|{{{1}}}|9}}|Thể loại:|{{str right|{{{1}}}|9}}|{{{1}}}}}}}<!--
-->]] ({{PAGESINCATEGORY:{{#ifeq:{{str left|{{{1}}}|9}}|Thể loại:|{{str right|{{{1}}}|9}}|{{{1}}}}}|{{{2|all}}}}})<noinclude>
{{tài liệu}}
</noinclude>
64g0qif8jozr3z840m1r8fkphn3cddg
Bản mẫu:Category link with count/doc
10
10602
63420
2026-10-01T03:49:32Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) --> {{viết tắt bản mẫu|clc|CLC}} '''Bản mẫu:Category link with count''' tạo ra một liên kết đến một thể loại theo sau là số lượng trang trong thể loại. Nó sử dụng Trợ giúp:Từ ma thuật#Hàm phân tích cú pháp|hàm phân t…”
63420
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- Xin vui lòng đặt thể loại nơi được chỉ ra ở cuối trang này và liên kết liên wiki tại Wikidata (xem [[Wikipedia:Wikidata]]) -->
{{viết tắt bản mẫu|clc|CLC}}
'''Bản mẫu:Category link with count''' tạo ra một liên kết đến một thể loại theo sau là số lượng trang trong thể loại. Nó sử dụng [[Trợ giúp:Từ ma thuật#Hàm phân tích cú pháp|hàm phân tích cú pháp]] [[mw:Help:Magic words#PAGESINCATEGORY|PAGESINCATEGORY]].
== Cách sử dụng ==
; Một tham số
: {{tlc|Category link with count|<var>THỂ LOẠI</var>}}
: {{tlc|clc|<var>THỂ LOẠI</var>}}
: {{tlc|CLC|<var>THỂ LOẠI</var>}}
; Hai tham số
: {{tlc|Category link with count|<var>THỂ LOẠI</var>|<var>LOẠI</var>}}
: {{tlc|clc|<var>THỂ LOẠI</var>|<var>LOẠI</var>}}
: {{tlc|CLC|<var>THỂ LOẠI</var>|<var>LOẠI</var>}}
== Các ví dụ ==
Sử dụng viết tắt bản mẫu {{tlx|clc}}:
=== Một tham số ===
; không có "Thể loại:"
: {{tlc|clc|Côte-d'Or}} → {{clc|Côte-d'Or}}
; có "Thể loại:"
: {{tlc|clc|Thể loại:Côte-d'Or}} → {{clc|Thể loại:Côte-d'Or}}
=== Hai tham số ===
; không có "Thể loại:"
: {{tlc|clc|Côte-d'Or|trang}} → {{clc|Côte-d'Or|trang}}
: {{tlc|clc|Côte-d'Or|thể loại con}} → {{clc|Côte-d'Or|thể loại con}}
: {{tlc|clc|Côte-d'Or|tập tin}} → {{clc|Côte-d'Or|tập tin}}
; có "Thể loại:"
: {{tlc|clc|Thể loại:Côte-d'Or|trang}} → {{clc|Thể loại:Côte-d'Or|trang}}
: {{tlc|clc|Thể loại:Côte-d'Or|thể loại con}} → {{clc|Thể loại:Côte-d'Or|thể loại con}}
: {{tlc|clc|Thể loại:Côte-d'Or|tập tin}} → {{clc|Thể loại:Côte-d'Or|tập tin}}
==Xem thêm==
{{Internal category-link templates}}
<includeonly>{{sandbox other||
<!-- Xin hãy thêm thể loại vào phía dưới dòng này, để bổ sung liên kết liên wiki vào Wikidata -->
[[Thể loại:Bản mẫu liên kết thể loại trong]]
}}</includeonly>
iuiie4b9a8kk9eap4hgu4uzsmfrpuix
Bản mẫu:Clc
10
10603
63421
2026-10-01T03:50:12Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Category link with count]]
63421
wikitext
text/x-wiki
#đổi [[Bản mẫu:Category link with count]]
6wu2qhuoxq6dcx0hwy2siird1zhpgao
Bản mẫu:Mono/styles.css
10
10604
63422
2026-10-01T03:51:42Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “/* */ .monospaced { /* "monospace, monospace" per [[WP:MONO]] */ font-family: monospace, monospace; }”
63422
sanitized-css
text/css
/* */
.monospaced {
/* "monospace, monospace" per [[WP:MONO]] */
font-family: monospace, monospace;
}
lfmu4s75rwv9ylanc1vuxidnmhzz990
Bản mẫu:Hết phần ẩn
10
10605
63423
2026-10-01T03:52:59Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<noinclude>{{in5}}''Bản mẫu {{noredirect|Bản mẫu:End hidden|End hidden}}, {{noredirect|Bản mẫu:Hidden bottom|Hidden bottom}}, {{noredirect|Bản mẫu:Hidden end|Hidden end}} và {{noredirect|Bản mẫu:End hidden section|End hidden section}} đổi hướng đến đây.''</noinclude><!-- --></div></div><!-- --><noinclude>{{Tài liệu|Bản mẫu:Hidden begin/doc}}</noinclude>”
63423
wikitext
text/x-wiki
<noinclude>{{in5}}''Bản mẫu {{noredirect|Bản mẫu:End hidden|End hidden}}, {{noredirect|Bản mẫu:Hidden bottom|Hidden bottom}}, {{noredirect|Bản mẫu:Hidden end|Hidden end}} và {{noredirect|Bản mẫu:End hidden section|End hidden section}} đổi hướng đến đây.''</noinclude><!--
--></div></div><!--
--><noinclude>{{Tài liệu|Bản mẫu:Hidden begin/doc}}</noinclude>
bnabq3t34lsnosiwghvdwylfcm8pozz
Bản mẫu:In5
10
10606
63424
2026-10-01T03:53:53Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly>{{{{{|safesubst:}}}#gọi:in5|in5|1={{{1|}}}}}</includeonly><noinclude> {{Tài liệu}} </noinclude>”
63424
wikitext
text/x-wiki
<includeonly>{{{{{|safesubst:}}}#gọi:in5|in5|1={{{1|}}}}}</includeonly><noinclude>
{{Tài liệu}}
</noinclude>
jhu29w0tpk2m7jt4bf99025pu94b7eu
Bản mẫu:In5/doc
10
10607
63425
2026-10-01T03:54:20Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Lua|Mô đun:In5}} <!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. --> The indenter '''Bản mẫu:in5''' indents text by 5 spaces or the count specified by<br>parameter 1 (range: 1 to 50 spaces).<br /> {{in5}}Cách sử dụng: {{tlx|in5}} {{in5|11}} <--indents by 5 spaces<br /> {{in5}}Cách sử dụng: {{tlx|in5|8}} {{in5|7}} <--indents by 8 spaces<br /> {{in5}}Cách sử dụng: {{tlx|…”
63425
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Lua|Mô đun:In5}}
<!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. -->
The indenter '''Bản mẫu:in5''' indents text by 5 spaces or
the count specified by<br>parameter 1 (range: 1 to 50 spaces).<br />
{{in5}}Cách sử dụng: {{tlx|in5}} {{in5|11}} <--indents by 5 spaces<br />
{{in5}}Cách sử dụng: {{tlx|in5|8}} {{in5|7}} <--indents by 8 spaces<br />
{{in5}}Cách sử dụng: {{tlx|in5|47}} {{in5}} <--indents by 47 spaces
Spaces outside the double braces will add an extra space on either
side,<br />such as the 12 spaces inserted by {{tlx|in5|10}}.
It does not insert a newline (line break). To use on a series of lines, add <code><br /></code> at the end of the line before (each) {{tnull|in5}}. You can also use a blank line before the {{tnull|in5}}, which will introduce a paragraph break.
==Các ví dụ==
The following are examples showing larger amounts of spacing:<br />
{{in5}}Ví dụ 1: <code><nowiki>xx{{in5|10}}yy{{in5|10}}</nowiki>zz</code> cho ra: xx{{in5|10}}yy{{in5|10}}zz<br />
{{in5}}Ví dụ 2: <code><nowiki>xx{{in5|10}}yy{{in5|15}}</nowiki>zz</code> cho ra: xx{{in5|10}}yy{{in5|15}}zz<br />
{{in5}}Ví dụ 3: <code><nowiki>aa{{in5|20}}bb{{in5|20}}</nowiki>cc</code> cho ra: aa{{in5|20}}bb{{in5|20}}cc<br />
{{in5}}Ví dụ 4: <code><nowiki>"32.0{{in5|7}}"</nowiki></code> cho ra: "32.0{{in5|7}}"
Example 4 shows the ability to put trailing spaces, such as spaces after a number in a [[Trợ giúp:Tạo bảng|wikitable]] column (coded as: </code>| 32.0{{tnull|in5}} </code>). Typical numbers (with <code>align=right</code>), in a table column, often appear crowded at the right-hand side, so appending {{tnull|in5}} can improve readability, in tables with lines between columns.
==Comparison with letter-spacing==
To insert spacing between {{em|after each character}} of any text, then <code><span style="letter-spacing:<var>value unit</var>"></code> can be used. For example, with <code><nowiki><span style="letter-spacing:1.2em"></nowiki></code>, spanning the text "example" (not including the quotation marks), it would look like: "<span style="letter-spacing:1.2em">example</span>". (Note that the spacing applies to the last character; the intended result might actually be to span the characters ''exampl'' only: "<span style="letter-spacing:1.2em">exampl</span>e".) The spacing <var>value</var> may express any number from 0 on; also fractions like <kbd>.45</kbd> are possible, and the <var>unit</var> may be <code>em</code> or any other standard HTML/CSS measurement unit (<code>pt</code>, <code>px</code>, <code>cm</code>, <code>mm</code>, <code>in</code>).
==Universal template==
This template is intended as a universal template, with the same name on all Wikimedia sites. The name "in5" with the digit "5" is unlikely to conflict with other-language Wikipedias. (Care must be taken not to name a universal template with a name that would be an awkward or peculiar word in the other languages. However, in some cases, a universal template might need a different name in a few conflicting languages.)
== Xem thêm ==
* [[Mô đun:In5]], the [[Lua (programming language)|Lua]] module implementing this template.
* {{tl|spaces}}, another text spacing template.
* {{tl|indent}}, which forces a newline break before indenting, but may produce inexact indentation depths
* {{tl|block indent}}, to indent an entire block of content, similar to a [[Bản mẫu:Quote|block quotation]] (uses {{tag|div|o}} and CSS margins)
<includeonly>{{#switch:{{SUBPAGENAME}}|sandbox|thử|chỗ thử |
<!-- THỂ LOẠI TẠI ĐÂY, CẢM ƠN. -->
[[Thể loại:Bản mẫu khoảng cách nội tuyến]]
}}</includeonly>
cic4c7uojb4xe5kpy8swcs3qu31l5zd
Mô đun:In5
828
10608
63426
2026-10-01T03:54:34Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “-- Mô đun này thực hiện {{in5}}. local p = {} function p.in5(frame) local indent = frame.args[1] -- Trim whitespace and convert to number. Default to 5 if not present, -- as per the template title. indent = tonumber( mw.text.trim(indent) ) or 5 -- Round down to nearest integer. Decimal values produce funky results -- from the original template, but there's no need for us to replicate that. indent = math.floor( indent…”
63426
Scribunto
text/plain
-- Mô đun này thực hiện {{in5}}.
local p = {}
function p.in5(frame)
local indent = frame.args[1]
-- Trim whitespace and convert to number. Default to 5 if not present,
-- as per the template title.
indent = tonumber( mw.text.trim(indent) ) or 5
-- Round down to nearest integer. Decimal values produce funky results
-- from the original template, but there's no need for us to replicate that.
indent = math.floor( indent )
-- Don't output anything for zero or less. Again, there was some funky output
-- here for negatives, but now we're in Lua we should use sane defaults.
if indent <= 0 then
return
end
local base = ' '
local modulo = ' '
--[[
Indent values and the corresponding values for base and modulo:
indent base modulo
1 0 1
2 0 2
3 1 1
4 1 2
5 2 1
6 2 2
7 3 1
8 3 2
9 4 1
10 4 2
]]
local baseNum = math.floor( (indent - 1) / 2 )
local modNum = math.fmod( indent - 1 , 2 ) + 1
return mw.ustring.rep( base, baseNum) .. mw.ustring.rep( modulo, modNum )
end
return p
6tej8yqmcs5kvas89misrzbdn69jptb
Bản mẫu:No redirect
10
10609
63427
2026-10-01T03:56:06Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{{{{|safesubst:}}}#if: {{{{{|safesubst:}}}#invoke:Redirect|isRedirect|{{{1}}}}} | <span class="plainlinks">[{{{{{|safesubst:}}}fullurl:{{{1}}}|redirect=no}} {{{2|{{{1}}}}}}]</span> | {{{{{|safesubst:}}}#if:{{{2|}}}|[[:{{{{{|safesubst:}}}FULLPAGENAME:{{{1}}}}}|{{{2}}}]]|[[:{{{{{|safesubst:}}}FULLPAGENAME:{{{1}}}}}]]}} }}<noinclude> {{Tài liệu}} </noinclude>”
63427
wikitext
text/x-wiki
{{{{{|safesubst:}}}#if: {{{{{|safesubst:}}}#invoke:Redirect|isRedirect|{{{1}}}}}
| <span class="plainlinks">[{{{{{|safesubst:}}}fullurl:{{{1}}}|redirect=no}} {{{2|{{{1}}}}}}]</span>
| {{{{{|safesubst:}}}#if:{{{2|}}}|[[:{{{{{|safesubst:}}}FULLPAGENAME:{{{1}}}}}|{{{2}}}]]|[[:{{{{{|safesubst:}}}FULLPAGENAME:{{{1}}}}}]]}}
}}<noinclude>
{{Tài liệu}}
</noinclude>
9r16jjql3z5zbrmtpjspz0th0jvpb1m
Bản mẫu:No redirect/doc
10
10610
63428
2026-10-01T03:56:18Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} <!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE AND INTERWIKIS TO WIKIDATA. --> {{tsh|-r}} === Cách sử dụng === This template provides an easy way to link a redirect page without following the redirect. <pre>{{no redirect|tên trang|nhãn}}</pre> It accepts two unnamed parameters: * 1= (required) the name of the page to link. * 2= (optional) the text to be displayed. If this is omitted then the input of the first p…”
63428
wikitext
text/x-wiki
{{Trang con tài liệu}}
<!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE AND INTERWIKIS TO WIKIDATA. -->
{{tsh|-r}}
=== Cách sử dụng ===
This template provides an easy way to link a redirect page without following the redirect.
<pre>{{no redirect|tên trang|nhãn}}</pre>
It accepts two unnamed parameters:
* 1= (required) the name of the page to link.
* 2= (optional) the text to be displayed. If this is omitted then the input of the first parameter is used.
==== Ví dụ ====
Instead of having to copy/paste or type:
* <code><nowiki>[http://en.wikipedia.org/w/index.php?title=The_Silence_of_the_Sea&redirect=no ''The Silence of the Sea'']</nowiki></code>
** to yield [http://en.wikipedia.org/w/index.php?title=The_Silence_of_the_Sea&redirect=no ''The Silence of the Sea'']
an editor can type:
* <code><nowiki>''{{No redirect|The Silence of the Sea}}''</nowiki></code>
or an '''<span class="plainlinks">[http://en.wikipedia.org/w/index.php?title=Special:WhatLinksHere/Template:No_redirect&hidelinks=1&hidetrans=1 alias]</span>''' can be used, as in:
* <code><nowiki>''{{-r|The Silence of the Sea}}''</nowiki></code>
Both of those will take users ''directly'' to the same redirect page and display its pagename as a bluelink thus (using the alias): ''{{-r|The Silence of the Sea}}''.
The second parameter (label) may be useful in discussions on talk pages. For example,
* <code><nowiki>{{-r|The Silence of the Sea|this redirect}}</nowiki></code>
may appear on a talk page in this context: "For reference, see {{-r|The Silence of the Sea|this redirect}}."
If there is no page with that name given by the first parameter, the template generates a redlink as for any article name:
* <code><nowiki>{{-r|Bill Clinton (nickname)}}</nowiki></code> displays as {{-r|Bill Clinton (nickname)}}
=== Xem thêm ===
* [[Wikipedia:Trang đổi hướng]]
* {{tl|No redirect conditional}} ({{tl|nrc}}) – returns either a no-redirect link or a normal wikilink based on whether the page is a redirect
<includeonly>{{#ifeq:{{SUBPAGENAME}}|chỗ thử||
<!-- CATEGORIES GO BELOW AND INTERWIKIS GO TO WIKIDATA, THANK YOU! -->
[[Thể loại:Bản mẫu liên kết trong]]
[[Thể loại:Bản mẫu đổi hướng| No redirect]]
}}</includeonly>
lvx5os2575nzeyhz6uny7zcw8m8574y
Bản mẫu:Noredirect
10
10611
63429
2026-10-01T03:56:56Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:No redirect]]
63429
wikitext
text/x-wiki
#đổi [[Bản mẫu:No redirect]]
7p227683stoznthjdfuicxb3jadrce6
Bản mẫu:Hidden begin/doc
10
10612
63430
2026-10-01T03:57:24Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{in5}}''Tài liệu này được chia sẻ bởi {{tl|Bắt đầu phần ẩn}} và {{tl|Hết phần ẩn}}.'' {{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Bắt đầu phần ẩn | {{high-use| 16154 }} | {{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Hết phần ẩn | {{high-use| 16154 }} }} }} {{giới hạn mục lục|2}} {{Collapse Templates}} ==Cú pháp== <pre style="overflow:auto;"> {{Hidden begin | expanded = <!--"tru…”
63430
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{in5}}''Tài liệu này được chia sẻ bởi {{tl|Bắt đầu phần ẩn}} và {{tl|Hết phần ẩn}}.''
{{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Bắt đầu phần ẩn
| {{high-use| 16154 }}
| {{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Hết phần ẩn
| {{high-use| 16154 }}
}}
}}
{{giới hạn mục lục|2}}
{{Collapse Templates}}
==Cú pháp==
<pre style="overflow:auto;">
{{Hidden begin
| expanded = <!--"true", "on", yes", etc, otherwise omit-->
| showhide = <!--"left", otherwise omit-->
| class =
| style =
| border =
| title =
| titlestyle =
| bg1 =
| ta1 =
| contentstyle =
| bg2 =
| ta2 =
<!--Older, semi-deprecated parameters:-->
| header = | extra1 = | extra2 =
}}
<!----[content to be hidden placed here]---->
{{Hidden end}}
</pre>
===Các thông số===
{| class="wikitable"
! Thông số || Mô tả
|-
| ''showhide''<!--previously: <br />or ''toggle''--> || Set to "left" (without speechmarks) to switch the [show/hide] link's position from the righthand end of the titlebar (default) to the left.
|-
| ''expanded'' || Set to anything ("true", "yes", etc.) to switch the hidden section's initial state from collapsed (hidden) to expanded (visible).
|-
| ''class'' || [[WP:CLASS#Classes|Class attribute]] affecting entire area.
|-
| ''style'' || [[Cascading Style Sheets|CSS styling]] affecting entire area (titlebar and hidden/hideable content).
|-
| ''border'' || CSS styling for border around entire area. May be overridden if ''style'' includes anything that changes the border.
|-
| ''title'' || Text shown in titlebar.
|-
| style="vertical-align:top;" | ''titlestyle'' || CSS styles to apply to the titlebar (e.g. {{para|titlestyle|border:1px solid lightgrey;}} to produce a border around it; {{para|titlestyle|background:''color'';}} to set its background color to [[Web colors#X11 color names|''color'']] ; {{para|titlestyle|text-align:[center/right];}} to switch its text (''title'')'s alignment from left to center or right; etc.).
|-
| ''bg1'' || Background color for titlebar; defaults to transparent. May be overridden if ''titlestyle'' includes anything changes the background.
|-
| ''ta1'' || Text alignment for titlebar; defaults to left. May be overridden if ''titlestyle'' includes anything that changes the text alignment.
|-
| ''contentstyle'' || CSS styling to apply to the hidden/hideable content (e.g. background and text-align, per ''titlestyle'').
|-
| ''bg2'' || Background color for content; defaults to transparent. May be overridden if ''contentstyle'' includes anything changes the background.
|-
| ''ta2'' || Text alignment for content; defaults to left. May be overridden if ''contentstyle'' includes anything that changes the text alignment.
|}
==Các ví dụ==
===Ví dụ 1===
<pre style="overflow:auto;">
{{Hidden begin |title=Ví dụ mặc định}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}} |title=Ví dụ mặc định}}
* def
* ghi
{{Hidden end}}
===Ví dụ 2===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle = background:pink;
| title = ''titlestyle'' is "background:pink;"
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle = background:pink;
| title = ''titlestyle'' is "background:pink;"
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 3===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle = background:pink; text-align:center;
| title = thêm vào "text-align:center;"
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle = background:pink; text-align:center;
| title = thêm vào "text-align:center;"
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 4===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle = background:pink; text-align:right; padding-right:3.0em;
| title = ''title'' on right with 3.0em padding
}}
* change window width and
* watch title alignment
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle = background:pink; text-align:right; padding-right:3.0em;
| title = ''title'' on right with 3.0em padding
}}
* change window width and
* watch title alignment
{{Hidden end}}
===Ví dụ 5===
<pre style="overflow:auto;">
{{Hidden begin |showhide=left |expanded=true
| titlestyle = background:palegreen;
| title = ''showhide'' set to "left" and ''expanded'' set to "true"
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}} |showhide=left |expanded=true
| titlestyle = background:palegreen;
| title = ''showhide'' set to "left" and ''expanded'' set to "true"
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 6===
<pre style="overflow:auto;">
{{Hidden begin |showhide=left
| titlestyle = background:palegreen;
| title = <code style="background:transparent;">showhide=left</code>, hidden content 150% size and in bold (''contentstyle'')
| contentstyle = font-size:150%; font-weight:bold;
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}} |showhide=left
| titlestyle = background:palegreen;
| title = <code style="background:transparent;">showhide=left</code>, hidden content 150% size and in bold (''contentstyle'')
| contentstyle = font-size:150%; font-weight:bold;
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 7===
<!-- This example updated to show that bg1/ta1 only affect titlebar, used ta1=right since it is non-default for titlebar and content. -->
<pre style="overflow:auto;">
{{Hidden begin
| header = [''header'' (deprecated)]
| titlestyle = font-style:italic; padding-right:3.0em;
| title = [''title'' set to this text]
| border = 1px solid grey
| bg1 = palegreen
| ta1 = right
| extra1 = font-size:120%; <!--semicolon required since titlestyle is used-->
| extra2 = font-size:150% <!--semicolon optional when contentstyle not used-->
}}
* make window narrower and
* title will wrap
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| header = [''header'' (deprecated)]
| titlestyle = font-style:italic; padding-right:3.0em;
| title = [''title'' set to this text]
| border = 1px solid grey
| bg1 = palegreen
| ta1 = right
| extra1 = font-size:120%;
| extra2 = font-size:150%
}}
* make window narrower and
* title will wrap
{{Hidden end}}
===Ví dụ 8===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle =
| title = title&nbsp;with&nbsp;non-breaking&nbsp;spaces&nbsp;
| border = 1px solid red
| bg1 = cyan
| bg2 = yellow
| ta1 = right
| ta2 = left
| extra1 = font-size:120%; padding-right:2.5em;
| extra2 = font-size:150%; padding-left:3.0em;
}}
* def ... these should have left padding
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle =
| title = title with non-breaking spaces
| border = 1px solid red
| bg1 = cyan
| bg2 = yellow
| ta1 = right
| ta2 = left
| extra1 = font-size:120%; padding-right:2.5em;
| extra2 = font-size:150%; padding-left:3.0em;
}}
* def ... these should have left padding
* ghi
{{Hidden end}}
==Xem thêm==
* {{tl|Hidden}}
<includeonly>{{basepage subpage
| <!-- THÊM THỂ LOẠI VÀO PHÍA DƯỚI DÒNG NÀY -->
[[Thể loại:Bản mẫu Collapse]]
}}</includeonly>
79rvqipthzwfh0znecx2nkmq7xaxkbp
Mô đun:Shortcut/styles.css
828
10613
63431
2026-10-01T03:58:44Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “.module-shortcutboxplain { float: right; margin: 0 0 0 1em; border: 1px solid var(--border-color-base, #a2a9b1); background-color: var(--background-color-base, #fff); padding: 0.3em 0.6em 0.2em 0.6em; text-align: center; font-size: 85%; } .module-shortcutboxleft { float: left; margin: 0 1em 0 0; } .module-shortcutlist { display: inline-block; border-bottom: 1px solid var(--border-color-base, #a2a9b1); margin-bottom: 0.2em; } .module-short…”
63431
sanitized-css
text/css
.module-shortcutboxplain {
float: right;
margin: 0 0 0 1em;
border: 1px solid var(--border-color-base, #a2a9b1);
background-color: var(--background-color-base, #fff);
padding: 0.3em 0.6em 0.2em 0.6em;
text-align: center;
font-size: 85%;
}
.module-shortcutboxleft {
float: left;
margin: 0 1em 0 0;
}
.module-shortcutlist {
display: inline-block;
border-bottom: 1px solid var(--border-color-base, #a2a9b1);
margin-bottom: 0.2em;
}
.module-shortcutboxplain ul {
font-weight: bold;
}
.module-shortcutanchordiv {
position: relative;
top: -3em;
}
li .module-shortcutanchordiv {
float: right; /* IE/Edge in list items */
}
.mbox-imageright .module-shortcutboxplain {
padding: 0.4em 1em 0.4em 1em;
line-height: 1.3;
margin: 0;
}
tag1ohk2vugd3ah7q0em1h5jjy3qqgr
Bản mẫu:Plainlist/styles.css
10
10614
63432
2026-10-01T03:59:20Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “.plainlist ol, .plainlist ul { line-height: inherit; list-style: none; margin: 0; padding: 0; /* Reset Minerva default */ } .plainlist ol li, .plainlist ul li { margin-bottom: 0; }”
63432
sanitized-css
text/css
.plainlist ol,
.plainlist ul {
line-height: inherit;
list-style: none;
margin: 0;
padding: 0; /* Reset Minerva default */
}
.plainlist ol li,
.plainlist ul li {
margin-bottom: 0;
}
2iy4a0uss4epemofk3s8a02vftiou1z
Bản mẫu:Bắt đầu phần ẩn
10
10615
63433
2026-10-01T04:00:44Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<includeonly><div class="mw-collapsible {{#ifeq:{{{showhide|}}}{{{toggle|}}}|left|mw-collapsible-leftside-toggle}} {{#if:{{{expanded|}}} | |mw-collapsed}} {{{class|}}}" style="box-sizing:border-box;width:100%;font-size:95%;padding:4px;border:{{{border|none}}};{{{style|}}}"><!-- --><div style="font-size:100%;line-height:1.6;font-weight:bold;{{#if:{{{bg1|}}}|background:{{{bg1|}}};}}{{#if:{{{ta1|}}}|text-align:{{{bg1|}}};}}{{{extra1|}}};{{{title…”
63433
wikitext
text/x-wiki
<includeonly><div class="mw-collapsible {{#ifeq:{{{showhide|}}}{{{toggle|}}}|left|mw-collapsible-leftside-toggle}} {{#if:{{{expanded|}}} | |mw-collapsed}} {{{class|}}}" style="box-sizing:border-box;width:100%;font-size:95%;padding:4px;border:{{{border|none}}};{{{style|}}}"><!--
--><div style="font-size:100%;line-height:1.6;font-weight:bold;{{#if:{{{bg1|}}}|background:{{{bg1|}}};}}{{#if:{{{ta1|}}}|text-align:{{{bg1|}}};}}{{{extra1|}}};{{{titlestyle|{{{headercss|}}}}}}">{{{header|}}}{{{title|}}}</div><!--
--><div class="mw-collapsible-content" style="{{#if:{{{bg2|}}}|background:{{{bg2|}}};}}{{#if:{{{ta2|}}}|text-align:{{{bg2|}}};}}{{{extra2|}}};{{{bodystyle|{{{contentstyle|{{{contentcss|}}}}}}}}}"></includeonly><noinclude>
{{hatnote|Templates {{noredirect|Template:Begin hidden|Begin hidden}}, {{noredirect|Template:Start hidden|Start hidden}} and {{noredirect|Template:Start hidden section|Start hidden section}} redirect here.}}
{{Tài liệu}}
</noinclude>
1j1tvvml4osww6zo395s0lc45gpiw0u
Bản mẫu:Bắt đầu phần ẩn/doc
10
10616
63434
2026-10-01T04:00:57Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{in5}}''Tài liệu này được chia sẻ bởi {{tl|Bắt đầu phần ẩn}} và {{tl|Hết phần ẩn}}.'' {{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Bắt đầu phần ẩn | {{high-use| 16154 }} | {{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Hết phần ẩn | {{high-use| 16154 }} }} }} {{giới hạn mục lục|2}} {{Collapse Templates}} ==Cú pháp== <pre style="overflow:auto;"> {{Hidden begin | expanded = <!--"tru…”
63434
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{in5}}''Tài liệu này được chia sẻ bởi {{tl|Bắt đầu phần ẩn}} và {{tl|Hết phần ẩn}}.''
{{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Bắt đầu phần ẩn
| {{high-use| 16154 }}
| {{#ifeq: {{FULLPAGENAME}} | Bản mẫu:Hết phần ẩn
| {{high-use| 16154 }}
}}
}}
{{giới hạn mục lục|2}}
{{Collapse Templates}}
==Cú pháp==
<pre style="overflow:auto;">
{{Hidden begin
| expanded = <!--"true", "on", yes", etc, otherwise omit-->
| showhide = <!--"left", otherwise omit-->
| class =
| style =
| border =
| title =
| titlestyle =
| bg1 =
| ta1 =
| contentstyle =
| bg2 =
| ta2 =
<!--Older, semi-deprecated parameters:-->
| header = | extra1 = | extra2 =
}}
<!----[content to be hidden placed here]---->
{{Hidden end}}
</pre>
===Các thông số===
{| class="wikitable"
! Thông số || Mô tả
|-
| ''showhide''<!--previously: <br />or ''toggle''--> || Set to "left" (without speechmarks) to switch the [show/hide] link's position from the righthand end of the titlebar (default) to the left.
|-
| ''expanded'' || Set to anything ("true", "yes", etc.) to switch the hidden section's initial state from collapsed (hidden) to expanded (visible).
|-
| ''class'' || [[WP:CLASS#Classes|Class attribute]] affecting entire area.
|-
| ''style'' || [[Cascading Style Sheets|CSS styling]] affecting entire area (titlebar and hidden/hideable content).
|-
| ''border'' || CSS styling for border around entire area. May be overridden if ''style'' includes anything that changes the border.
|-
| ''title'' || Text shown in titlebar.
|-
| style="vertical-align:top;" | ''titlestyle'' || CSS styles to apply to the titlebar (e.g. {{para|titlestyle|border:1px solid lightgrey;}} to produce a border around it; {{para|titlestyle|background:''color'';}} to set its background color to [[Web colors#X11 color names|''color'']] ; {{para|titlestyle|text-align:[center/right];}} to switch its text (''title'')'s alignment from left to center or right; etc.).
|-
| ''bg1'' || Background color for titlebar; defaults to transparent. May be overridden if ''titlestyle'' includes anything changes the background.
|-
| ''ta1'' || Text alignment for titlebar; defaults to left. May be overridden if ''titlestyle'' includes anything that changes the text alignment.
|-
| ''contentstyle'' || CSS styling to apply to the hidden/hideable content (e.g. background and text-align, per ''titlestyle'').
|-
| ''bg2'' || Background color for content; defaults to transparent. May be overridden if ''contentstyle'' includes anything changes the background.
|-
| ''ta2'' || Text alignment for content; defaults to left. May be overridden if ''contentstyle'' includes anything that changes the text alignment.
|}
==Các ví dụ==
===Ví dụ 1===
<pre style="overflow:auto;">
{{Hidden begin |title=Ví dụ mặc định}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}} |title=Ví dụ mặc định}}
* def
* ghi
{{Hidden end}}
===Ví dụ 2===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle = background:pink;
| title = ''titlestyle'' is "background:pink;"
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle = background:pink;
| title = ''titlestyle'' is "background:pink;"
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 3===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle = background:pink; text-align:center;
| title = thêm vào "text-align:center;"
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle = background:pink; text-align:center;
| title = thêm vào "text-align:center;"
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 4===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle = background:pink; text-align:right; padding-right:3.0em;
| title = ''title'' on right with 3.0em padding
}}
* change window width and
* watch title alignment
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle = background:pink; text-align:right; padding-right:3.0em;
| title = ''title'' on right with 3.0em padding
}}
* change window width and
* watch title alignment
{{Hidden end}}
===Ví dụ 5===
<pre style="overflow:auto;">
{{Hidden begin |showhide=left |expanded=true
| titlestyle = background:palegreen;
| title = ''showhide'' set to "left" and ''expanded'' set to "true"
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}} |showhide=left |expanded=true
| titlestyle = background:palegreen;
| title = ''showhide'' set to "left" and ''expanded'' set to "true"
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 6===
<pre style="overflow:auto;">
{{Hidden begin |showhide=left
| titlestyle = background:palegreen;
| title = <code style="background:transparent;">showhide=left</code>, hidden content 150% size and in bold (''contentstyle'')
| contentstyle = font-size:150%; font-weight:bold;
}}
* def
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}} |showhide=left
| titlestyle = background:palegreen;
| title = <code style="background:transparent;">showhide=left</code>, hidden content 150% size and in bold (''contentstyle'')
| contentstyle = font-size:150%; font-weight:bold;
}}
* def
* ghi
{{Hidden end}}
===Ví dụ 7===
<!-- This example updated to show that bg1/ta1 only affect titlebar, used ta1=right since it is non-default for titlebar and content. -->
<pre style="overflow:auto;">
{{Hidden begin
| header = [''header'' (deprecated)]
| titlestyle = font-style:italic; padding-right:3.0em;
| title = [''title'' set to this text]
| border = 1px solid grey
| bg1 = palegreen
| ta1 = right
| extra1 = font-size:120%; <!--semicolon required since titlestyle is used-->
| extra2 = font-size:150% <!--semicolon optional when contentstyle not used-->
}}
* make window narrower and
* title will wrap
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| header = [''header'' (deprecated)]
| titlestyle = font-style:italic; padding-right:3.0em;
| title = [''title'' set to this text]
| border = 1px solid grey
| bg1 = palegreen
| ta1 = right
| extra1 = font-size:120%;
| extra2 = font-size:150%
}}
* make window narrower and
* title will wrap
{{Hidden end}}
===Ví dụ 8===
<pre style="overflow:auto;">
{{Hidden begin
| titlestyle =
| title = title&nbsp;with&nbsp;non-breaking&nbsp;spaces&nbsp;
| border = 1px solid red
| bg1 = cyan
| bg2 = yellow
| ta1 = right
| ta2 = left
| extra1 = font-size:120%; padding-right:2.5em;
| extra2 = font-size:150%; padding-left:3.0em;
}}
* def ... these should have left padding
* ghi
{{Hidden end}}
</pre>
{{Hidden begin{{#ifeq:{{SUBPAGENAME}}|sandbox |/sandbox}}
| titlestyle =
| title = title with non-breaking spaces
| border = 1px solid red
| bg1 = cyan
| bg2 = yellow
| ta1 = right
| ta2 = left
| extra1 = font-size:120%; padding-right:2.5em;
| extra2 = font-size:150%; padding-left:3.0em;
}}
* def ... these should have left padding
* ghi
{{Hidden end}}
==Xem thêm==
* {{tl|Hidden}}
<includeonly>{{basepage subpage
| <!-- THÊM THỂ LOẠI VÀO PHÍA DƯỚI DÒNG NÀY -->
[[Thể loại:Bản mẫu Collapse]]
}}</includeonly>
79rvqipthzwfh0znecx2nkmq7xaxkbp
Bản mẫu:Hidden begin
10
10617
63435
2026-10-01T04:01:05Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Bắt đầu phần ẩn]]
63435
wikitext
text/x-wiki
#đổi [[Bản mẫu:Bắt đầu phần ẩn]]
1jufvsw88gykix12ze22o4b0ki7zgo7
Bản mẫu:Hidden end
10
10618
63436
2026-10-01T04:02:15Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Hết phần ẩn]]
63436
wikitext
text/x-wiki
#đổi [[Bản mẫu:Hết phần ẩn]]
nt3evgw1a9jv3itpyuvgw4gozcd068w
Bản mẫu:Phân biệt
10
10619
63437
2026-10-01T04:03:40Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{#invoke:Distinguish|distinguish}}<noinclude><!-- splitting these lines causes {{Documentation}} template to terminate green shading when Distinguish is used in /doc pages. --> {{Tài liệu}} <!-- Add categories to the /doc subpage and interwikis to Wikidata, not here! --> </noinclude>”
63437
wikitext
text/x-wiki
{{#invoke:Distinguish|distinguish}}<noinclude><!-- splitting these lines causes {{Documentation}} template to terminate green shading when Distinguish is used in /doc pages. -->
{{Tài liệu}}
<!-- Add categories to the /doc subpage and interwikis to Wikidata, not here! -->
</noinclude>
n362gnuqhu3sggglf6lw3uudbwjreuj
Bản mẫu:Phân biệt/doc
10
10620
63438
2026-10-01T04:03:54Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Documentation subpage}} {{Sử dụng nhiều}} {{Lua|Mô đun:Distinguish}} <!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE --> This template renders a [[WP:HAT|hatnote]] intended to inform the reader of the existence of one or more articles whose title(s) bears a strong resemblance to the current article. This template is used in the cases where the distinction between the titles is so obvious that the reader needs no further explanation. For case…”
63438
wikitext
text/x-wiki
{{Documentation subpage}}
{{Sử dụng nhiều}}
{{Lua|Mô đun:Distinguish}}
<!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE -->
This template renders a [[WP:HAT|hatnote]] intended to inform the reader of the existence of one or more articles whose title(s) bears a strong resemblance to the current article. This template is used in the cases where the distinction between the titles is so obvious that the reader needs no further explanation. For cases where an explanation is required, use {{tl|For}} and {{tl|About}}.
__NOTOC__
==Ví dụ==
{{tlx|Distinguish|Foo}} → {{Distinguish|Foo}}
{{tlx|Distinguish|Foo|Bar|Gaz}} → {{Distinguish|Foo|Bar|Gaz}}
{{tlx|Distinguish|text {{=}} custom {{brackets|[[text]]}}, and {{brackets|[[foo]]}}, a common example term}} → {{Distinguish|text = custom [[text]], and [[foo]], a common example term}}
== When to use ==
This hatnote is generally used when readers have misspelled their desired title, and the error would be apparent by simply displaying the alternative term without further explanation. For example, consider a reader looking for the punctuation mark who instead ends up at [[coma]]:
<blockquote>[[Coma]] → {{Distinguish|Comma}}</blockquote>
Readers are presumed to recognize that they actually wanted ''comma'' by merely looking at the spelling, and this case generally requires no further explanation.
However, {{tlx|distinguish}} is not suitable when the difference is not readily apparent without additional details. Consider a reader looking for a game they believe is named Reversi:
<blockquote>[[File:Red x.svg|15px|link=]] [[Reversi]] → {{Distinguish|Reversis}} </blockquote>
In the above hatnote, it is not generally apparent how the suggested Reversis is different from Reversi, which is also a game.
<blockquote>[[File:Green check.svg|15px|link=]] [[Reversi]] → {{About|the board game|the card game|Reversis}}</blockquote>
Using {{tlx|about}} instead of {{tlc|distinguish}}, the differences in the suggested article is explained upfront without requiring the reader to click through and differentiate the terms on their own.
{{tlc|Distinguish}} should only be used when the ambiguity exists for a portion of the readership that is sufficient to warrant a hatnote. Care should be taken to [[WP:TRHAT|avoid trivial uses]].
This hatnote can also be used to distinguish from multiple articles:
<blockquote>{{distinguish|Foo|Bar}}</blockquote>
== TemplateData ==
{{TemplateData header}}
<templatedata>
{
"params": {
"1": {
"label": "Name of article",
"description": "Name of article that you want to link to",
"type": "wiki-page-name",
"suggested": true
},
"2": {
"label": "Optional additional article to link",
"description": "Optional additional article to link",
"type": "wiki-page-name"
},
"3": {
"label": "Optional additional article to link",
"description": "Optional additional article to link",
"type": "wiki-page-name"
},
"4": {
"label": "Optional additional article to link",
"description": "Optional additional article to link",
"type": "wiki-page-name"
},
"text": {
"label": "Custom text",
"description": "Custom message in wikitext; e.g. \"[[foo]] and [[bar]]\" produces \"Not to be confused with [[foo]] and [[bar]].\"",
"type": "string"
},
"selfref": {
"label": "Self reference",
"description": "If set, marks note as being a self reference, to not be shown when content is reused",
"type": "boolean"
}
},
"description": "A hatnote used when there is an ambiguity in an article's title.",
"paramOrder": [
"1",
"2",
"3",
"4",
"text",
"selfref"
],
"format": "inline"
}
</templatedata>
== Redirects ==
* {{tl|Confused}}
* {{tl|Confuse}}
* {{tl|Misspelling}}
{{Hatnote templates}}
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox||
<!-- Categories go below and interwikis go to Wikidata, thank you! -->
[[Thể loại:Bản mẫu ghi chú đầu trang]]
}}</includeonly>
87i5nbsig1mu0l609hl28g614ago79w
Mô đun:Distinguish
828
10621
63439
2026-10-01T04:04:41Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “local mHatnote = require('Module:Hatnote') local mHatlist = require('Module:Hatnote list') local mArguments --initialize lazily local mTableTools --initialize lazily local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local p = {} function p.distinguish(frame) mArguments = require('Module:Arguments') mTableTools = require('Module:TableTools') local args = mArguments.getArgs(frame) local selfref = args.selfref local t…”
63439
Scribunto
text/plain
local mHatnote = require('Module:Hatnote')
local mHatlist = require('Module:Hatnote list')
local mArguments --initialize lazily
local mTableTools --initialize lazily
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
function p.distinguish(frame)
mArguments = require('Module:Arguments')
mTableTools = require('Module:TableTools')
local args = mArguments.getArgs(frame)
local selfref = args.selfref
local text = args.text
args = mTableTools.compressSparseArray(args)
return p._distinguish(args, text, selfref)
end
function p._distinguish(args, text, selfref)
checkType("_distinguish", 1, args, 'table')
if #args == 0 and not text then return '' end
local text = string.format(
'Đừng nhầm với %s.',
text or mHatlist.orList(args, true)
)
hnOptions = {selfref = selfref}
return mHatnote._hatnote(text, hnOptions)
end
return p
g94c5urhg7rwcwa55rf9671c1yn9e63
Mô đun:Uses TemplateStyles/config
828
10622
63440
2026-10-01T05:37:29Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “local cfg = {} -- Don’t touch this line. -- Subpage blacklist: these subpages will not be categorized (except for the -- error category, which is always added if there is an error). -- For example “Template:Foo/doc” matches the `doc = true` rule, so it will have -- no categories. “Template:Foo” and “Template:Foo/documentation” match no rules, -- so they *will* have categories. All rules should be in the -- ['<subpage name>'] = true, --…”
63440
Scribunto
text/plain
local cfg = {} -- Don’t touch this line.
-- Subpage blacklist: these subpages will not be categorized (except for the
-- error category, which is always added if there is an error).
-- For example “Template:Foo/doc” matches the `doc = true` rule, so it will have
-- no categories. “Template:Foo” and “Template:Foo/documentation” match no rules,
-- so they *will* have categories. All rules should be in the
-- ['<subpage name>'] = true,
-- format.
cfg['subpage_blacklist'] = {
['doc'] = true,
['sandbox'] = true,
['sandbox2'] = true,
['testcases'] = true,
}
-- Sandbox title: if the stylesheet’s title is <template>/<stylesheet>.css, the
-- stylesheet’s sandbox is expected to be at <template>/<sandbox_title>/<stylesheet>.css
-- Set to nil to disable sandbox links.
cfg['sandbox_title'] = 'sandbox'
-- Error category: this category is added if the module call contains errors
-- (e.g. no stylesheet listed). A category name without namespace, or nil
-- to disable categorization (not recommended).
cfg['error_category'] = 'Bản mẫu Uses TemplateStyles có lỗi'
-- Default category: this category is added if no custom category is specified
-- in module/template call. A category name without namespace, or nil
-- to disable categorization.
cfg['default_category'] = 'Bản mẫu sử dụng TemplateStyles'
-- Protection conflict category: this category is added if the protection level
-- of any stylesheet is lower than the protection level of the template. A category name
-- without namespace, or nil to disable categorization (not recommended).
cfg['protection_conflict_category'] = 'Bản mẫu sử dụng TemplateStyles có mức khóa khác nhau'
-- Hierarchy of protection levels, used to determine whether one protection level is lower
-- than another and thus should populate protection_conflict_category. No protection is treated as zero
cfg['protection_hierarchy'] = {
autoconfirmed = 1,
extendedconfirmed = 2,
templateeditor = 3,
sysop = 4
}
-- Padlock pattern: Lua pattern to search on protected stylesheets for, or nil
-- to disable padlock check.
cfg['padlock_pattern'] = '{{pp-'
-- Missing padlock category: this category is added if a protected stylesheet
-- doesn’t contain any padlock template (specified by the above Lua pattern).
-- A category name without namespace (no nil allowed) if the pattern is not nil,
-- unused (and thus may be nil) otherwise.
cfg['missing_padlock_category'] = 'Bản mẫu sử dụng TemplateStyles không khoá'
-- Default subpage for the stylesheet if none is given
cfg['default_subpage_name'] = 'styles.css'
return cfg -- Don’t touch this line.
6mtcuh63i2qwbd8j3ar8tei4nlj7ifj
Bản mẫu:Biểu quyết
10
10623
63441
2026-10-01T05:39:09Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<div class="boilerplate metadata vfd" style="background-color: #ecfcf4; margin: 5px 0 10px 0; padding: 6px; border: 1px solid #AAAAAA;"> {{#if: {{{lỗi|}}} | {{Theo dõi lỗi|{{{lỗi}}}|{{{trạng thái lỗi|}}}}} }} <div style="background-color: #E6F2FF; text-align: center;">''Biểu quyết này đã kết thúc, <span style="color:red">'''vui lòng không sửa đổi'''</span>! Mọi ý kiến xin ghi bên ngoài khung!''<br> '''Kết quả''':…”
63441
wikitext
text/x-wiki
<div class="boilerplate metadata vfd" style="background-color: #ecfcf4; margin: 5px 0 10px 0; padding: 6px; border: 1px solid #AAAAAA;">
{{#if: {{{lỗi|}}}
| {{Theo dõi lỗi|{{{lỗi}}}|{{{trạng thái lỗi|}}}}}
}}
<div style="background-color: #E6F2FF; text-align: center;">''Biểu quyết này đã kết thúc, <span style="color:red">'''vui lòng không sửa đổi'''</span>! Mọi ý kiến xin ghi bên ngoài khung!''<br>
'''Kết quả''': {{{KQ}}}</div>
{{{ND}}}
<div class="center" style="background-color: #E6F2FF;">
''Biểu quyết này đã kết thúc, <span style="color:red">'''vui lòng không sửa đổi'''</span>! Mọi ý kiến xin ghi bên ngoài khung!''
</div>
</div><noinclude>
{{Tài liệu}}
[[Thể loại:Quản lý Wikiquote]]
[[Thể loại:Công cụ Wikiquote]]
</noinclude>
h6bfkynxqfjlahbvo3a6u4vrcwqu2ui
Bản mẫu:Biểu quyết/doc
10
10624
63442
2026-10-01T05:39:48Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Sử dụng nhiều|2854}} <!-- XIN HÃY THÊM THỂ LOẠI VÀ INTERWIKI VÀO PHÍA DƯỚI TRANG NÀY --> === Cách sử dụng === <pre> {{Biểu quyết |KQ = |ND = }} </pre> * '''KQ''': là kết luận sau biểu quyết * '''ND''': là nội dung thảo luận. * '''lỗi''': ''(tùy chọn)'' Số lỗi trên Bugzilla mà yêu cầu thực hiện kết quả biểu quyết. ** '''trạng thái lỗi''': ''(tùy ch…”
63442
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Sử dụng nhiều|2854}}
<!-- XIN HÃY THÊM THỂ LOẠI VÀ INTERWIKI VÀO PHÍA DƯỚI TRANG NÀY -->
=== Cách sử dụng ===
<pre>
{{Biểu quyết
|KQ =
|ND =
}}
</pre>
* '''KQ''': là kết luận sau biểu quyết
* '''ND''': là nội dung thảo luận.
* '''lỗi''': ''(tùy chọn)'' Số lỗi trên Bugzilla mà yêu cầu thực hiện kết quả biểu quyết.
** '''trạng thái lỗi''': ''(tùy chọn)'' Trạng thái của lỗi này.
Lý tưởng nhất đặt tiêu bản này phía trên cùng cuộc biểu quyết trừ dấu <nowiki>}}</nowiki>, sau đó gõ hai dấu này vào phía cuối cùng của biểu quyết.
=== Xem thêm ===
* {{tl|Biểu quyết}}
* {{tl|Đầu biểu quyết}}
* {{tl|Kết biểu quyết}}
<includeonly>
<!-- THỂ LOẠI VÀ INTERWIKI TẠI ĐÂY, CẢM ƠN -->
</includeonly>
s97he6i48ys33vejghmu2s1rx84yj0c
Bản mẫu:Terminate sentence
10
10625
63443
2026-10-01T05:40:10Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{{1}}}{{#if:{{#invoke:text|sentenceTerminated|{{{1|}}}}}||{{{2|.}}}}}<noinclude>{{documentation}}</noinclude>”
63443
wikitext
text/x-wiki
{{{1}}}{{#if:{{#invoke:text|sentenceTerminated|{{{1|}}}}}||{{{2|.}}}}}<noinclude>{{documentation}}</noinclude>
qn47z9jj1gbam5odtqcnrnt6hqvwhtn
Bản mẫu:Terminate sentence/doc
10
10626
63444
2026-10-01T05:40:43Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Documentation subpage}} {{High-use}} {{Lua|Module:Text}} Bản này trả về đối số đầu tiên của nó, sau khi thêm dấu chấm (hoặc đối số thứ hai) nếu câu chưa kết thúc. == Cách sử dụng == * {{#invoke:DemoTemplate|{{BASEPAGENAME}}|Mưa ở Tây Ban Nha}} * {{#invoke:DemoTemplate|{{BASEPAGENAME}}|chủ yếu rơi trên đồng bằng.}} * {{#invoke:DemoTemplate|{{BASEPAGENAME}}|BANG|!}} <includeonly>{{sandbox oth…”
63444
wikitext
text/x-wiki
{{Documentation subpage}}
{{High-use}}
{{Lua|Module:Text}}
Bản này trả về đối số đầu tiên của nó, sau khi thêm dấu chấm (hoặc đối số thứ hai) nếu câu chưa kết thúc.
== Cách sử dụng ==
* {{#invoke:DemoTemplate|{{BASEPAGENAME}}|Mưa ở Tây Ban Nha}}
* {{#invoke:DemoTemplate|{{BASEPAGENAME}}|chủ yếu rơi trên đồng bằng.}}
* {{#invoke:DemoTemplate|{{BASEPAGENAME}}|BANG|!}}
<includeonly>{{sandbox other||
<!-- Categories below this line -->
{{uncategorized}}
}}</includeonly>
keqmmd0otx24cds4oa3ihtmgwkzpdwg
Mô đun:Text
828
10627
63445
2026-10-01T05:41:06Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “local Text = { serial = "2024-06-05", suite = "Text", item = 29387871 } --[=[ Text utilities ]=] local Failsafe = Text local GlobalMod = Text local Patterns = { } local RangesLatin = false local SeekQuote = false local foreignModule = function ( access, advanced, append, alt, alert ) -- Fetch global module -- Precondition: -- access -- string, with name of base module -- advanced…”
63445
Scribunto
text/plain
local Text = { serial = "2024-06-05",
suite = "Text",
item = 29387871 }
--[=[
Text utilities
]=]
local Failsafe = Text
local GlobalMod = Text
local Patterns = { }
local RangesLatin = false
local SeekQuote = false
local foreignModule = function ( access, advanced, append, alt, alert )
-- Fetch global module
-- Precondition:
-- access -- string, with name of base module
-- advanced -- true, for require(); else mw.loadData()
-- append -- string, with subpage part, if any; or false
-- alt -- number, of wikidata item of root; or false
-- alert -- true, for throwing error on data problem
-- Postcondition:
-- Returns whatever, probably table
-- 2019-10-29
local storage = access
local finer = function ()
if append then
storage = string.format( "%s/%s",
storage,
append )
end
end
local fun, lucky, r, suited
if advanced then
fun = require
else
fun = mw.loadData
end
GlobalMod.globalModules = GlobalMod.globalModules or { }
suited = GlobalMod.globalModules[ access ]
if not suited then
finer()
lucky, r = pcall( fun, "Module:" .. storage )
end
if not lucky then
if not suited and
type( alt ) == "number" and
alt > 0 then
suited = string.format( "Q%d", alt )
suited = mw.wikibase.getSitelink( suited )
GlobalMod.globalModules[ access ] = suited or true
end
if type( suited ) == "string" then
storage = suited
finer()
lucky, r = pcall( fun, storage )
end
if not lucky and alert then
error( "Missing or invalid page: " .. storage, 0 )
end
end
return r
end -- foreignModule()
local function factoryQuote()
-- Create quote definitions
if not Text.quoteLang then
local quoting = foreignModule( "Text",
false,
"quoting",
Text.item )
if type( quoting ) == "table" then
Text.quoteLang = quoting.langs
Text.quoteType = quoting.types
end
if type( Text.quoteLang ) ~= "table" then
Text.quoteLang = { }
end
if type( Text.quoteType ) ~= "table" then
Text.quoteType = { }
end
if type( Text.quoteLang.en ) ~= "string" then
Text.quoteLang.en = "ld"
end
if type( Text.quoteType[ Text.quoteLang.en ] ) ~= "table" then
Text.quoteType[ Text.quoteLang.en ] = { { 8220, 8221 },
{ 8216, 8217 } }
end
end
end -- factoryQuote()
local function fiatQuote( apply, alien, advance )
-- Quote text
-- Parameter:
-- apply -- string, with text
-- alien -- string, with language code
-- advance -- number, with level 1 or 2
local r = apply
local quotes, suite
factoryQuote()
if alien then
suite = mw.text.trim( alien )
if suite == "" then
suite = false
else
local s = Text.quoteLang[ suite ]
if s then
suite = s
else
local slang = suite:match( "^(%l+)-" )
if slang then
suite = Text.quoteLang[ slang ]
end
end
end
end
if not suite then
suite = Text.quoteLang.en
end
quotes = Text.quoteType[ suite ]
if quotes then
local space
if quotes[ 3 ] then
space = " "
else
space = ""
end
quotes = quotes[ advance ]
if quotes then
r = mw.ustring.format( "%s%s%s%s%s",
mw.ustring.char( quotes[ 1 ] ),
space,
apply,
space,
mw.ustring.char( quotes[ 2 ] ) )
end
else
mw.log( "fiatQuote() " .. suite )
end
return r
end -- fiatQuote()
Text.char = function ( apply, again, accept )
-- Create string from codepoints
-- Parameter:
-- apply -- table (sequence) with numerical codepoints, or nil
-- again -- number of repetitions, or nil
-- accept -- true, if no error messages to be appended
-- Returns: string
local r
if type( apply ) == "table" then
local bad = { }
local codes = { }
local s
for k, v in pairs( apply ) do
s = type( v )
if s == "number" then
if v < 32 and v ~= 9 and v ~= 10 then
v = tostring( v )
else
v = math.floor( v )
s = false
end
elseif s ~= "string" then
v = tostring( v )
end
if s then
table.insert( bad, v )
else
table.insert( codes, v )
end
end -- for k, v
if #bad == 0 then
if #codes > 0 then
r = mw.ustring.char( unpack( codes ) )
if again then
if type( again ) == "number" then
local n = math.floor( again )
if n > 1 then
r = r:rep( n )
elseif n < 1 then
r = ""
end
else
s = "bad repetitions: " .. tostring( again )
end
end
end
else
s = "bad codepoints: " .. table.concat( bad, " " )
end
if s and not accept then
r = tostring( mw.html.create( "span" )
:addClass( "error" )
:wikitext( s ) )
end
end
return r or ""
end -- Text.char()
Text.concatParams = function ( args, apply, adapt )
-- Concat list items into one string
-- Parameter:
-- args -- table (sequence) with numKey=string
-- apply -- string (optional); separator (default: "|")
-- adapt -- string (optional); format including "%s"
-- Returns: string
local collect = { }
for k, v in pairs( args ) do
if type( k ) == "number" then
v = mw.text.trim( v )
if v ~= "" then
if adapt then
v = mw.ustring.format( adapt, v )
end
table.insert( collect, v )
end
end
end -- for k, v
return table.concat( collect, apply or "|" )
end -- Text.concatParams()
Text.containsCJK = function ( analyse )
-- Is any CJK code within?
-- Parameter:
-- analyse -- string
-- Returns: true, if CJK detected
local r
if not Patterns.CJK then
Patterns.CJK = mw.ustring.char( 91,
0x3400, 45, 0x9FFF,
0x20000, 45, 0x2B81F,
93 )
end
if mw.ustring.find( analyse, Patterns.CJK ) then
r = true
else
r = false
end
return r
end -- Text.containsCJK()
Text.getPlain = function ( adjust )
-- Remove wikisyntax from string, except templates
-- Parameter:
-- adjust -- string
-- Returns: string
local i = adjust:find( "<!--", 1, true )
local r = adjust
local j
while i do
j = r:find( "-->", i + 3, true )
if j then
r = r:sub( 1, i ) .. r:sub( j + 3 )
else
r = r:sub( 1, i )
end
i = r:find( "<!--", i, true )
end -- "<!--"
r = r:gsub( "(</?%l[^>]*>)", "" )
:gsub( "'''(.+)'''", "%1" )
:gsub( "''(.+)''", "%1" )
:gsub( " ", " " )
return mw.text.unstrip( r )
end -- Text.getPlain()
Text.isLatinRange = function ( adjust )
-- Are characters expected to be latin or symbols within latin texts?
-- Precondition:
-- adjust -- string, or nil for initialization
-- Returns: true, if valid for latin only
local r
if not RangesLatin then
RangesLatin = { { 0x07, 0x02AF },
{ 0x1D6B, 0x1D9A },
{ 0x1E00, 0x1EFF },
{ 0x2002, 0x203A },
{ 0x2190, 0x23BD } }
end
if not Patterns.Latin then
local range
Patterns.Latin = "^["
for i = 1, #RangesLatin do
range = RangesLatin[ i ]
Patterns.Latin = Patterns.Latin ..
mw.ustring.char( range[ 1 ], 45, range[ 2 ] )
end -- for i
Patterns.Latin = Patterns.Latin .. "]*$"
end
if adjust then
if mw.ustring.match( adjust, Patterns.Latin ) then
r = true
else
r = false
end
end
return r
end -- Text.isLatinRange()
Text.isQuote = function ( ask )
-- Is this character any quotation mark?
-- Parameter:
-- ask -- string, with single character
-- Returns: true, if ask is quotation mark
local r
if not SeekQuote then
SeekQuote = mw.ustring.char( 34, -- "
39, -- '
171, -- laquo
187, -- raquo
8216, -- lsquo
8217, -- rsquo
8218, -- sbquo
8220, -- ldquo
8221, -- rdquo
8222, -- bdquo
8249, -- lsaquo
8250, -- rsaquo
0x300C, -- CJK
0x300D, -- CJK
0x300E, -- CJK
0x300F ) -- CJK
end
if ask == "" then
r = false
elseif mw.ustring.find( SeekQuote, ask, 1, true ) then
r = true
else
r = false
end
return r
end -- Text.isQuote()
Text.listToText = function ( args, adapt )
-- Format list items similar to mw.text.listToText()
-- Parameter:
-- args -- table (sequence) with numKey=string
-- adapt -- string (optional); format including "%s"
-- Returns: string
local collect = { }
for k, v in pairs( args ) do
if type( k ) == "number" then
v = mw.text.trim( v )
if v ~= "" then
if adapt then
v = mw.ustring.format( adapt, v )
end
table.insert( collect, v )
end
end
end -- for k, v
return mw.text.listToText( collect )
end -- Text.listToText()
Text.quote = function ( apply, alien, advance )
-- Quote text
-- Parameter:
-- apply -- string, with text
-- alien -- string, with language code, or nil
-- advance -- number, with level 1 or 2, or nil
-- Returns: quoted string
local mode, slang
if type( alien ) == "string" then
slang = mw.text.trim( alien ):lower()
else
local pageLang = mw.title.getCurrentTitle().pageLanguage
if pageLang then
slang = pageLang.code
else
slang = mw.language.getContentLanguage():getCode()
end
end
if advance == 2 then
mode = 2
else
mode = 1
end
return fiatQuote( mw.text.trim( apply ), slang, mode )
end -- Text.quote()
Text.quoteUnquoted = function ( apply, alien, advance )
-- Quote text, if not yet quoted and not empty
-- Parameter:
-- apply -- string, with text
-- alien -- string, with language code, or nil
-- advance -- number, with level 1 or 2, or nil
-- Returns: string; possibly quoted
local r = mw.text.trim( apply )
local s = mw.ustring.sub( r, 1, 1 )
if s ~= "" and not Text.isQuote( s, advance ) then
s = mw.ustring.sub( r, -1, 1 )
if not Text.isQuote( s ) then
r = Text.quote( r, alien, advance )
end
end
return r
end -- Text.quoteUnquoted()
Text.removeDiacritics = function ( adjust )
-- Remove all diacritics
-- Parameter:
-- adjust -- string
-- Returns: string; all latin letters should be ASCII
-- or basic greek or cyrillic or symbols etc.
local cleanup, decomposed
if not Patterns.Combined then
Patterns.Combined = mw.ustring.char( 91,
0x0300, 45, 0x036F,
0x1AB0, 45, 0x1AFF,
0x1DC0, 45, 0x1DFF,
0xFE20, 45, 0xFE2F,
93 )
end
decomposed = mw.ustring.toNFD( adjust )
cleanup = mw.ustring.gsub( decomposed, Patterns.Combined, "" )
return mw.ustring.toNFC( cleanup )
end -- Text.removeDiacritics()
Text.removeWhitespace = function ( adjust )
-- Remove all whitespace, or replace with ASCII space
-- Parameter:
-- adjust -- string
-- Returns: string; modified
local r = mw.text.decode( adjust )
if r:find( "&", 1, true ) then
r = r:gsub( "‎", "" )
:gsub( "‏", "" )
:gsub( "‍", "" )
:gsub( "‌", "" )
:gsub( " ", " " )
:gsub( " ", " " )
:gsub( " ", " " )
end
if not Patterns.Whitespace then
Patterns.Whitespace = mw.ustring.char( 0x00AD,
91, 0x200C, 45, 0x200F, 93,
91, 0x2028, 45, 0x202E, 93,
0x205F,
0x2060 )
Patterns.Space = mw.ustring.char( 0x00A0,
0x1680,
91, 0x2000, 45, 0x200A, 93,
0x202F,
0x205F,
0x3000,
0x303F )
end
r = mw.ustring.gsub( r, Patterns.Whitespace, "" )
r = mw.ustring.gsub( r, Patterns.Space, " " )
return mw.text.trim( r )
end -- Text.removeWhitespace()
Text.sentenceTerminated = function ( analyse )
-- Is string terminated by dot, question or exclamation mark?
-- Quotation, link termination and so on granted
-- Parameter:
-- analyse -- string
-- Returns: true, if sentence terminated
local r = mw.text.trim( analyse )
local lt = r:find( "<", 1, true )
if not Patterns.Terminated then
Patterns.Terminated = mw.ustring.char( 91,
0x3002,
0xFF01,
0xFF0E,
0xFF1F )
.. "!%.%?…][\"'%]‹›«»‘’“”]*$"
end
if lt then
r = r:gsub( "</span>", "" )
end
if mw.ustring.find( r, Patterns.Terminated ) then
r = true
elseif lt then
local s = "<bdi[^>]* dir=\"([lr]t[rl])\".+</bdi></bdo>"
s = r:match( s )
if s then
if mw.language.getContentLanguage():isRTL() then
r = ( s == "ltr" )
else
r = ( s == "rtl" )
end
else
r = false
end
else
r = false
end
return r
end -- Text.sentenceTerminated()
Text.tokenWords = function ( adjust )
-- Split text in words of digits or letters
-- Precondition:
-- adjust -- string
-- Returns: string with
local r = mw.uri.decode( adjust, "WIKI" )
if r:find( "&", 1, true ) then
r = mw.text.decode( r )
end
r = Text.removeWhitespace( r )
r = mw.ustring.gsub( r, "[%p%s]+", " " )
return r
end -- Text.tokenWords()
Text.ucfirstAll = function ( adjust )
-- Capitalize all words
-- Precondition:
-- adjust -- string
-- Returns: string with all first letters in upper case
local r = " " .. adjust
local i = 1
local c, j, m
if adjust:find( "&" ) then
r = r:gsub( "&", "&" )
:gsub( "<", "<" )
:gsub( ">", ">" )
:gsub( " ", " " )
:gsub( " ", " " )
:gsub( "‌", "‌" )
:gsub( "‍", "‍" )
:gsub( "‎", "‎" )
:gsub( "‏", "‏" )
m = true
end
while i do
i = mw.ustring.find( r, "%W%l", i )
if i then
j = i + 1
c = mw.ustring.upper( mw.ustring.sub( r, j, j ) )
r = string.format( "%s%s%s",
mw.ustring.sub( r, 1, i ),
c,
mw.ustring.sub( r, i + 2 ) )
i = j
end
end -- while i
r = r:sub( 2 )
if m then
r = r:gsub( "&", "&" )
:gsub( "<", "<" )
:gsub( ">", ">" )
:gsub( " ", " " )
:gsub( " ", " " )
:gsub( "‌", "‌" )
:gsub( "‍", "‍" )
:gsub( "‎", "‎" )
:gsub( "‏", "‏" )
:gsub( "&#X(%x+);", "&#x%1;" )
end
return r
end -- Text.ucfirstAll()
Text.uprightNonlatin = function ( adjust )
-- Ensure non-italics for non-latin text parts
-- One single greek letter might be granted
-- Precondition:
-- adjust -- string
-- Returns: string with non-latin parts enclosed in <span>
local r
Text.isLatinRange()
if mw.ustring.match( adjust, Patterns.Latin ) then
-- latin only, horizontal dashes, quotes
r = adjust
else
local c
local e = mw.html.create( "span" )
local j = false
local k = 1
local m = false
local n = mw.ustring.len( adjust )
local p
local flat = function ( a )
-- isLatin
local range
for i = 1, #RangesLatin do
range = RangesLatin[ i ]
if a >= range[ 1 ] and a <= range[ 2 ] then
return true
end
end -- for i
end -- flat()
local focus = function ( a )
-- char is not ambivalent
local r = ( a > 64 )
if r then
r = ( a < 8192 or a > 8212 )
else
r = ( a == 38 or a == 60 ) -- '&' '<'
end
return r
end -- focus()
local form = function ( a )
return string.format( p,
r,
mw.ustring.sub( adjust, k, j - 1 ),
mw.ustring.sub( adjust, j, a ) )
end -- form()
e:attr( "dir", "auto" )
:css( "font-style", "normal" )
:wikitext( "%s" )
p = "%s%s" .. tostring( e )
r = ""
for i = 1, n do
c = mw.ustring.codepoint( adjust, i, i )
if focus( c ) then
if flat( c ) then
if j then
if m then
if i == m then
-- single greek letter.
j = false
end
m = false
end
if j then
local nx = i - 1
local s = ""
for ix = nx, 1, -1 do
c = mw.ustring.sub( adjust, ix, ix )
if c == " " or c == "(" then
nx = nx - 1
s = c .. s
else
break -- for ix
end
end -- for ix
r = form( nx ) .. s
j = false
k = i
end
end
elseif not j then
j = i
if c >= 880 and c <= 1023 then
-- single greek letter?
m = i + 1
else
m = false
end
end
elseif m then
m = m + 1
end
end -- for i
if j and ( not m or m < n ) then
r = form( n )
else
r = r .. mw.ustring.sub( adjust, k )
end
end
return r
end -- Text.uprightNonlatin()
Failsafe.failsafe = function ( atleast )
-- Retrieve versioning and check for compliance
-- Precondition:
-- atleast -- string, with required version
-- or wikidata|item|~|@ or false
-- Postcondition:
-- Returns string -- with queried version/item, also if problem
-- false -- if appropriate
-- 2024-03-01
local since = atleast
local last = ( since == "~" )
local linked = ( since == "@" )
local link = ( since == "item" )
local r
if last or link or linked or since == "wikidata" then
local item = Failsafe.item
since = false
if type( item ) == "number" and item > 0 then
local suited = string.format( "Q%d", item )
if link then
r = suited
else
local entity = mw.wikibase.getEntity( suited )
if type( entity ) == "table" then
local seek = Failsafe.serialProperty or "P348"
local vsn = entity:formatPropertyValues( seek )
if type( vsn ) == "table" and
type( vsn.value ) == "string" and
vsn.value ~= "" then
if last and vsn.value == Failsafe.serial then
r = false
elseif linked then
if mw.title.getCurrentTitle().prefixedText
== mw.wikibase.getSitelink( suited ) then
r = false
else
r = suited
end
else
r = vsn.value
end
end
end
end
elseif link then
r = false
end
end
if type( r ) == "nil" then
if not since or since <= Failsafe.serial then
r = Failsafe.serial
else
r = false
end
end
return r
end -- Failsafe.failsafe()
Text.test = function ( about )
local r
if about == "quote" then
factoryQuote()
r = { QuoteLang = Text.quoteLang,
QuoteType = Text.quoteType }
end
return r
end -- Text.test()
-- Export
local p = { }
function p.char( frame )
local params = frame:getParent().args
local story = params[ 1 ]
local codes, lenient, multiple
if not story then
params = frame.args
story = params[ 1 ]
end
if story then
local items = mw.text.split( story, "%s+" )
if #items > 0 then
local j
lenient = ( params.errors == "0" )
codes = { }
multiple = tonumber( params[ "*" ] )
for k, v in pairs( items ) do
if v:sub( 1, 1 ) == "x" then
j = tonumber( "0" .. v )
elseif v == "" then
v = false
else
j = tonumber( v )
end
if v then
table.insert( codes, j or v )
end
end -- for k, v
end
end
return Text.char( codes, multiple, lenient )
end
function p.concatParams( frame )
local args
local template = frame.args.template
if type( template ) == "string" then
template = mw.text.trim( template )
template = ( template == "1" )
end
if template then
args = frame:getParent().args
else
args = frame.args
end
return Text.concatParams( args,
frame.args.separator,
frame.args.format )
end
function p.containsCJK( frame )
return Text.containsCJK( frame.args[ 1 ] or "" ) and "1" or ""
end
function p.getPlain( frame )
return Text.getPlain( frame.args[ 1 ] or "" )
end
function p.isLatinRange( frame )
return Text.isLatinRange( frame.args[ 1 ] or "" ) and "1" or ""
end
function p.isQuote( frame )
return Text.isQuote( frame.args[ 1 ] or "" ) and "1" or ""
end
function p.listToFormat(frame)
local lists = {}
local pformat = frame.args["format"]
local sep = frame.args["sep"] or ";"
-- Parameter parsen: Listen
for k, v in pairs(frame.args) do
local knum = tonumber(k)
if knum then lists[knum] = v end
end
-- Listen splitten
local maxListLen = 0
for i = 1, #lists do
lists[i] = mw.text.split(lists[i], sep)
if #lists[i] > maxListLen then maxListLen = #lists[i] end
end
-- Ergebnisstring generieren
local result = ""
local result_line = ""
for i = 1, maxListLen do
result_line = pformat
for j = 1, #lists do
result_line = mw.ustring.gsub( result_line,
"%%s",
lists[ j ][ i ],
1 )
end
result = result .. result_line
end
return result
end
function p.listToText( frame )
local args
local template = frame.args.template
if type( template ) == "string" then
template = mw.text.trim( template )
template = ( template == "1" )
end
if template then
args = frame:getParent().args
else
args = frame.args
end
return Text.listToText( args, frame.args.format )
end
function p.quote( frame )
local slang = frame.args[2]
if type( slang ) == "string" then
slang = mw.text.trim( slang )
if slang == "" then
slang = false
end
end
return Text.quote( frame.args[ 1 ] or "",
slang,
tonumber( frame.args[3] ) )
end
function p.quoteUnquoted( frame )
local slang = frame.args[2]
if type( slang ) == "string" then
slang = mw.text.trim( slang )
if slang == "" then
slang = false
end
end
return Text.quoteUnquoted( frame.args[ 1 ] or "",
slang,
tonumber( frame.args[3] ) )
end
function p.removeDiacritics( frame )
return Text.removeDiacritics( frame.args[ 1 ] or "" )
end
function p.sentenceTerminated( frame )
return Text.sentenceTerminated( frame.args[ 1 ] or "" ) and "1" or ""
end
function p.tokenWords( frame )
return Text.tokenWords( frame.args[ 1 ] or "" )
end
function p.ucfirstAll( frame )
return Text.ucfirstAll( frame.args[ 1 ] or "" )
end
function p.unstrip( frame )
return mw.text.trim( mw.text.unstrip( frame.args[ 1 ] or "" ) )
end
function p.uprightNonlatin( frame )
return Text.uprightNonlatin( frame.args[ 1 ] or "" )
end
function p.zip(frame)
local lists = {}
local seps = {}
local defaultsep = frame.args["sep"] or ""
local innersep = frame.args["isep"] or ""
local outersep = frame.args["osep"] or ""
-- Parameter parsen
for k, v in pairs(frame.args) do
local knum = tonumber(k)
if knum then lists[knum] = v else
if string.sub(k, 1, 3) == "sep" then
local sepnum = tonumber(string.sub(k, 4))
if sepnum then seps[sepnum] = v end
end
end
end
-- sofern keine expliziten Separatoren angegeben sind, den Standardseparator verwenden
for i = 1, math.max(#seps, #lists) do
if not seps[i] then seps[i] = defaultsep end
end
-- Listen splitten
local maxListLen = 0
for i = 1, #lists do
lists[i] = mw.text.split(lists[i], seps[i])
if #lists[i] > maxListLen then maxListLen = #lists[i] end
end
local result = ""
for i = 1, maxListLen do
if i ~= 1 then result = result .. outersep end
for j = 1, #lists do
if j ~= 1 then result = result .. innersep end
result = result .. (lists[j][i] or "")
end
end
return result
end
p.failsafe = function ( frame )
-- Versioning interface
local s = type( frame )
local since
if s == "table" then
since = frame.args[ 1 ]
elseif s == "string" then
since = frame
end
if since then
since = mw.text.trim( since )
if since == "" then
since = false
end
end
return Failsafe.failsafe( since ) or ""
end -- p.failsafe()
p.Text = function ()
return Text
end -- p.Text
setmetatable( p, { __call = function ( func, ... )
setmetatable( p, nil )
return Failsafe
end } )
return p
2af88nn2e1xrt9q50v1itsji2zps53a
Mô đun:Text/tài liệu
828
10628
63446
2026-10-01T05:41:32Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Void|{{tl|Module rating|<!-- Giá trị: pre-alpha • alpha • beta • release • protected -- Nếu một đánh giá không cần thiết / có liên quan, hãy xóa cuộc gọi bản mẫu này -->}}}} <!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. --> <!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. --> {{Sử dụng nhiều}} '''<code>Text</code>''' – Module containing methods for the manipulation o…”
63446
wikitext
text/x-wiki
{{Void|{{tl|Module rating|<!-- Giá trị: pre-alpha • alpha • beta • release • protected -- Nếu một đánh giá không cần thiết / có liên quan, hãy xóa cuộc gọi bản mẫu này -->}}}}
<!-- XIN HÃY THÊM THỂ LOẠI VÀO PHÍA DƯỚI TRANG NÀY. -->
<!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. -->
{{Sử dụng nhiều}}
'''<code>Text</code>''' – Module containing methods for the manipulation of text, wikimarkup and some HTML.
== {{Anchor|Vorlage}} Functions for templates ==
All methods have an unnamed parameter containing the text.
The return value is an empty string if the parameter does not meet the conditions. When the condition is matched or some result is successfully found, strings of at least one character are returned.
; char {{Anchor|char}}
: Creates a string from a list of character codes.
::; 1
::: Space-separated list of character codes
::; *
::: Number of repetitions of the list in parameter '''1'''; (Default 1).
::; errors
::: <code>0</code> – Silence errors
; concatParams {{Anchor|concatParams}}
: Combine any number of elements into a list, like <code>table.concat()</code> in Lua.
: From a template:
::; 1
::: First element; missing and empty elements are ignored.
::; 2 3 4 5 6 …
::: Further list elements
: From Lua
::; args
::: ''table (sequence)'' of the elements
::; apply
::: Separator between elements; defaults to <code>|</code>
::; adapt
::: optional formatting, which will be applied to each element; must contain <code>%s</code>.
; containsCJK {{Anchor|containsCJK}}
: Returns whether the input string contains any [[CJK characters]]
:* Returns nothing if there are no CJK characters
; removeDelimited
: Remove all text between delimiters, including the delimiters themselves.
; getPlain{{Anchor|getPlain}}
: Remove wikimarkup (except templates): comments, tags, bold, italic, nbsp
; isLatinRange {{Anchor|isLatinRange}}
: Returns some content, unless the string contains a character that would not normally be found in Latin text.
:* Returns nothing if there is a non-Latin string.
; isQuote {{Anchor|isQuote}}
: Returns some content if the parameter passed is a single character, and that character is a quote, such as <code>'</code>.
:* Returns nothing for multiple characters, or if the character passed is not a quote.
; listToText {{Anchor|listToText}}
: Formats list elements analogously to [[:mw:Extension:Scribunto/Lua_reference_manual#mw.text.listToText|mw.text.listToText()]].
: The elements are separated by a comma and space ; the word "and" appears between the first and last.
: Unnamed parameters become the list items.
: Optional parameters for <code>#invoke</code>:
:* <code>format</code> – Every list element will first be formatted with this format string; see [[:mw:Extension:Scribunto/Lua_reference_manual#string.format|here]] for how to construct this string. The string must contain at least one <code>%s</code> sequence.
:* <code>template=1</code> – List elements should be taken from the calling template.
: Returns the resulting string.
; quote {{Anchor|quote}}
: Wrap the string in quotes; quotes can be chosen for a specific language.
::; 1
::: Input text (will be automatically trimmed); may be empty.
::; 2
::: ''(optional)'' the [[ISO 639]] language code for the quote marks; should be one of the [[:de:Wikipedia:Lua/Modul/Text/Test#Anführungszeichen|supported languages]] {{in lang|de}}
::; 3
::: ''(optional)'' <code>2</code> for second level quotes. This means the single quote marks in a statement such as: Jack said, “Jill said ‘fish’ last Tuesday.”
; quoteUnquoted {{Anchor|quoteUnquoted}}
:
: Wrap the string in quotes; quotes can be chosen for a specific language. Will not quote an empty string, and will not quote if there is a quote at the start or end of the (trimmed) string.
::; 1
::: Input text (will be automatically trimmed); may be empty.
::; 2
::: ''(optional)'' the [[ISO 639]] language code for the quote marks; should be one of the [[:de:Wikipedia:Lua/Modul/Text/Test#Anführungszeichen|supported languages]] {{in lang|de}}
::; 3
::: ''(optional)'' <code>2</code> for second level quotes. This means the single quote marks in a statement such as: Jack said, “Jill said ‘fish’ last Tuesday.”
; removeDiacritics {{Anchor|removeDiacritics}}
: Removes all [[diacritical marks]] from the input.
::; 1
::;: Input text
; sentenceTerminated {{Anchor|sentenceTerminated}}
: Is this sentence terminated? Should work with CJK, and allows quotation marks to follow.
:* Returns nothing if the sentence is unterminated.
; ucfirstAll {{Anchor|ucfirstAll}}
: The first letter of every recognized word is converted to upper case. This contrasts with the parser function {{tlg|:mw:ucfirst|alttext=ucfirst:}} which changes only the first character of the whole string passed.
: A few common HTML entities are protected; the implementation of this may mean that numerical entities passed (e.g. <code>&#38;)</code> are converted to <code>&amp;</code> form
; uprightNonlatin {{Anchor|uprightNonlatin}}
: Takes a string. Italicized non-Latin characters are un-italicized, unless they are a single Greek letter.
; zip {{Anchor|zip}}
: Combines a tuple of lists by [[convolution (computer science)|convolution]]. This is easiest to explain by example: given two lists, list1 = "a,b,c" and list2 = "1,2,3", then<br><code>zip(list1, list2, sep = ",", isep = "-", osep = "/")</code><br>outputs<br><code>a-1/b-2/c-3</code>
:* 1, 2, 3, … – Lists to be combined
:* <code>sep</code> – A separator (in Lua [[regex]] form) used to split the lists. If empty, the lists are split into individual characters.
:* <code>sep1</code>, <code>sep2</code>, <code>sep3</code>, … – Allows a different separator to be used for each list.
:* <code>isep</code> – Output separator; placed between elements which were at the ''same'' index in their lists.
:* <code>osep</code> – Output separator; placed between elements which had ''different'' original indices; i.e. between the groups joined with <code>isep</code>
; split {{Anchor|split}}
: Splits a string into chunks at the specified delimiter, and returns the first (or user-specified) chunk. This is non-Unicode-aware implementation of [[:mw:Lua_reference_manual#mw.text.split|mw.text.split]] which, for ASCII-only text, can be up to 60 times faster.
:* 1 (or <code>text</code>) – the text to be split
:* 2 (or <code>pattern</code>) – the pattern to use when splitting the text. By default, this can be a [[:mw:Extension:Scribunto/Lua_reference_manual#Patterns|string library pattern]].
:* 3 (or <code>plain</code>) – if set to "true", <code>pattern</code> will be interpreted as plain text, not a pattern.
:* 4 (or <code>index</code>) – The chunk to return. If omitted, the first chunk will be returned. Can be set to a negative number to count from the end (e.g. <code>-1</code> will return the last chunk).
=== Examples and test page ===
There are [[:de:Wikipedia:Lua/Modul/Text/Test|tests available]] {{in lang|de}} to illustrate this in practice.
== {{Anchor|Lua}} Use in another Lua module ==
All of the above functions can be called from other Lua modules. Use <code>require()</code>; the below code checks for errors loading it:
<syntaxhighlight lang="lua">
local lucky, Text = pcall( require, "Module:Text" )
if type( Text ) == "table" then
Text = Text.Text()
else
-- In the event of errors, Text is an error message.
return "<span class=\"error\">" .. Text .. "</span>"
end
</syntaxhighlight>
You may then call:
* <code>Text.char( apply, again, accept )</code>
* <code>Text.concatParams( args, separator, format )</code>
* <code>Text.containsCJK( s )</code>
* <code>Text.removeDelimited( s )</code>
* <code>Text.getPlain( s )</code>
* <code>Text.isLatinRange( s )</code>
* <code>Text.isQuote( c )</code>
* <code>Text.listToText( table, format )</code>
* <code>Text.quote( s, lang, mode )</code>
* <code>Text.quoteUnquoted( s, lang, mode )</code>
* <code>Text.removeDiacritics( s )</code>
* <code>Text.sentenceTerminated( s )</code>
* <code>Text.split( text, pattern, plain )</code> – non Unicode version of [[:mw:Extension:Scribunto/Lua_reference_manual#mw.text.split|mw.text.split]]
* <code>Text.gsplit( text, pattern, plain )</code> – non Unicode version of [[:mw:Extension:Scribunto/Lua_reference_manual#mw.text.gsplit|mw.text.gsplit]]
* <code>Text.ucfirstAll( s )</code>
* <code>Text.uprightNonlatin( s )</code>
== Usage ==
This is a general library; use it anywhere.
== Mô đun phụ thuộc ==
* [[Module:Yesno]]
<!-- * [[Module:Text/data]] --- Lua patterns and information about quotes -->
== Xem thêm ==
<includeonly>{{Sandbox other||
<!-- THỂ LOẠI TẠI ĐÂY, CẢM ƠN. -->
<!-- Để bổ sung liên kết liên wiki, hãy ghé vào Wikidata. -->
}}</includeonly>
qwrvvoem7zs72bs3mgracezxuoz6n3l
Bản mẫu:Rỗng
10
10629
63447
2026-10-01T05:42:23Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “<noinclude>{{Tài liệu}}</noinclude>”
63447
wikitext
text/x-wiki
<noinclude>{{Tài liệu}}</noinclude>
223yh49yn7eokr1yunf12r3pb0bdwz3
Bản mẫu:Rỗng/doc
10
10630
63448
2026-10-01T05:42:39Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “{{Trang con tài liệu}} {{Sử dụng nhiều|4902}} {{tsh|^|Nul|Null}} == Cách dùng == Bản mẫu này không làm gì cả. Đúng hơn, nó sẽ loại bỏ các tham số của nó và đưa ra chuỗi rỗng. Nó rất hữu ích để lập trình các bản mẫu nâng cao và thường được sử dụng trong một bản mẫu ở bên phải dấu bằng. Nó cũng có thể được sử dụng trong một khuôn bản mẫu để đ…”
63448
wikitext
text/x-wiki
{{Trang con tài liệu}}
{{Sử dụng nhiều|4902}}
{{tsh|^|Nul|Null}}
== Cách dùng ==
Bản mẫu này không làm gì cả. Đúng hơn, nó sẽ loại bỏ các tham số của nó và đưa ra chuỗi rỗng.
Nó rất hữu ích để lập trình các bản mẫu nâng cao và thường được sử dụng trong một bản mẫu ở bên phải dấu bằng. Nó cũng có thể được sử dụng trong một khuôn bản mẫu để định hướng phân tích cú pháp niềng răng.
Nó cũng có thể được sử dụng để tạm thời vô hiệu hóa mã; không giống như <code><nowiki><!-- --></nowiki></code>, bản mẫu này có thể lồng được vào nhau: <code><nowiki>{{Rỗng|foo {{Rỗng|bar}} baz}}</nowiki></code> sẽ cho ra chuỗi rỗng, còn <code><nowiki><!-- foo <!-- bar --> baz --></nowiki></code> sẽ hiển thị ra <code><!-- foo <!-- bar --> baz --></code>.
==Thay thế==
{{Tl|Null}} đổi hướng đến đây. Cũng có thể sử dụng <code><nowiki>{{ns:0}}</nowiki></code> (từ ma thuật cho ra không gian tên Chính).
Nó có thể được sử dụng thay cho <code><nowiki><nowiki/></nowiki></code> để phá vỡ phân tích trình tự ký tự, ví dụ: <code><nowiki>{{nowrap|{''a''}{{null}}}}</nowiki></code> để buộc phần mềm coi dấu ngoặc đóng "}" đầu tiên trở thành một phần của tham số bản mẫu thay vì là kết thúc của biểu thức bản mẫu.
<TemplateData>{"description":"Một bản mẫu để hiển thị chuỗi null","params":{}}</TemplateData>
==Đổi hướng==
* {{tl|Void}}
* {{tl|Null}}
==Xem thêm==
* [[Bản mẫu:Text]] - một bản mẫu chỉ hiển thị tham số đầu tiên của nó không thay đổi.
<includeonly>
[[Thể loại:Bản mẫu định dạng]]
</includeonly>
g1l2qcv90sbxwv6uyrrdem501q2acnl
Bản mẫu:Void
10
10631
63449
2026-10-01T05:43:31Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Rỗng]]
63449
wikitext
text/x-wiki
#đổi [[Bản mẫu:Rỗng]]
bfz8nj5vxwesdm7anqjdar67tf9fnik
Mô đun:DemoTemplate
828
10632
63450
2026-10-01T05:44:31Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “require('strict') local newBuffer = require('Mô đun:OutputBuffer') local mt = {} function mt.__index(t, title) return function(frame) local getBuffer, print, printf = newBuffer() printf('{{%s', title) local ipairsArgs = {} for k,v in ipairs(frame.args) do if string.find(v, '=', 1, true) then break end ipairsArgs[k] = true printf('|%s', v) end for k,v in pairs(frame.args) do if not ipairsArgs[k] then printf('|%s=%s…”
63450
Scribunto
text/plain
require('strict')
local newBuffer = require('Mô đun:OutputBuffer')
local mt = {}
function mt.__index(t, title)
return function(frame)
local getBuffer, print, printf = newBuffer()
printf('{{%s', title)
local ipairsArgs = {}
for k,v in ipairs(frame.args) do
if string.find(v, '=', 1, true) then
break
end
ipairsArgs[k] = true
printf('|%s', v)
end
for k,v in pairs(frame.args) do
if not ipairsArgs[k] then
printf('|%s=%s', string.gsub(k, '=', '{{=}}'), v)
end
end
print('}}')
local buffer = getBuffer()
-- rather than calling expandTemplate with the title and args we have, call preprocess, so that our code example will always match our output, even in the cases of pipes or other things we should have escaped but didn't
return string.format('<code>%s</code> → %s', mw.text.nowiki(buffer), frame:preprocess(buffer))
end
end
return setmetatable({}, mt)
oqtgj5aer37uqdve1ttpw6d5q3c8lfr
Mô đun:OutputBuffer
828
10633
63451
2026-10-01T05:45:24Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “return function() local buffer = {} return function(sep) local b = buffer buffer = {} return table.concat(b, sep) end, function(text) buffer[#buffer + 1] = text end, function(...) buffer[#buffer + 1] = string.format(...) end end”
63451
Scribunto
text/plain
return function()
local buffer = {}
return function(sep)
local b = buffer
buffer = {}
return table.concat(b, sep)
end,
function(text)
buffer[#buffer + 1] = text
end,
function(...)
buffer[#buffer + 1] = string.format(...)
end
end
q99uj160az0ttaurr5k4mo7r9ep8nyi
Mô đun:OutputBuffer/tài liệu
828
10634
63452
2026-10-01T05:45:41Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “This module provides an easy and efficient way to generate lengthy strings. == Cách sử dụng == First, load the module. <syntaxhighlight lang="lua"> local newBuffer = require('Mô đun:OutputBuffer') </syntaxhighlight> Then, create the buffer and the functions that act on it. <syntaxhighlight lang="lua"> local getBuffer, print, printf = newBuffer() </syntaxhighlight> === getBuffer === <syntaxhighlight lang="lua"> local text = getBuffer(sep) <…”
63452
wikitext
text/x-wiki
This module provides an easy and efficient way to generate lengthy strings.
== Cách sử dụng ==
First, load the module.
<syntaxhighlight lang="lua">
local newBuffer = require('Mô đun:OutputBuffer')
</syntaxhighlight>
Then, create the buffer and the functions that act on it.
<syntaxhighlight lang="lua">
local getBuffer, print, printf = newBuffer()
</syntaxhighlight>
=== getBuffer ===
<syntaxhighlight lang="lua">
local text = getBuffer(sep)
</syntaxhighlight>
Returns the contents of the buffer, with an optional separator string <var>sep</var>.
=== print ===
<syntaxhighlight lang="lua">
print(s)
</syntaxhighlight>
Adds the string <var>s</var> to the buffer.
=== printf ===
<syntaxhighlight lang="lua">
printf(s, ...)
</syntaxhighlight>
Adds the string <var>s</var> to the buffer. The string is formatted with any subsequent arguments, following the rules used for [[mw:Extension:Scribunto/Lua reference manual#String.format|string.format]].
== Ví dụ ==
<syntaxhighlight lang="lua">
local newBuffer = require('Mô đun:OutputBuffer')
local p = {}
function p.main()
local getBuffer, print, printf = newBuffer()
print('Welcome to the English Wikipedia.')
printf('There are currently %d articles on this site.', mw.site.stats.articles)
return getBuffer(' ')
end
return p
-- Assuming this module's name is "TestModule", and that mw.site.stats.articles returns 4500000,
-- {{#gọi:TestModule|main}} would output:
-- "Welcome to the English Wikipedia. There are currently 4500000 articles on this site."
</syntaxhighlight>
<includeonly>{{#ifeq:{{SUBPAGENAME}}|chỗ thử | |
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Thể loại:Lua metamodules]]
}}</includeonly>
qcrvzswikde1r1yfsverxur8lj5kgx3
Bản mẫu:High-use
10
10635
63453
2026-10-01T05:47:07Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Đổi hướng đến [[Bản mẫu:Sử dụng nhiều]]
63453
wikitext
text/x-wiki
#đổi [[Bản mẫu:Sử dụng nhiều]]
cztgghqxo4i28th6e1ie9peevu16aae
Thành viên:Làm Việc Thiện/EditCounterOptIn.js
2
10636
63454
2026-10-01T05:49:12Z
Làm Việc Thiện
13742
[[w:vi:WP:TTL|←]]Trang mới: “Làm Việc Thiện”
63454
javascript
text/javascript
Làm Việc Thiện
i8grmd2vjvsfsypbzur9qmez9kcrd0d