diff --git a/files/ko/_redirects.txt b/files/ko/_redirects.txt index 49e20eecd93aa9..05a8d55c7ae665 100644 --- a/files/ko/_redirects.txt +++ b/files/ko/_redirects.txt @@ -354,9 +354,6 @@ /ko/docs/MDN/Contribute/Structures/Compatibility_tables /ko/docs/MDN/Structures/Compatibility_tables /ko/docs/MDN/Contribute/Structures/Macros /ko/docs/MDN/Structures/Macros /ko/docs/MDN/Contribute/Structures/Macros/Commonly-used_macros /ko/docs/MDN/Structures/Macros/Commonly-used_macros -/ko/docs/MDN/Contribute/Tools /ko/docs/MDN/Tools -/ko/docs/MDN/Contribute/Tools/KumaScript /ko/docs/MDN/Tools/KumaScript -/ko/docs/MDN/Contribute/Tools/KumaScript/Troubleshooting /ko/docs/MDN/Tools/KumaScript/Troubleshooting /ko/docs/MDN/Getting_started /ko/docs/MDN/Contribute/Getting_started /ko/docs/MDN/Guidelines/Best_practices /ko/docs/MDN/Guidelines/Conventions_definitions /ko/docs/MDN/Guidelines/Code_guidelines/Code_guidelines /ko/docs/MDN/Guidelines/Code_guidelines/General @@ -417,14 +414,12 @@ /ko/docs/Node_server_without_framework /ko/docs/Learn/Server-side/Node_server_without_framework /ko/docs/Notable_bugs_fixed_in_Firefox_3 /ko/docs/Mozilla/Firefox/Releases/3/Notable_bugs_fixed /ko/docs/Online_and_offline_events /ko/docs/Web/API/Navigator/onLine -/ko/docs/Plugins/Guide/Scripting_plugins /ko/docs/Glossary/Plugin /ko/docs/SVG /ko/docs/Web/SVG /ko/docs/SVG/Tutorial /ko/docs/Web/SVG/Tutorial /ko/docs/SVG:Tutorial /ko/docs/Web/SVG/Tutorial /ko/docs/SVG_In_HTML_Introduction /ko/docs/Web/SVG/Tutorial/SVG_In_HTML_Introduction /ko/docs/SVG_improvements_in_Firefox_3 /ko/docs/Mozilla/Firefox/Releases/3/SVG_improvements /ko/docs/SVG_in_Firefox /ko/docs/Web/SVG/SVG_1.1_Support_in_Firefox -/ko/docs/Scripting_Plugins /ko/docs/Glossary/Plugin /ko/docs/The_Importance_of_Correct_HTML_Commenting /ko/docs/Learn/HTML/Introduction_to_HTML/Getting_started#HTML_comments /ko/docs/The_XSLT_JavaScript_Interface_in_Gecko /ko/docs/Web/XSLT/XSLT_JS_interface_in_Gecko /ko/docs/The_XSLT_JavaScript_Interface_in_Gecko/Introduction /ko/docs/Web/XSLT/XSLT_JS_interface_in_Gecko/Introduction diff --git a/files/ko/_wikihistory.json b/files/ko/_wikihistory.json index 95a0fc8182d87a..fa8e310d4fcf38 100644 --- a/files/ko/_wikihistory.json +++ b/files/ko/_wikihistory.json @@ -721,13 +721,6 @@ "enfroze" ] }, - "Glossary/Plugin": { - "modified": "2019-01-16T15:11:14.478Z", - "contributors": [ - "teoli", - "Anonymous" - ] - }, "Glossary/Polyfill": { "modified": "2019-11-18T11:28:34.172Z", "contributors": [ @@ -2656,32 +2649,6 @@ "Netaras" ] }, - "MDN/Tools": { - "modified": "2020-09-30T16:51:24.922Z", - "contributors": [ - "chrisdavidmills", - "wbamberg", - "zziuni", - "frankradio", - "galcyurio", - "Vi01et", - "jswisher" - ] - }, - "MDN/Tools/KumaScript": { - "modified": "2020-11-30T12:49:14.835Z", - "contributors": [ - "chrisdavidmills", - "mfuji09" - ] - }, - "MDN/Tools/KumaScript/Troubleshooting": { - "modified": "2020-09-30T16:51:25.656Z", - "contributors": [ - "chrisdavidmills", - "Silvermist" - ] - }, "MDN/Yari": { "modified": "2019-09-06T03:29:26.311Z", "contributors": [ diff --git a/files/ko/glossary/dhtml/index.html b/files/ko/glossary/dhtml/index.html index f729271ac6ce73..58afb1c615b767 100644 --- a/files/ko/glossary/dhtml/index.html +++ b/files/ko/glossary/dhtml/index.html @@ -21,11 +21,6 @@
{{ DiscussionList("dev-ajax", "mozilla.dev.ajax") }} -
웹 기술은 문서화 및 코딩에 쓰이는 전문 용어와 약어 목록을 포함합니다. 이 용어 사전은 웹을 성공적으로 이해하고 구축하기 위해 알아야 할 단어와 약자의 정의를 제공합니다.
-{{GlossaryList({"split":"h3", "css":"multiColumnList"})}}
-용어 사전은 끝없이 진행 중인 작업입니다. 여러분은 새 항목을 작성하거나 기존 항목의 개선을 도울 수 있습니다. 가장 쉬운 시작법은 다음 버튼을 누르거나 아래에 제안된 용어 중 하나를 고르는 겁니다.
-{{GlossaryList({"terms":[], "filter":"notdefined", "css":"multiColumnList"})}}
-혹시 용어 사전에 기여하는 법에 관해 더 알고 싶다면, 용어 사전 문서화 상태 페이지를 확인하세요.
{{wiki.localize('System.API.page-generated-for-subpage')}}
diff --git a/files/ko/learn/common_questions/what_is_a_url/index.html b/files/ko/learn/common_questions/what_is_a_url/index.html index cc203af11bed20..13ed2eebbe1efc 100644 --- a/files/ko/learn/common_questions/what_is_a_url/index.html +++ b/files/ko/learn/common_questions/what_is_a_url/index.html @@ -67,7 +67,9 @@#SomewhereInTheDocument
는 자원 자체의 다른 부분에 대한 anchor(닻) 입니다. An anchor 는 일종의 자원 안에서 "bookmark" 입니다. 즉, "bookmarked" 지점에 위치된 내용을 보여주기 위해 브라우저에게 방향을 알려줍니다. 예를 들어, HTML 문서에서 브라우저는 anchor가 정의한 곳의 점을 스크롤할 것입니다; 비디오나 오디오 문서에서, 브라우저는 앵커가 나타내는 시간을 찾으려 할 것입니다. #뒤에 오는 부분은 가치가 없습니다. 또한, fragment identifier(부분 식별자) 라고 알려져, 요청이 서버에 절대 보내지지 않습니다.{{Note('URLs을 말하면 몇몇의 추가적인 부분과 규칙이 있다, 그러나 그것들은 일반적인 유저와 웹 개발자들에게 상관이 없다. 이것에 대해 걱정하지 말고, 완전한 기능적인 URLs를 구축하고 사용하기 위해 알 필요는 없다.')}}
+URLs을 말하면 몇몇의 추가적인 부분과 규칙이 있다, 그러나 그것들은 일반적인 유저와 웹 개발자들에게 상관이 없다. 이것에 대해 걱정하지 말고, 완전한 기능적인 URLs를 구축하고 사용하기 위해 알 필요는 없다.
+당신은 일반적인 우편 메일 주소처럼 URL을 생각할 것이다: 프로토콜은 사용하고 싶은 우편 서비스다, 도메인 이름은 도시나 마을이다, 그리고 포트 우편 번호이다; 경로는 메일이 전달되어야 하는 건물을 나타낸다; 파라미터는 건물 번호와 같은 정보를 나타낸다; 그리고, 마지막으로, anchor(앵커)는 메일을 받는 실제 사람을 나타낸다.
diff --git a/files/ko/learn/css/howto/generated_content/index.html b/files/ko/learn/css/howto/generated_content/index.html index 216305f889527a..1a76d24c7b8436 100644 --- a/files/ko/learn/css/howto/generated_content/index.html +++ b/files/ko/learn/css/howto/generated_content/index.html @@ -3,10 +3,9 @@ slug: Learn/CSS/Howto/Generated_content translation_of: Learn/CSS/Howto/Generated_content --- -{{ CSSTutorialTOC() }}
{{ previousPage("/en-US/docs/CSS/Getting_Started/Color", "색상") }}CSS 시작하기 안내서 9번째 장; 이번에는 CSS에서Document에 표시될 내용물을 추가 하는 방법을 알아보자. stylesheet를 수정해서 텍스트 내용과 이미지를 수정해 보자.
+CSS 시작하기 안내서 9번째 장; 이번에는 CSS에서Document에 표시될 내용물을 추가 하는 방법을 알아보자. stylesheet를 수정해서 텍스트 내용과 이미지를 수정해 보자.
CSS사용상의 가장 큰 장점은 document의 스타일과 내용물을 분리할 수 있도록 도와준다. 하지만 아직은 Document의 일부가 아니라 Stylesheet의 일부로서 존재해야 이치가 맞아 보이는 내용들도 있다.
stylesheet에 놓여진 내용물(content)은 텍스트나 이미지로 구성될 수 있다. Document의 구조와 밀접하게 연결된 내용물(content)은 stylesheet에 명시 할수 있다.
@@ -120,4 +119,4 @@{{ nextPage("/en-US/docs/CSS/Getting_Started/Lists", "리스트") }}Stylesheet에 내용물을 추가 하는 일반 방법으로 리스트로 표기하는 방법이 있다. 다음장에는 specify style for 리스트 elements를 위한 스타일 표기법에 대해 알아보자.
+Stylesheet에 내용물을 추가 하는 일반 방법으로 리스트로 표기하는 방법이 있다. 다음장에는 specify style for 리스트 elements를 위한 스타일 표기법에 대해 알아보자.
diff --git a/files/ko/mdn/guidelines/conventions_definitions/index.html b/files/ko/mdn/guidelines/conventions_definitions/index.html index 1386fbe2f3eebc..2bef526365335e 100644 --- a/files/ko/mdn/guidelines/conventions_definitions/index.html +++ b/files/ko/mdn/guidelines/conventions_definitions/index.html @@ -31,5 +31,4 @@H2 is the highest level allowed because H1 is reserved for the page title. If you need more than three or four levels of headers, consider breaking up the article into several smaller articles with a landing page, and linking them together using the following macros: {{TemplateLink("Next")}}, {{TemplateLink("Previous")}}, and {{TemplateLink("PreviousNext")}}.
+H2 is the highest level allowed because H1 is reserved for the page title. If you need more than three or four levels of headers, consider breaking up the article into several smaller articles with a landing page, and linking them together using the following macros: \{{Next}}
, \{{Previous}}
, and \{{PreviousNext}}
.
<title>
).\{{HTMLElement}}
macro, which creates a link to the page for that element. For example, writing \{{HTMLElement("title")}} produces "{{HTMLElement("title")}}". If you don't want to create a link, enclose the name in angle brackets and use the "Inline Code" style (e.g., <title>
).code font
. Additionally, put them in bold face
when the attribute is mentioned in association with an explanation of what it does, or the first time it's used in the article.\{{htmlattrdef}}
macro (e.g., \{{htmlattrdef("type")}}) for the definition term, so that it can be linked to from other pages easily by simply using the \{{htmlattrxref}}
macro (e.g., \{{htmlattrxref("attr","element")}}) to reference attribute definitions.<code>
to attribute values, and don't use quotation marks around string values, unless needed by the syntax of a code sample.type
attribute of an <input>
element is set to email
or tel
..."Use "elements" to refer to HTML and XML elements, rather than "tags". In addition, they should almost always be wrapped in "<>", and should be in the {{HTMLElement("code")}} style.
-When you reference a given element for the first time in a section, you should use the {{TemplateLink("HTMLElement")}} macro to create a link to the documentation for the element (unless you're writing within that element's reference document page).
+When you reference a given element for the first time in a section, you should use the \{{HTMLElement}}
macro to create a link to the documentation for the element (unless you're writing within that element's reference document page).
Use for content that is technically superseded, but still valid in context. For example, this might be an HTML element that is obsolete in HTML5, but still valid in HTML 4.01.
-You can also use the {{TemplateLink("obsolete_header")}} macro to put a prominent banner on the topic.
대개, 임의(arbitrary) 링크 생성을 위해 매크로를 사용할 필요가 없습니다. 링크를 만들기 위해 에디터 인터페이스의 링크 버튼을 사용하세요
\{{Glossary}}
매크로는 MDN 용어사전 내 지정된 용어(term) 항목에 대한 링크를 만듭니다. 이 매크로는 하나는 필수며 둘은 선택인 매개변수를 취합니다:
MDN의 특정 참고서(reference) 영역 내 페이지에 링크하는 다양한 매크로가 있습니다.
\{{cssxref}}
는 CSS 참고서 내 페이지에 링크합니다.\{{cssxref("cursor")}}
, 결과: {{ cssxref("cursor") }}.\{\{domxref("Node")\}\}
는 {{ domxref("Node") }}가 됩니다.\{\{htmlattrxref("lang")\}\}
은 이 링크를 만듭니다: {{htmlattrxref("lang")}}.
\{\{htmlattrxref("type","input")\}\}
은 이 링크를 만듭니다: {{htmlattrxref("type","input")}}.\{\{SVGAttr("d")\}\}
은 이 링크를 생성합니다: {{SVGAttr("d")}}.\{{domxref}}
는 DOM 참고서 내 페이지에 링크합니다; 끝에 괄호를 포함하는 경우, 템플릿은 함수 이름처럼 보이도록 표시해야 함을 압니다. 예를 들어, \{{domxref("document.getElementsByName()")}}은 {{ domxref("document.getElementsByName()") }}이 되고 \{\{domxref("Node")\}\}
는 {{ domxref("Node") }}가 됩니다.\{{event}}
는 DOM Event 참고서 내 페이지에 링크합니다, 예: \{{event("change")}}는 {{event("change")}}가 됩니다.\{{HTMLElement}}
는 HTML 참고서 내 HTML 요소(element)에 링크합니다.\{{htmlattrxref}}
는 HTML attribute, 전역 attribute 설명 (attribute명만 지정한 경우) 또는 (attribute명 및 요소명을 지정한 경우) 지정 요소와 관련된 attribute에 링크합니다. 예를 들어, \{\{htmlattrxref("lang")\}\}
은 이 링크를 만듭니다: {{htmlattrxref("lang")}}.
\{\{htmlattrxref("type","input")\}\}
은 이 링크를 만듭니다: {{htmlattrxref("type","input")}}.\{{jsxref}}
는 JavaScript 참고서 내 페이지에 링크합니다.\{{SVGAttr}}
은 특정 SVG attribute에 링크합니다. 예를 들어, \{\{SVGAttr("d")\}\}
은 이 링크를 생성합니다: {{SVGAttr("d")}}.\{{SVGElement}}
는 SVG 참고서 내 SVG 요소에 링크합니다.\{\{Bug(123456)\}\}
이 구문의 결과는: {{ Bug(123456) }}.\{\{WebkitBug(31277)\}\}
은 {{ WebkitBug(31277) }}를 삽입합니다.\{{bug}}
는 다음 구문을 사용하여 쉽게 bugzilla.mozilla.org의 버그에 링크할 수 있습니다: \{\{Bug(123456)\}\}
이 구문의 결과는: {{ Bug(123456) }}.\{{WebkitBug}}
는 WebKit 버그 데이터베이스 내 버그로 링크를 삽입합니다. 예를 들어, \{\{WebkitBug(31277)\}\}
은 {{ WebkitBug(31277) }}를 삽입합니다.\{{IRCLink}}
는 지정된 IRC 채널로의 링크를 삽입합니다, 하는 일과 IRC 클라이언트가 필요함을 말하는 툴팁을 갖춘.{{TemplateLink("Previous")}}, {{TemplateLink("Next")}} 및 {{TemplateLink("PreviousNext")}}는 연속글의 일부인 글을 위한 내비게이션 컨트롤을 제공합니다. 단방향 템플릿의 경우, 필요한 유일한 매개변수는 연속글의 이전 또는 다음 글의 위키 주소입니다. {{TemplateLink("PreviousNext")}}의 경우, 필요한 두 매개변수는 해당 글의 위키 주소입니다. 첫 번째 매개변수는 이전 글이고 두 번째는 다음 글입니다.
+\{{Previous}}
, \{{Next}}
및 \{{PreviousNext}}
는 연속글의 일부인 글을 위한 내비게이션 컨트롤을 제공합니다. 단방향 템플릿의 경우, 필요한 유일한 매개변수는 연속글의 이전 또는 다음 글의 위키 주소입니다. \{{PreviousNext}}
의 경우, 필요한 두 매개변수는 해당 글의 위키 주소입니다. 첫 번째 매개변수는 이전 글이고 두 번째는 다음 글입니다.
\{{EmbedLiveSample}}
은 페이지 상에 코드 샘플의 출력을 포함할 수 있습니다, 실시간 샘플에 설명된 대로.\{{LiveSampleLink}}
는 페이지 상에 코드 샘플의 출력을 포함하는 페이지로의 링크를 만듭니다, 실시간 샘플에 설명된 대로.\{{Embed_text}}
템플릿은 글 본문 내에 첨부된 텍스트 파일을 삽입할 수 있습니다. 이는 다운로드 가능하지만 글의 콘텐츠에 표시되기도 하는 코드 조각을 갖고 싶은 경우 유용합니다. 구문 강조를 위한 언어를 선택 사항으로 지정할 수도 있습니다; 지정하지 않은 경우, 텍스트는 강조 없이 삽입됩니다. 첫 번째 매개변수는 삽입할 첨부 파일명입니다; 두 번째는, 제공되는 경우 구문 강조기를 적용할 언어입니다, 가령 "javascript", "svg" 또는 "cpp".\{{EmbedSVG}}
는 SVG 이미지로서 첨부된 XML 파일을 삽입합니다, 페이지 위에다. 첨부된 SVG 파일의 파일명을 지정하세요. 소스 그리고 같은 파일의 렌더링된 출력을 표시하기 위해 \{{Embed_text}}
와 동시에 이를 사용할 수 있습니다.거의 모든 대규모 페이지 컬렉션 용 템플릿이 있습니다. 보통은 참고서/안내서(guide)/지도서(tutorial)의 메인 페이지로 다시 링크하고 (이동 경로 표시(breadcrumb)가 때때로 이를 수행할 수 없기에 종종 필요함) 글을 적절한 항목(category)에 둡니다.
\{{CSSRef}}
는 CSS 참고서 페이지 용 사이드바를 생성합니다.\{{HTMLRef}}
는 HTML 참고서 페이지 용 사이드바를 생성합니다.\{{APIRef}}
는 Web API 참고서 페이지 용 사이드바를 생성합니다.{{TemplateLink("optional_inline")}} 및 {{TemplateLink("ReadOnlyInline")}}은 API 문서에서 보통 객체의 속성 목록 또는 함수의 매개변수를 기술할 때 사용됩니다.
+\{{optional_inline}}
및 \{{ReadOnlyInline}}
은 API 문서에서 보통 객체의 속성 목록 또는 함수의 매개변수를 기술할 때 사용됩니다.
용법: \{{optional_inline()}}
또는 \{{ReadOnlyInline()}}
. 예:
{{TemplateLink("experimental_inline")}}은 API가 널리 구현되지 않고 앞으로 변경될 수 있음을 나타내는 인라인 표시를 삽입합니다.
+\{{experimental_inline}}
은 API가 널리 구현되지 않고 앞으로 변경될 수 있음을 나타내는 인라인 표시를 삽입합니다.
{{TemplateLink("deprecated_inline")}}은 공식으로 사라질 API의 사용을 삼가도록 인라인 사라질(deprecated) 표시를 삽입합니다. 주의: "사라질"은 더 이상 사용되지 않지만 여전히 기능함을 뜻합니다. 전혀 작동하지 않음을 뜻하는 경우, 용어 "안 씀(obsolete)"을 쓰세요.
+\{{deprecated_inline}}
은 공식으로 사라질 API의 사용을 삼가도록 인라인 사라질(deprecated) 표시를 삽입합니다. 주의: "사라질"은 더 이상 사용되지 않지만 여전히 기능함을 뜻합니다. 전혀 작동하지 않음을 뜻하는 경우, 용어 "안 씀(obsolete)"을 쓰세요.
모든 브라우저에 쓰일 수 있는 영역(HTML, API, JS, CSS, …)에는 매개변수를 사용하지 마세요.
@@ -164,7 +164,7 @@{{TemplateLink("obsolete_inline")}}은 공식으로 안 쓰는(obsolete) 예를 들어 함수, 메서드 또는 속성이 사용을 막기 위해 인라인 안 씀 표시를 삽입합니다.
+\{{obsolete_inline}}
은 공식으로 안 쓰는(obsolete) 예를 들어 함수, 메서드 또는 속성이 사용을 막기 위해 인라인 안 씀 표시를 삽입합니다.
모든 브라우저에 쓰일 수 있는 영역(HTML, API, JS, CSS, …)에는 매개변수를 사용하지 마세요.
@@ -189,16 +189,14 @@\{{Non-standard_header()}}
{{ Non-standard_header() }}\{{SeeCompatTable()}}
{{ SeeCompatTable() }}\{{deprecated_header()}}
{{ Deprecated_header() }}\{{deprecated_header("gecko5")}}
{{ Deprecated_header("gecko5") }} 모든 브라우저에 쓰일 수 있는 영역(HTML, APIs, JS, CSS, …)에는 매개변수를 사용하지 마세요.\{{obsolete_header()}}
{{ Obsolete_header() }}\{{obsolete_header("gecko30")}}
{{ Obsolete_header("gecko30") }} 모든 브라우저에 쓰일 수 있는 영역(HTML, APIs, JS, CSS, …)에는 매개변수를 사용하지 마세요.\{{SeeCompatTable}}
은 "브라우저 호환성" 절을 제공하는 페이지에 사용되어야 합니다. 예: \{{SeeCompatTable()}}
{{ SeeCompatTable() }}\{{deprecated_header}}
: \{{deprecated_header()}}
{{ Deprecated_header() }}\{{deprecated_header}}
: \{{deprecated_header("gecko5")}}
{{ Deprecated_header("gecko5") }} 모든 브라우저에 쓰일 수 있는 영역(HTML, APIs, JS, CSS, …)에는 매개변수를 사용하지 마세요.{{TemplateLink("AvailableInWorkers")}} 매크로 기능이 웹 워커 컨텍스트에서 이용 가능한지를 나타내는 지역화된 메모 상자를 삽입합니다.
+\{{AvailableInWorkers}}
매크로 기능이 웹 워커 컨텍스트에서 이용 가능한지를 나타내는 지역화된 메모 상자를 삽입합니다.
MDN은 진행 상황을 추적하고 콘텐츠를 관리하며 사이트의 최신 변경 사항을 따라하기 쉽게 해주는 많은 기능을 제공합니다.
- -{{LandingPageListSubpages}}
diff --git a/files/ko/mdn/tools/kumascript/index.html b/files/ko/mdn/tools/kumascript/index.html deleted file mode 100644 index 205ae0832468a4..00000000000000 --- a/files/ko/mdn/tools/kumascript/index.html +++ /dev/null @@ -1,472 +0,0 @@ ---- -title: KumaScript -slug: MDN/Tools/KumaScript -tags: - - Guide - - Kuma - - KumaScript - - MDN Meta - - NeedsContent - - NeedsTranslation - - Site-wide - - TopicStub -translation_of: MDN/Tools/KumaScript ---- -On the Kuma platform that powers MDN, the template system for automating aspects of content on the wiki is called KumaScript. KumaScript is powered by server-side JavaScript, implemented using Node.js. This article provides basic information on how to use KumaScript.
- -For a detailed overview and Q&A of KumaScript, watch the MDN dev team's KumaScript Fireside Chat (the meeting starts at 10 minutes into the video). KumaScript replaced DekiScript, which was the template language for MindTouch, the previous platform used by MDN.
- -KumaScript is used on MDN in embedded JavaScript templates. These templates can be invoked in document content by any MDN author, through the use of macros.
- -A script in KumaScript is a template, and each template is a file in the macros directory of the KumaScript repository on Github. A template looks like this:
- -<% for (var i = 0; i < $0; i++) { %> - Hello #<%= i %> -<% } %>- -
Invoking a template is done with a macro, which can be used anywhere in any wiki content. A macro looks like this:
- -\{{hello(3)}}- -
The output of the macro looks like this:
- -Hello #0 -Hello #1 -Hello #2- -
KumaScript templates are invoked in document content with macros, like this:
- -\{{templateName("arg0", "arg1", ..., "argN")}}- -
Macro syntax consists of these rules:
- -\{{
and \}}
characters.As a semi-experimental feature (not guaranteed to work), you can supply a JSON object for the first and only parameter, like so:
- -\{{templateName({ "Alpha": "one", "Beta": ["a", "b", "c"], "Foo": "https:\/\/mozilla.org\/" }
)}}
-
-The data from this macro is available in template code as an object in the $0
argument (e.g., $0.Alpha
, $0.Beta
, $0.Foo
). This also allows you to express complex data structures in macro parameters that are hard or impossible to do with a simple list of parameters.
Note that this parameter style is very picky — it must adhere to JSON syntax exactly, which has some requirements about escaping characters that are easy to miss (e.g., all forward slashes are escaped). When in doubt, try running your JSON through a validator.
- -Since the character sequence "\{{
" is used to indicate the start of a macro, this can be troublesome if you actually just want to use "\{{
" and "}}
" in a page. It will probably produce DocumentParsingError
messages.
In this case, you can escape the first brace with a backslash, like so: \\{{
Each KumaScript template is a file under the macros directory of KumaScript. You create and edit these files as you would the files of any open-source project on GitHub (see the KumaScript README for more information).
- -KumaScript templates are processed by an embedded JavaScript template engine with a few simple rules:
- -$0
, $1
, $2
, and so on. The entire list of parameters is also available in a template as the variable arguments
.<%= expr %>
— the value of a JavaScript expression is escaped for HTML before being included in output (e.g., characters like <
and >
are turned into <
and >
).<%- expr %>
— the value of a JavaScript expression is included in output without any escaping. (Use this if you want to dynamically build markup or use the results of another template that may include markup.)<% %>
block is interpreted as JavaScript. This can include loops, conditionals, etc.<% %>
block can ever contribute to the output stream. But, you can transition from JS mode to output mode using <% %>
—for example:
- <% for (var i = 0; i < $0; i++) { %> - Hello #<%= i %> -<% } %>- -
Note how the JavaScript code is contained in <% ... %>
, and output happens in the space between %> ... <%
. The for
loop in JS can begin with one <% %>
block, transition to output mode, and finish up in a second <% %>
JS block.
You can see a list of macros and how they are used on MDN on the macros dashboard.
- -Beyond the basics, the KumaScript system offers some advanced features.
- -When the wiki makes a call to the KumaScript service, it passes along some context on the current document that KumaScript makes available to templates as variables:
- -env.path
env.url
env.id
env.files
env.review_tags
env.locale
env.title
env.slug
env.tags
env.modified
env.cache_control
Cache-Control
header sent in the request for the current wiki document, useful in deciding whether to invalidate cachesEach file object has the following fields:
- -title
description
filename
size
author
mime
url
The env.tags
and env.review_tags
variables return arrays of tags. You can work with these in many ways, of course, but here are a couple of suggestions.
You can look to see if a specific tag exists on a page like this:
- -if (env.tags.indexOf("tag") != −1) { - // The page has the tag "tag" -} -- -
You can also iterate over all the tags on a page, like this:
- -env.tag.forEach(function(tag) { - // do whatever you need to do, such as: - if (tag.indexOf("a") == 0) { - // this tag starts with "a" - woohoo! - } -});- -
KumaScript offers some built-in methods and APIs for KumaScript macros. Macros can also use module.exports
to export new API methods.
API changes require updating the KumaScript engine or macros via a pull request to the KumaScript repository.
- -This manually-maintained documentation is likely to fall out of date with the code. With that in mind, you can always check out the latest state of built-in APIs in the KumaScript source. But here is a selection of useful methods exposed to templates:
- -md5(string)
template("name", ["arg0", "arg1", ..., "argN"])
Executes and returns the result of the named template with the given list of parameters.
- -Example: <%- template("warning", ["foo", "bar", "baz"]) %>
.
Example using the DOMxRef
macro: <%- template("DOMxRef", ["Event.bubbles", "bubbles"]) %>
.
This is a JavaScript function. So, if one of the parameters is an arg variable like $2, do not put it in quotes. Like this: <%- template("warning", [$1, $2, "baz"]) %>
. If you need to call another template from within a block of code, do not use <%
... %>
. Example: myvar = "<li>" + template("LXRSearch", ["ident", "i", $1]) + "</li>";
require(name)
module.exports
in the template is returned.<% const my_module = require('MyModule'); %>
.cacheFn(key, timeout, function_to_cache)
env.cache_control
to invalidate cache on no-cache
, which can be sent by a logged-in user hitting shift-refresh.request
mikeal/request
, a library for making HTTP requests. Using this module in KumaScript templates is not yet very friendly, so you may want to wrap usage in module APIs that simplify things.log.debug(string)
There are a set of built in API that are automatically loaded and made available to every template by the environment script.
- -For the most part, these attempt to provide stand-ins for legacy DekiScript features to ease template migration. But, going forward, these can be used to share common variables and methods between templates:
- -kuma.*
- KumaMDN.*
- MDN:Commonpage.*
- DekiScript:Pagestring.*
- DekiScript:Stringuri.*
- DekiScript:Uriweb.*
- DekiScript:Webwiki.*
- DekiScript:WikiYou can see the most up to date list of methods under kuma
from the KumaScript source code, but here are a few:
kuma.inspect(object)
log.debug()
. See also: node.js util.inspect()
.kuma.htmlEscape(string)
&, <, >, "
to &, <, >, "
, respectively.kuma.url
url
module.kuma.fetchFeed(url)
InsertFeedLinkList
Using the built-in require()
method, you can load a template as a module to share common variables and methods between templates. A module can be defined in a template like this:
<% -module.exports = { - add: function (a, b) { - return a + b; - } -} -%>- -
Assuming this template is saved under https://github.com/mdn/kumascript/tree/master/macros as MathLib.ejs
, you can use it in another template like so:
<% -var math_lib = require("MathLib"); -%> -The result of 2 + 2 = <%= math_lib.add(2, 2) %>- -
And, the output of this template will be:
- -The result of 2 + 2 = 4- -
A useful tip when debugging. You can use the log.debug()
method to output text to the scripting messages area at the top of the page that's running your template. Note that you need to be really sure to remove these when you're done debugging, as they're visible to all users! To use it, just do something like this:
<%- log.debug("Some text goes here"); %>- -
You can, of course, create more complex output using script code if it's helpful.
- -KumaScript templates are heavily cached to improve performance. For the most part, this works great to serve up content that doesn't change very often. But, as a logged-in user, you have two options to force a page to be regenerated, in case you notice issues with scripting:
- -Cache-Control: max-age=0
header.Cache-Control: no-cache
header.When using templates, it's common to open the template's code in a browser window to review the comments at the top, which are used to document the template, its parameters, and how to use it properly. To quickly access templates, you can create a Firefox search keyword, which gives you a shortcut you can type in the URL box to get to a template more easily.
- -To create a search keyword, open the bookmarks window by choosing "Show all bookmarks" in the Bookmarks menu, or by pressing Control+Shift+B (Command+Shift+B on Mac). Then from the utility ("Gear") menu in the Library window that appears, choose "New Bookmark...".
- -This causes the bookmark editing dialog to appear. Fill that out as follows:
- -https://github.com/mdn/kumascript/blob/master/macros/%s
The resulting dialog looks something like this:
- - - -Then click the "Add" button to save your new search keyword. From then on, typing your keyword, then a space, then the name of a macro will open that macro in your current tab. So if you used "t" as the keyword, typing t ListSubpages will show you the page at {{TemplateLink("ListSubpages")}}.
- -This section will list examples of common patterns for templates used on MDN, including samples of legacy DekiScript templates and their new KumaScript equivalents.
- -It bears repeating: To force templates used on a page to be reloaded after editing, hit Shift-Reload. Just using Reload by itself will cause the page contents to be regenerated, but using cached templates and included content. A Shift-Reload is necessary to invalidate caches beyond just the content of the page itself.
- -Sometimes, you'll see a scripting message like this when you load a page:
- -Kumascript service failed unexpectedly: <class 'httplib.BadStatusLine'>- -
This is probably a temporary failure of the KumaScript service. If you Refresh the page, the error may disappear. If that doesn't work, try a Shift-Refresh. If, after a few tries, the error persists - file an IT bug for Mozilla Developer Network to ask for an investigation.
- -On some pages, you'll see a scripting error like this:
- -Syntax error at line 436, column 461: Expected valid JSON object as the parameter of the preceding macro but...- -
If you edit the page, you'll probably see a macro like this at the bottom of the page:
- -\{{ wiki.languages({ "zh-tw": "zh_tw/Core_JavaScript_1.5_教學/JavaScript_概要", ... }
) }}
-
-To fix the problem, just delete the macro. Or, replace the curly braces on either side with HTML comments <!-- -->
to preserve the information, like so:
<!-- wiki.languages({ "zh-tw": "zh_tw/Core_JavaScript_1.5_教學/JavaScript_概要", ... }) -->- -
Because Kuma supports localization differently, these macros aren't actually needed any more. But, they've been left intact in case we need to revisit the relationships between localized pages. Unfortunately, it seems like migration has failed to convert some of them properly.
- -In KumaScript, the locale of the current document is exposed as an environment variable:
- -const lang = env.locale;- -
The env.locale
variable should be reliable and defined for every document.
You can read the contents of an attached file by using the mdn.getFileContent()
function, like this:
<% - let contents = mdn.getFileContent(fileUrl); - // ... do stuff with the contents ... -%> -- -
or
- -<%- mdn.getFileContent(fileObject); %> -- -
In other words, you may specify either the URL of the file to read or as a file object. The file objects for a page can be accessed through the array env.files
. So, for example, to embed the contents of the first file attached to the article, you can do this:
<%- mdn.getFileContent(env.files[0]); %> -- -
Note: You probably don't want to try to embed the contents of a non-text file this way, as the raw contents would be injected as text. This is meant to let you access the contents of text attachments.
-If the file isn't found, an empty string is returned. There is currently no way to tell the difference between an empty file and a nonexistent one. But if you're putting empty files on the wiki, you're doing it wrong.
- -Templates are not translated like wiki pages, rather any single template might be used for any number of locales.
- -So the main way to output content tailored to the current document locale is to pivot on the value of env.locale
. There are many ways to do this, but a few patterns are common in the conversion of legacy DekiScript templates:
The KumaScript equivalent of this can be achieved with simple if/else blocks, like so:
- -<% if ("fr" == env.locale) { %> -<%- template("CSSRef") %> « <a href="/fr/docs/Référence_CSS/Extensions_Mozilla">Référence CSS: Extensions Mozilla</a> -<% } else if ("ja" == env.locale) { %> -<%- template("CSSRef") %> « <a href="/ja/docs/CSS_Reference/Mozilla_Extensions">CSS リファレンス: Mozilla 拡張仕様</a> -<% } else if ("pl" == env.locale) { %> -<%- template("CSSRef") %> « <a href="/pl/docs/Dokumentacja_CSS/Rozszerzenia_Mozilli">Dokumentacja CSS: Rozszerzenia Mozilli</a> -<% } else if ("de" == env.locale) { %> -<%- template("CSSRef") %> « <a href="/de/docs/CSS_Referenz/Mozilla_CSS_Erweiterungen">CSS Referenz: Mozilla Erweiterungen</a> -<% } else { %> -<%- template("CSSRef") %> « <a href="/en-US/docs/CSS_Reference/Mozilla_Extensions">CSS Reference: Mozilla Extensions</a> -<% } %>- -
Depending on what text editor is your favorite, you may be able to copy & paste from the browser-based editor and attack this pattern with a series of search/replace regexes to get you most of the way there.
- -My favorite editor is MacVim, and a series of regexes like this does the bulk of the work with just a little manual clean up following:
- -%s#<span#^M<span#g -%s#<span lang="\(.*\)" .*>#<% } else if ("\1" == env.locale) { %>#g -%s#<span class="script">template.CSSxRef(#<%- template("CSSxRef", [# -%s#)</span> </span>#]) %> -- -
Your mileage may vary, and patterns change slightly from template to template. That's why the migration script was unable to just handle this automatically, after all.
- -Rather than switch between full chunks of markup, you can define a set of strings, switch them based on locale, and then use them to fill in placeholders in a single chunk of markup:
- -<% -var s_title = 'Firefox for Developers'; -switch (env.locale) { - case 'de': - s_title = "Firefox für Entwickler"; - break; - case 'fr': - s_title = "Firefox pour les développeurs"; - break; - case 'es': - s_title = "Firefox para desarrolladores"; - break; -}; -%> -<span class="title"><%= s_title %></span>- -
mdn.localString()
A recent addition to the MDN:Common
module is mdn.localString()
, used like this:
<% -var s_title = mdn.localString({ - "en-US": "Firefox for Developers", - "de": "Firefox für Entwickler", - "es": "Firefox para desarrolladores" -}); -%> -<span class="title"><%= s_title %></span>- -
This is more concise than the switch statement, and may be a better choice where a single string is concerned. However, if many strings need to be translated (e.g., as in {{TemplateLink("CSSRef")}}), a switch statement might help keep all the strings grouped by locale and more easily translated that way.
- -When the object does not have the appropriate locale, the value of "en-US" is used as the initial value.
- -빨갛고 무서운 상자 안에 든 KumaScript 에러는 매우 보기 불편합니다. 하지만 다행히도, MDN 계정이 있다면 누구나 문서를 편집해 이 문제를 해결할 수 있어요. When a page has an error it gets added to the list of documents with errors. Site editors go through this list regularly to find and fix errors. This article details the four types of KumaScript error, and some steps you can take to fix them.
-DocumentParsingError
errors appear when KumaScript has trouble understanding something in the document itself. The most common cause is a syntax error in a macro.
Check for:
- -\\{
\\
or \"
\{\{anch("top", "Back to top")}}
.</code>
tag may have appeared inside the macro code in the source code. Check the source view to see what's there, and remove any unnecessary styling.TemplateLoadingError
errors appear when KumaScript has trouble finding which macro to include on a page.
Check for:
- -Tip: You can make it quick and easy to jump to a specific macro by adding a search keyword to Firefox. See {{SectionOnPage("/en-US/docs/MDN/Contribute/Tools/KumaScript", "Using search keywords to open template pages")}} for a step-by-step guide to creating the search keyword for this.
-TemplateExecutionError
errors appear when KumaScript encounters an error in the macro. These errors can only be fixed by admin users and need to be reported as bugs.
Before reporting an error check to see that it hasn't already been fixed. You can do this by forcing KumaScript to give you a fresh copy of the page by holding down Shift while you refresh the page (Shift + Ctrl + R on Windows/Linux, Shift + Cmd + R on Mac).
- -If the error persists, report a bug, including the URL of the page and the text of the error.
- -This is the category errors end up in if they are not one of the other kinds of error.
- -Check for fixes and report persistent bugs like described under TemplateExecutionError.
diff --git a/files/ko/web/api/battery_status_api/index.html b/files/ko/web/api/battery_status_api/index.html index d82ba4775af19e..6a0e29748812ea 100644 --- a/files/ko/web/api/battery_status_api/index.html +++ b/files/ko/web/api/battery_status_api/index.html @@ -15,7 +15,7 @@ translation_of: Web/API/Battery_Status_API original_slug: WebAPI/Battery_Status --- -Battery API 만큼이나 자주 언급되는 Battery Status API는 시스템의 배터리 충전 상태에 대한 정보를 제공하고, 배터리 상태에 따라 발생하는 이벤트를 다룰 수 있도록 해 줍니다. 배터리가 얼마남지 않은 상황에서, 앱에서 배터리의 소모를 줄인다거나 배터리가 방전되기 전에 데이터를 저장하거나 하는 것들이 가능합니다.
diff --git a/files/ko/web/api/batterymanager/chargingtime/index.html b/files/ko/web/api/batterymanager/chargingtime/index.html index e9f86c8756c3ca..30ca97ea7c8bd3 100644 --- a/files/ko/web/api/batterymanager/chargingtime/index.html +++ b/files/ko/web/api/batterymanager/chargingtime/index.html @@ -8,8 +8,6 @@ - 참조 translation_of: Web/API/BatteryManager/chargingTime --- -{{APIRef("Battery API")}}
몇 초 단위로, 배터리가 완전히 충전될 때까지 남은 시간량을 가리킵니다.
diff --git a/files/ko/web/api/batterymanager/dischargingtime/index.html b/files/ko/web/api/batterymanager/dischargingtime/index.html index 60d772b7e0c9c2..29c23a237207ad 100644 --- a/files/ko/web/api/batterymanager/dischargingtime/index.html +++ b/files/ko/web/api/batterymanager/dischargingtime/index.html @@ -3,8 +3,6 @@ slug: Web/API/BatteryManager/dischargingTime translation_of: Web/API/BatteryManager/dischargingTime --- -몇 초 단위로, 배터리가 완전히 방전될 때까지 남은 시간량을 가리킵니다.
diff --git a/files/ko/web/api/document/alinkcolor/index.html b/files/ko/web/api/document/alinkcolor/index.html index 9cbfe4a0e152fe..4f65626177a19d 100644 --- a/files/ko/web/api/document/alinkcolor/index.html +++ b/files/ko/web/api/document/alinkcolor/index.html @@ -21,6 +21,5 @@Another alternative is document.body.aLink
, although this is deprecated in HTML 4.01 in favor of the CSS alternative.
Gecko supports both alinkColor
/:active
and {{ Cssxref(":focus") }}. Internet Explorer 6 and 7 support alinkColor
/:active
only for HTML anchor (<a>) links and the behavior is the same as :focus
under Gecko. There is no support for :focus
in IE.
{{ DOM0() }}
{{ languages( { "es": "es/DOM/document.alinkColor", "pl": "pl/DOM/document.alinkColor" } ) }}
diff --git a/files/ko/web/api/document/stylesheetsets/index.html b/files/ko/web/api/document/stylesheetsets/index.html index b69b728e897614..5af335e563f925 100644 --- a/files/ko/web/api/document/stylesheetsets/index.html +++ b/files/ko/web/api/document/stylesheetsets/index.html @@ -10,7 +10,7 @@ - Stylesheets translation_of: Web/API/Document/styleSheetSets --- -styleSheetSets
의 읽기 전용 속성은 현재 사용 가능한 모든 스타일 시트 세트의 live 리스트를 반환합니다.
더 이상 사용되지 않는 DOMObject
인터페이스는 객체 데이터 타입을 위한 기본 클래스로서 DOM 명세의 초기 버전에 사용되었습니다. 명세는 이제 간단히 JavaScript {{jsxref("Object")}} 타입을 사용합니다.
{{NoteStart}} 이 이벤트가 처리될때 {{domxref("Document.activeElement")}}의 값이 브라우저마다 다릅니다 ({{bug(452307)}}): IE10은 이 값을 포커스가 옮겨가는 엘리먼트에 추가하지만, 파이어폭스와 크롬은 도큐먼트의 body
에 추가합니다.{{NoteEnd}}
이 이벤트가 처리될때 {{domxref("Document.activeElement")}}의 값이 브라우저마다 다릅니다 ({{bug(452307)}}): IE10은 이 값을 포커스가 옮겨가는 엘리먼트에 추가하지만, 파이어폭스와 크롬은 도큐먼트의 body
에 추가합니다.
{{note("A real service worker implementation would use caching and onfetch rather than the deprecated XMLHttpRequest API. Those features are not used here so that you can focus on understanding Promises.")}}
+function imgLoad(url) { return new Promise(function(resolve, reject) { diff --git a/files/ko/web/css/text-shadow/index.html b/files/ko/web/css/text-shadow/index.html index 52647883a4e80e..fada4ea4c13c86 100644 --- a/files/ko/web/css/text-shadow/index.html +++ b/files/ko/web/css/text-shadow/index.html @@ -47,7 +47,7 @@값
<offset-x> <offset-y>
<offset-x>
specifies the horizontal distance; a negative value places the shadow to the left of the text. <offset-y>
specifies the vertical distance; a negative value places the shadow above the text. If both values are 0
, the shadow is placed directly behind the text, although it may be partly visible due to the effect of <blur-radius>
.<blur-radius>
HTML의 Applet 태그 (<applet>
) 는 자바 애플릿을 보이게 하는 곳에 쓰입니다.
HTML에서의 Font 요소 (<font>
) 는 본문의 글자 크기, 색상과 및면을 정의합니다.
<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형<input>
유형{{deprecated_inline}} {{obsolete_inline}} UTC 시간대에 기반한 날짜와 시간(시,분,초 그리고 초의 분수)을 입력하는 콘트롤입니다.
-{{HTMLRef}}{{Obsolete_Header}}
+{{HTMLRef}}
The HTML <keygen>
element exists to facilitate generation of key material, and submission of the public key as part of an HTML form. This mechanism is designed for use with Web-based certificate management systems. It is expected that the <keygen>
element will be used in an HTML form along with other information needed to construct a certificate request, and that the result of the process will be a signed certificate.
이 속성은 전역 속성을 포함합니다.
<object>
element. In HTML5, repeat the <object> element completely each that that the resource is reused.이 요소는 전역 속성을 포함합니다.
left
, aligning the content to the left of the cellchar
, this attribute is ignored.
1
; if its value is set to 0
, it extends until the end of the {{HTMLElement("colgroup")}}, even if implicitly defined, that the cell belongs to. Values higher than 1000 will be considered as incorrect and will be set to the default value (1).
- 1
; if its value is set to 0
, it extends until the end of the table section ({{HTMLElement("thead")}}, {{HTMLElement("tbody")}}, {{HTMLElement("tfoot")}}, even if implicitly defined, that the cell belongs to. Values higher than 65534 are clipped down to 65534.baseline
, which will put the text as close to the bottom of the cell as it is possible, but align it on the baseline of the characters instead of the bottom of them. If characters are all of the same size, this has the same effect as bottom
.off
: {{deprecated_inline()}} Deprecated since iOS 5.off
: The user must explicitly enter a value into this field for every use, or the document provides its own auto-completion method; the browser does not automatically complete the entry.If the autocomplete attribute is not specified on an textarea element, then the browser uses the autocomplete attribute value of the <textarea>
element's form owner. The form owner is either the form
element that this <textarea>
element is a descendant of or the form element whose id is specified by the form attribute of the input element. For more information, see the {{htmlattrxref("autocomplete", "form")}} attribute in {{HTMLElement("form")}}.
disabled
속성과는 다르게, readonly
속성은 사용자가 컨트롤을 클릭하거나 선택하는것을 막지 않습니다. readonly
컨트롤의 값은 여전히 폼과 함께 제출 됩니다..true
indicates that the element needs to have its spelling and grammar checked. The value default
indicates that the element is to act according to a default behavior, possibly based on the parent element's own spellcheck
value. The value false
indicates that the element should not be checked.cols
attribute must be specified.This element includes the global attributes.
left
, aligning the content to the left of the cellThis element includes the global attributes.
left
, aligning the content to the left of the cellschar
, this attribute is ignored.
baseline
, which will put the text as close to the bottom of the cell as it is possible, but align it on the baseline of the characters instead of the bottom of them. If characters are all of the size, this has the same effect as bottom
.separator
가 포획 괄호를 포함하는 정규표현식일 경우, separator
가 일치할 때마다 포획 괄호의 (정의되지 않은 경우도 포함한) 결과가 배열의 해당 위치에 포함됩니다.
{{Note("separator
가 배열일 경우 분할에 사용하기 전에 우선 문자열로 변환됩니다.")}}
separator
가 배열일 경우 분할에 사용하기 전에 우선 문자열로 변환됩니다.
split()
사용하기{{Note("빈 문자열이 주어졌을 경우 split()
은 빈 배열이 아니라 빈 문자열을 포함한 배열을 반환합니다. 문자열과 separator
가 모두 빈 문자열일 때는 빈 배열을 반환합니다.")}}
빈 문자열이 주어졌을 경우 split()
은 빈 배열이 아니라 빈 문자열을 포함한 배열을 반환합니다. 문자열과 separator
가 모두 빈 문자열일 때는 빈 배열을 반환합니다.
const myString = ''; const splits = myString.split(); diff --git a/files/ko/web/mathml/index.html b/files/ko/web/mathml/index.html index ffdb5bb22474b5..c0c351f6c71c21 100644 --- a/files/ko/web/mathml/index.html +++ b/files/ko/web/mathml/index.html @@ -30,8 +30,6 @@MathML 레퍼
커뮤니티
-
- Mozilla 포럼보기...
- {{ DiscussionList("dev-tech-mathml", "mozilla.dev.tech.mathml") }}- IRC 채널
- Wiki used by Mozilla 공헌자 위키
- W3C Math Home
diff --git a/files/ko/web/xslt/index.html b/files/ko/web/xslt/index.html index 9046e48c94e650..206f1a48d81528 100644 --- a/files/ko/web/xslt/index.html +++ b/files/ko/web/xslt/index.html @@ -28,20 +28,12 @@문서
{{ DiscussionList("dev-tech-xslt", "mozilla.dev.tech.xslt") }} -
-{{ Note("one") }} XSLT에 대한 이 내용은 [http://en.wikipedia.org/wiki/Xslt Wikipedia XSLT article]에서 얻었습니다. - -
Categories +
Categories
Interwiki Language Links