aboutsummaryrefslogtreecommitdiff
path: root/files/zh-tw/mozilla
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 21:46:22 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 21:46:22 -0500
commita065e04d529da1d847b5062a12c46d916408bf32 (patch)
treefe0f8bcec1ff39a3c499a2708222dcf15224ff70 /files/zh-tw/mozilla
parent218934fa2ed1c702a6d3923d2aa2cc6b43c48684 (diff)
downloadtranslated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.gz
translated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.bz2
translated-content-a065e04d529da1d847b5062a12c46d916408bf32.zip
update based on https://github.com/mdn/yari/issues/2028
Diffstat (limited to 'files/zh-tw/mozilla')
-rw-r--r--files/zh-tw/mozilla/add-ons/add-on_debugger/index.html78
-rw-r--r--files/zh-tw/mozilla/add-ons/add-on_guidelines/index.html117
-rw-r--r--files/zh-tw/mozilla/add-ons/amo/index.html9
-rw-r--r--files/zh-tw/mozilla/add-ons/amo/policy/index.html21
-rw-r--r--files/zh-tw/mozilla/add-ons/amo/policy/聯絡資訊/index.html24
-rw-r--r--files/zh-tw/mozilla/add-ons/firefox_for_android/api/index.html30
-rw-r--r--files/zh-tw/mozilla/add-ons/firefox_for_android/index.html70
-rw-r--r--files/zh-tw/mozilla/add-ons/sdk/builder/index.html13
-rw-r--r--files/zh-tw/mozilla/add-ons/sdk/guides/index.html115
-rw-r--r--files/zh-tw/mozilla/add-ons/sdk/high-level_apis/context-menu/index.html588
-rw-r--r--files/zh-tw/mozilla/add-ons/sdk/high-level_apis/index.html10
-rw-r--r--files/zh-tw/mozilla/add-ons/sdk/index.html82
-rw-r--r--files/zh-tw/mozilla/add-ons/sdk/low-level_apis/index.html20
-rw-r--r--files/zh-tw/mozilla/add-ons/themes/obsolete/index.html10
-rw-r--r--files/zh-tw/mozilla/adding_phishing_protection_data_providers/index.html66
-rw-r--r--files/zh-tw/mozilla/chrome_registration/index.html348
-rw-r--r--files/zh-tw/mozilla/connect/index.html126
-rw-r--r--files/zh-tw/mozilla/creating_mozsearch_plugins/index.html56
-rw-r--r--files/zh-tw/mozilla/firefox/developer_edition/index.html56
-rw-r--r--files/zh-tw/mozilla/firefox/developer_edition/reverting/index.html25
-rw-r--r--files/zh-tw/mozilla/firefox/multiprocess_firefox/index.html80
-rw-r--r--files/zh-tw/mozilla/firefox/privacy/index.html9
-rw-r--r--files/zh-tw/mozilla/firefox/privacy/tracking_protection/index.html74
-rw-r--r--files/zh-tw/mozilla/firefox/releases/3/firefox_3_css_improvement/index.html30
-rw-r--r--files/zh-tw/mozilla/gecko/chrome/api/browser_api/index.html158
-rw-r--r--files/zh-tw/mozilla/gecko/chrome/api/index.html14
-rw-r--r--files/zh-tw/mozilla/gecko/chrome/index.html15
-rw-r--r--files/zh-tw/mozilla/gecko/index.html65
-rw-r--r--files/zh-tw/mozilla/infallible_memory_allocation/index.html84
-rw-r--r--files/zh-tw/mozilla/introduction_to_layout_in_mozilla/index.html358
-rw-r--r--files/zh-tw/mozilla/javascript_code_modules/index.html102
-rw-r--r--files/zh-tw/mozilla/javascript_code_modules/promise.jsm/index.html144
-rw-r--r--files/zh-tw/mozilla/javascript_code_modules/promise.jsm/promise/index.html215
-rw-r--r--files/zh-tw/mozilla/js-ctypes/index.html97
-rw-r--r--files/zh-tw/mozilla/localization/index.html25
-rw-r--r--files/zh-tw/mozilla/localization/localizing_with_pontoon/index.html135
-rw-r--r--files/zh-tw/mozilla/mathml_project/index.html60
-rw-r--r--files/zh-tw/mozilla/mathml_project/screenshots/index.html14
-rw-r--r--files/zh-tw/mozilla/mathml_project/開頭/index.html91
-rw-r--r--files/zh-tw/mozilla/performance/about_colon_memory/index.html188
-rw-r--r--files/zh-tw/mozilla/performance/index.html130
-rw-r--r--files/zh-tw/mozilla/preferences/index.html48
-rw-r--r--files/zh-tw/mozilla/preferences/preferences_system/index.html40
-rw-r--r--files/zh-tw/mozilla/preferences/preferences_system/new_attributes/index.html55
-rw-r--r--files/zh-tw/mozilla/projects/index.html14
-rw-r--r--files/zh-tw/mozilla/projects/nss/getting_started_with_nss/index.html58
-rw-r--r--files/zh-tw/mozilla/projects/nss/index.html180
-rw-r--r--files/zh-tw/mozilla/projects/rhino/index.html27
-rw-r--r--files/zh-tw/mozilla/projects/rhino/license/index.html47
-rw-r--r--files/zh-tw/mozilla/qa/bug_writing_guidelines/index.html246
-rw-r--r--files/zh-tw/mozilla/qa/index.html251
-rw-r--r--files/zh-tw/mozilla/rust/index.html40
-rw-r--r--files/zh-tw/mozilla/tech/index.html14
-rw-r--r--files/zh-tw/mozilla/tech/xpcom/reference/index.html27
-rw-r--r--files/zh-tw/mozilla/tech/xpcom/reference/interface/index.html19
-rw-r--r--files/zh-tw/mozilla/tech/xpcom/reference/interface/nsicontentpolicy/index.html491
-rw-r--r--files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/howto/index.html199
-rw-r--r--files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/index.html10
-rw-r--r--files/zh-tw/mozilla/thunderbird/autoconfiguration/index.html113
-rw-r--r--files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/index.html26
-rw-r--r--files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/upgrading_thunderbird_in_the_enterprise/index.html260
-rw-r--r--files/zh-tw/mozilla/thunderbird/index.html79
-rw-r--r--files/zh-tw/mozilla/thunderbird/thunderbird_extensions/index.html135
-rw-r--r--files/zh-tw/mozilla/thunderbird/thunderbird_extensions/theme_packaging/index.html105
64 files changed, 0 insertions, 6436 deletions
diff --git a/files/zh-tw/mozilla/add-ons/add-on_debugger/index.html b/files/zh-tw/mozilla/add-ons/add-on_debugger/index.html
deleted file mode 100644
index 2b3106d6af..0000000000
--- a/files/zh-tw/mozilla/add-ons/add-on_debugger/index.html
+++ /dev/null
@@ -1,78 +0,0 @@
----
-title: 附加元件除錯工具箱
-slug: Mozilla/Add-ons/Add-on_Debugger
-translation_of: 'https://extensionworkshop.com/documentation/develop/debugging/'
----
-<p>{{AddonSidebar}}</p>
-
-<p>附加元件除錯工具箱提供 Firefox 工具箱中的部分工具,能在附加元件的作用範圍中除錯:</p>
-
-<ul>
- <li><a href="/en-US/docs/Tools/Debugger">JavaScript 除錯器</a>,可用以設定中斷點,或測試程式執行內部的各種狀態。</li>
- <li><a href="/en-US/docs/Tools/Web_Console">主控台</a>,可用以查閱 log 訊息,或者在附加元件的作用範圍中執行 JavaScript</li>
- <li><a href="/en-US/docs/Tools/Scratchpad">程式碼速記本</a>,可以在附加元件的作用範圍中執行 JavaScript,並另存為新檔</li>
-</ul>
-
-<p>需要重新啟動瀏覽器的 XUL overlay 附加元件無法使用附加元件除錯工具箱,這類的元件請使用<a href="/en-US/docs/Tools/Browser_Toolbox">瀏覽器工具箱</a>。</p>
-
-<p>請看這段影片,快速認識附加元件除錯工具箱:</p>
-
-<p>{{EmbedYouTube("KU3Xsck7qy0")}}</p>
-
-<h2 id="啟用附加元件除錯工具箱" style="line-height: 30px; font-size: 2.14285714285714rem;">啟用附加元件除錯工具箱</h2>
-
-<div>
-<p>如欲啟用附加元件除錯工具箱,您必須啟用 Firefox 裡的「啟用瀏覽器 chrome 與附加元件除錯工具箱」及「啟用遠端除錯」兩項設定。您可開啟<a href="https://developer.mozilla.org/en-US/docs/Tools/Tools_Toolbox">網頁工具箱</a>裡的<a href="https://developer.mozilla.org/en-US/docs/Tools/Tools_Toolbox#Settings">設定</a>,而後在「<a href="https://developer.mozilla.org/en-US/docs/Tools/Tools_Toolbox#Advanced_settings">進階設定</a>」一區中啟用上述選項。</p>
-</div>
-
-<h2 id="開啟附加元件除錯工具箱"><span style="font-size: 2.14285714285714rem;">開啟</span>附加元件除錯工具箱</h2>
-
-<p><em>註:如前所述,附加元件除錯工具</em>箱<em>是專供不需重新啟動、以 SDK 製作的附加元件使用。若想為其他類型的附加元件除錯,請使用<span style="line-height: 1.5;"><a href="https://developer.mozilla.org/en-US/docs/Tools/Browser_Toolbox">瀏覽器工具箱</a>裡的工具。</span></em></p>
-
-<p><span style="line-height: 1.5;">Now open the Add-on Manager. Next to the entry for your add-on you will see a button labeled "Debug". Click this button to launch the debugger.</span></p>
-
-<p>Next you'll see a dialog asking you to accept an incoming connection. Click "OK", and the debugger will start in a separate window. Note that sometimes the debugger window is hidden by the main Firefox window.</p>
-
-<p>{{EmbedYouTube("DvNpUVJcG_E")}}</p>
-
-<h2 id="使用附加元件除錯工具">使用附加元件除錯工具</h2>
-
-<p>The Add-on Debugger looks and behaves very much like the <a href="/en-US/docs/Tools/Browser_Toolbox">Browser Toolbox</a>, except that while the scope of the Browser Toolbox is the whole browser, the Add-on Debugger is focused on the specific add-on for which you launched it. Like the Browser Toolbox, a toolbar along the top lets you switch between a number of different tools. In Firefox 31 there's only one such tool, the JavaScript Debugger, but with Firefox 32 you also get the Console and Scratchpad.</p>
-
-<h3 id="JavaScript_除錯器">JavaScript 除錯器</h3>
-
-<p>This behaves just like the normal <a href="/en-US/docs/Tools/Debugger">JavaScript Debugger</a>, except its scope is the add-on rather than a web page. On the left-hand side it lists JavaScript sources:</p>
-
-<ul>
- <li>at the top is <code>bootstrap.js</code>: either the one you've written if your add-on is a manually written <a href="/en-US/Add-ons/Bootstrapped_extensions">bootstrapped add-on</a>, or the one included by the SDK if your add-on is an SDK add-on.</li>
- <li>next, if your add-on is an SDK add-on, you'll find your add-on's <code>main.js</code>, any <a href="/en-US/Add-ons/SDK/Guides/Module_structure_of_the_SDK#Local_Modules">local modules</a> shipping with your add-on, and any content scripts that are currently loaded</li>
- <li>next, all the SDK modules used directly or indirectly by your add-on</li>
-</ul>
-
-<h4 id="Content_scripts">Content scripts</h4>
-
-<p>Content scripts are only listed if and when they are loaded. So, if your Add-on <a href="/en-US/Add-ons/SDK/Guides/Content_Scripts#Loading_content_scripts">loads a content script</a> with <code>contentScriptFile</code>, the file will not appear in the debugger sources until you go to a page that loads the content script.</p>
-
-<p>If you set a breakpoint in a content script, it will not be active for instances of the content script which are loaded after the breakpoint is set.</p>
-
-<p>For example, suppose you have an add-on that attaches a content script to every tab the user loads. The content script adds a click handler to the page. As soon as you open a tab, this content script will be listed in the debugger. If you then set a breakpoint in the content script's click handler, then execution will pause whenever you click the page. But if you open a new tab, there are now two instances of the content script, and the breakpoint will not be enabled for the second instance You'll need to set a new breakpoint now if you want to it work for the second instance.</p>
-
-<p>We're investigating improvements to this in <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1016046">bug 1016046</a>.</p>
-
-<h3 id="主控台">主控台</h3>
-
-<p>The Console behaves just like the <a href="/en-US/docs/Tools/Web_Console">Web Console</a>, but its scope is the add-on rather than the web page.</p>
-
-<p>However, note that it actually runs in the context of the add-on's <code>bootstrap.js</code>, which may not be what you expect if your add-on uses the SDK: you won't see any objects defined in your add-on's <code>main.js</code>, and you won't see <code>require()</code> either. This issue is being tracked as <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1005193">bug 1005193</a>.</p>
-
-<p>You can execute Console statements in the context of <code>main.js</code> while execution is paused inside <code>main.js</code>.</p>
-
-<h3 id="程式碼速記本">程式碼速記本</h3>
-
-<p>The Scratchpad behaves just like the normal <a href="/en-US/docs/Tools/Scratchpad">Scratchpad</a>, but its scope is the add-on rather than the web page.</p>
-
-<p>Like the Console, the add-on Scratchpad runs in the context of the add-on's <code>bootstrap.js</code> even if the add-on uses the SDK, and as with the Console you can execute Scratchpad code in the context of <code>main.js</code> while execution is paused inside <code>main.js</code>.</p>
-
-<h2 id="為_chrome_或_about_頁面除錯">為 chrome: 或 about: 頁面除錯</h2>
-
-<p>從 Firefox 37 起,一般的<a href="/en-US/docs/Tools/Debugger">除錯工具</a>已經可以用來為 chrome: 及 about: 兩類頁面除錯,使用方法同一般網頁除錯。</p>
diff --git a/files/zh-tw/mozilla/add-ons/add-on_guidelines/index.html b/files/zh-tw/mozilla/add-ons/add-on_guidelines/index.html
deleted file mode 100644
index fe05866a87..0000000000
--- a/files/zh-tw/mozilla/add-ons/add-on_guidelines/index.html
+++ /dev/null
@@ -1,117 +0,0 @@
----
-title: Add-on guidelines
-slug: Mozilla/Add-ons/Add-on_guidelines
-translation_of: 'https://extensionworkshop.com/documentation/publish/add-on-policies/'
----
-<p>These add-on guidelines were created to foster an open and diverse add-on developer community while ensuring an excellent user experience. They apply to all add-ons and add-on updates regardless of where they are hosted, and also apply to customizations performed by installers that configure Firefox without using an add-on. Add-ons hosted on <a class="external text" href="https://addons.mozilla.org/" rel="nofollow">AMO</a> are subject to <a href="https://addons.mozilla.org/developers/docs/policies" title="https://addons.mozilla.org/developers/docs/policies">additional policies</a>.</p>
-<h2 id="Be_Transparent">Be Transparent</h2>
-<ul>
- <li>Add-ons must either be installed using the add-on web install system, or be approved by the user using the <a class="external text" href="https://blog.mozilla.org/addons/2011/08/11/strengthening-user-control-of-add-ons/" rel="nofollow">install opt-in dialog</a>.
- <ul>
- <li>We want our users to know what they are installing so that they are not unpleasantly surprised by changes they did not expect. We also want them to know what to remove if they decide not to keep it.</li>
- <li>Add-ons installed through application installers should <a class="external text" href="/en-US/docs/Adding_Extensions_using_the_Windows_Registry" rel="nofollow">use the Windows Registry</a> or equivalent global install methods so that Firefox displays the opt-in screen. The opt-in screen must not be tampered with in any way, including overlaying additional information or images on top of it.</li>
- </ul>
- </li>
- <li>Add-ons must always be possible to uninstall or disable from the Add-ons Manager.
- <ul>
- <li>Add-ons installed globally using the Windows registry or global extension directories cannot be uninstalled (<a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=640775" rel="nofollow">bug 640775</a>), but they can be disabled to the same effect.</li>
- </ul>
- </li>
- <li>Add-ons must use a <a class="external text" href="/en-US/docs/Install_manifests#id" rel="nofollow">single unique ID</a> during their entire lifetime.
- <ul>
- <li>Using the same ID for multiple products, or multiple IDs for a single product, can lead to problems with automatic updates as well as blocklisting conflicts. Add-ons may change their IDs due to ownership changes, as they commonly use an email address-like format (
- <i>
- e.g.,</i>
- personasplus@mozilla.com).</li>
- </ul>
- </li>
- <li>Add-ons must not use brand names, trademarks, or other terms in ways that deceive users. Using Mozilla trademarks must follow <a class="external text" href="http://www.mozilla.org/foundation/trademarks/policy.html" rel="nofollow">our trademark policy</a>.</li>
- <li>Add-ons should clearly communicate their intended purpose and active features, including features introduced through updates.
- <ul>
- <li>While we understand and support add-on developers who choose to monetize their products, this should not come at the expense of users' browsing experience. If an add-on inserts advertisements, affiliate codes, sponsored search results, or the like, into web pages, the user should be made aware of this when the add-on is installed. Likewise, if some features require payment to use, or require payment to remain active after a trial period, users should be made aware of this.</li>
- </ul>
- </li>
-</ul>
-<h2 id="Be_Respectful_to_Users">Be Respectful to Users</h2>
-<ul>
- <li>Add-ons must remove all introduced code, executables, and application configuration changes when they are uninstalled.
- <ul>
- <li>Uninstalling an add-on using the regular uninstall process should generally suffice. This guideline primarily applies to changes made to preferences such as the homepage, default search URL, network settings, and so forth. These preferences should be restored to their previous values when the add-on is uninstalled. Most add-ons can easily accomplish this by making such changes via a <a class="external text" href="/en-US/docs/Building_an_Extension#Defaults_Files" rel="nofollow">default preferences file</a>.</li>
- </ul>
- </li>
- <li>Add-ons must respect the users' choices and not make unexpected changes, or limit users' ability to revert them.
- <ul>
- <li>For instance, users generally do not expect an add-on to change the Firefox homepage. Asking users to opt-in to such extra changes is recommended.</li>
- <li>Making settings changes difficult or impossible to revert is prohibited. It's not allowed to block users or other add-ons or installers from changing any settings.</li>
- </ul>
- </li>
- <li>Add-ons should make it clear how private user data is being used.
- <ul>
- <li>Add-ons which send user data over the Internet should generally provide a Privacy Policy, ideally concise and easily readable.</li>
- </ul>
- </li>
- <li>Add-on developers should provide a mechanism for them to be contacted.
- <ul>
- <li>While developers are not required to provide a support channel for users, it is recommended. All add-on developers should have a contact form or public email address so that they can be contacted in case of emergencies, such as guideline violations that could lead to blocklisting.</li>
- </ul>
- </li>
-</ul>
-<h2 id="Be_Safe">Be Safe</h2>
-<ul>
- <li>Add-ons must not cause harm to users' data, system, or online identities.</li>
- <li>Add-ons must not transmit users' private data unsafely, or expose it to third parties unnecessarily.
- <ul>
- <li>Private data should always be sent over a secure connection. This includes browsing data such as visited URLs and bookmarks.</li>
- <li>Making the browser easier to fingerprint by adding text to the User-Agent string or adding custom headers is also a privacy concern, and should be avoided.</li>
- </ul>
- </li>
- <li>Add-ons must not create or expose application or system vulnerabilities.
- <ul>
- <li>Security bugs happen, but once discovered they need to be addressed immediately. A popular add-on with a security vulnerability is a valuable attack vector for hackers, and in such cases we will move quickly to blocklist the add-on if there is no prompt response from the developer.</li>
- </ul>
- </li>
- <li>Add-ons must not tamper with the application or blocklist update systems.</li>
- <li>Add-ons should not store any browsing data while in Private Browsing Mode.
- <ul>
- <li>It's worth stressing that PBM is about avoiding storing
- <i>
- local</i>
- data while browsing, not about sending data elsewhere. To learn more about PBM we recommend reading <a class="external text" href="http://ehsanakhgari.org/tag/privatebrowsing" rel="nofollow">Ehsan's blog posts</a> about it.</li>
- </ul>
- </li>
-</ul>
-<h2 id="Be_Stable">Be Stable</h2>
-<ul>
- <li>Add-ons must not cause hangs or crashes.</li>
- <li>Add-ons should not break or disable core application features.
- <ul>
- <li>This includes features like tabbed browsing, Private Browsing Mode, and the location bar. Add-ons that are specifically meant to do this are exempt.</li>
- </ul>
- </li>
- <li>Add-ons should not cause memory leaks, or unnecessarily consume large amounts of memory.</li>
- <li>Add-ons should not slow down the application or system significantly.</li>
- <li>Add-ons should not consume network resources to an extent that affects regular application usage.
- <ul>
- <li>Downloading large amounts of data without user awareness can significantly disrupt regular browsing, and may result in unexpected charges for users who have network usage limitations (notably on mobile).</li>
- </ul>
- </li>
-</ul>
-<h2 id="Exceptions">Exceptions</h2>
-<ul>
- <li>Add-ons can break some of these guidelines if that's their intended purpose and there isn't malicious intent (
- <i>
- e.g.,</i>
- a security exploit proof of concept).</li>
- <li>Add-ons deployed by administrators within workplaces, schools, kiosks, and so forth, are exempt from most guidelines.</li>
- <li>As add-ons can only run clean up code if they are uninstalled while Firefox is running and they are enabled, we do not require that they attempt to clean up after themselves when they are uninstalled under other circumstances. Application installers that configure Firefox without add-ons should revert any changes when uninstalled.</li>
- <li>Add-ons may leave behind preferences changes in private preference branches which do not affect Firefox when the add-on is not active, so that any previous add-on configuration is not lost if the user decides to re-install the add-on in the future.</li>
-</ul>
-<p>Other exceptions may apply.</p>
-<h2 id="Enforcement">Enforcement</h2>
-<p>Add-ons that do not follow these guidelines may qualify for blocklisting, depending on the extent of the violations. Guidelines qualified with the word
- <i>
- must</i>
- are especially important, and violations thereof will most likely result in a blocklisting nomination.</p>
-<p>The Add-ons Team will do their best to contact the add-on's developers and provide a reasonable time frame for the problems to be corrected before a block is put in place. If an add-on is considered malicious or its developers have proven unreachable or unresponsive, or in case of repeat violations, blocklisting may be immediate.</p>
-<p>Guideline violations should be <a class="external text" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Tech%20Evangelism&amp;component=Add-ons" rel="nofollow">reported via Bugzilla</a>, under Tech Evangelism &gt; Add-ons. Questions can be posted in the <a class="external text" href="irc://irc.mozilla.org/addons" rel="nofollow">#addons IRC channel</a>.</p>
-<p>These guidelines may change in the future. All updates will be announced in the <a class="external text" href="https://blog.mozilla.org/addons/" rel="nofollow">Add-ons Blog</a>.</p>
diff --git a/files/zh-tw/mozilla/add-ons/amo/index.html b/files/zh-tw/mozilla/add-ons/amo/index.html
deleted file mode 100644
index 3857ed65ca..0000000000
--- a/files/zh-tw/mozilla/add-ons/amo/index.html
+++ /dev/null
@@ -1,9 +0,0 @@
----
-title: AMO
-slug: Mozilla/Add-ons/AMO
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Add-ons/AMO
----
-<p>Content to be added.</p>
diff --git a/files/zh-tw/mozilla/add-ons/amo/policy/index.html b/files/zh-tw/mozilla/add-ons/amo/policy/index.html
deleted file mode 100644
index 8ac1738387..0000000000
--- a/files/zh-tw/mozilla/add-ons/amo/policy/index.html
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: AMO 政策
-slug: Mozilla/Add-ons/AMO/Policy
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Add-ons/AMO/Policy
----
-<p>{{AddonSidebar}}</p>
-
-<p>Mozilla 致力於確保套件的用戶與開發者,都有著良好的體驗。提交套件以前,請閱讀以下政策。</p>
-
-<dl>
- <dd></dd><dt><a href="/Mozilla/Add-ons/AMO/Policy/Agreement">Developer Agreement</a></dt>
-<dd>Effective January 5, 2016</dd> <dt><a href="/Mozilla/Add-ons/AMO/Policy/Reviews">Review Process</a></dt>
-<dd>Add-ons extend the core capabilities of Firefox, allowing users to modify and personalize their Web experience. A healthy add-on ecosystem, built on trust, is vital for developers to be successful and users to feel safe making Firefox their own. For these reasons, Mozilla requires all add-ons to comply with the following set of policies on acceptable practices. The below is not intended to serve as legal advice, nor is it intended to serve as a comprehensive list of terms to include in your add-on’s privacy policy.</dd> <dt><a href="/Mozilla/Add-ons/AMO/Policy/Featured">Featured Add-ons</a></dt>
-<dd>How up-and-coming add-ons become featured and what's involved in the process. </dd> <strong><a href="/zh-TW/Add-ons#Contact_us">聯絡我們</a></strong>
-
- <p>如何就這些套件的政策,與我們取得聯繫</p>
-
-</dl>
diff --git a/files/zh-tw/mozilla/add-ons/amo/policy/聯絡資訊/index.html b/files/zh-tw/mozilla/add-ons/amo/policy/聯絡資訊/index.html
deleted file mode 100644
index 7358e5f642..0000000000
--- a/files/zh-tw/mozilla/add-ons/amo/policy/聯絡資訊/index.html
+++ /dev/null
@@ -1,24 +0,0 @@
----
-title: 附加元件聯絡資訊
-slug: Mozilla/Add-ons/AMO/Policy/聯絡資訊
-translation_of: Mozilla/Add-ons#Contact_us
----
-<p>誠摯的感謝您連絡 Mozilla 附加元件團隊,淺請先閱讀本頁說明以確保您的訊息被正確的遞送。</p>
-
-<h4 id="附加元件支援服務">附加元件支援服務</h4>
-
-<p>若你需要特定附加元件的支援訊息,比如說 "我該如何使用這個附加元件?" 或 "它怎麼不能...?",請透過列於附加元建列表中的聯絡方式,聯絡該附加元件的開發者。</p>
-
-<h4 id="附加元件編輯者審閱">附加元件編輯者審閱</h4>
-
-<p>若你有任何關於某個附加元件的編輯者審閱(Editor's review)的疑問,或想回報政策違反,請 E-mail 至 <a href="mailto:amo-editors@mozilla.org">amo-editors@mozilla.org</a>。<strong>Almost all add-on reports fall under this category.</strong> Please be sure to include a link to the add-on in question and a detailed description of your question or comment.</p>
-
-<h4 id="Add-on_Security_Vulnerabilities">Add-on Security Vulnerabilities</h4>
-
-<p>If you have discovered a security vulnerability in an add-on, even if it is not hosted here, Mozilla is very interested in your discovery and will work with the add-on developer to correct the issue as soon as possible. Add-on security issues can be reported <a href="http://www.mozilla.org/projects/security/security-bugs-policy.html">confidentially</a> in <a href="https://bugzilla.mozilla.org/enter_bug.cgi?product=addons.mozilla.org&amp;component=Add-on%20Security&amp;maketemplate=Add-on%20Security%20Bug&amp;bit-23=1&amp;rep_platform=All&amp;op_sys=All">Bugzilla</a> or by emailing <a href="mailto:amo-admins@mozilla.org">amo-admins@mozilla.org</a>.</p>
-
-<h4 id="Website_Functionality_Development">Website Functionality &amp; Development</h4>
-
-<p>If you've found a problem with the site, we'd love to fix it. Please <a href="https://bugzilla.mozilla.org/enter_bug.cgi?product=addons.mozilla.org">file a bug report</a> in Bugzilla, including the location of the problem and how you encountered it.</p>
-
-<p><span class="comment seoSummary">How to get in touch with us regarding these policies or your add-on. </span></p>
diff --git a/files/zh-tw/mozilla/add-ons/firefox_for_android/api/index.html b/files/zh-tw/mozilla/add-ons/firefox_for_android/api/index.html
deleted file mode 100644
index a8e6ebf9e0..0000000000
--- a/files/zh-tw/mozilla/add-ons/firefox_for_android/api/index.html
+++ /dev/null
@@ -1,30 +0,0 @@
----
-title: API
-slug: Mozilla/Add-ons/Firefox_for_Android/API
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Add-ons/Legacy_Firefox_for_Android/API
----
-<p>There are a couple of differences between desktop Firefox and Firefox for Android that are particularly relevant to add-on developers:</p>
-
-<ul>
- <li>there is no visible XUL in the user interface, so you can't use XUL overlays to create your add-on's UI</li>
- <li>the <a href="https://developer.mozilla.org/en-US/docs/Code_snippets/Tabbed_browser" title="https://developer.mozilla.org/en-US/docs/Code_snippets/Tabbed_browser"><code>gBrowser</code></a> object does not exist, so you can't use <a href="https://developer.mozilla.org/en-US/docs/XUL/tabbrowser" title="https://developer.mozilla.org/en-US/docs/XUL/tabbrowser"><code>tabbrowser</code></a> to interact with browser tabs</li>
-</ul>
-
-<p>Instead, Firefox for Android provides its own APIs:</p>
-
-<ul>
- <li><a href="/en-US/docs/Extensions/Mobile/API/NativeWindow" title="/en-US/docs/DOM/en/Extensions/Mobile/API/NativeWindow"><code>NativeWindow</code></a> enables you to manipulate parts of the native Android UI</li>
- <li><a href="/en-US/docs/Extensions/Mobile/API/BrowserApp" title="/en-US/docs/Extensions/Mobile/API/BrowserApp"><code>BrowserApp</code></a> enables you to interact with browser tabs</li>
- <li><a href="/en-US/Add-ons/Firefox_for_Android/API/PageActions.jsm">PageActions.jsm</a> allows you to add buttons to the urlbar. {{fx_minversion_inline("34")}}</li>
- <li><a href="/en-US/docs/Extensions/Mobile/API/Prompt.jsm" title="/en-US/docs/Extensions/Mobile/API/Prompt.jsm"><code>Prompt.jsm</code></a> allows you to easily show native prompts, dialogs, menus, and lists</li>
- <li><a href="/en-US/docs/Extensions/Mobile/API/Notifications.jsm"><code>Notifications.jsm</code></a> allows you to handle system notifcations</li>
- <li><a href="/en-US/docs/Extensions/Mobile/API/Home.jsm" title="/en-US/docs/Extensions/Mobile/API/Prompt.jsm"><code>Home.jsm</code></a> allows you to customize the home page</li>
- <li><a href="/en-US/Add-ons/Firefox_for_Android/API/HomeProvider.jsm" title="/en-US/docs/Extensions/Mobile/API/Prompt.jsm"><code>HomeProvider.jsm</code></a> allows you to store data to show on the home page</li>
- <li><a href="/en-US/Add-ons/Firefox_for_Android/API/Accounts.jsm" title="/en-US/docs/Extensions/Mobile/API/Prompt.jsm"><code>Accounts.jsm</code></a> allows you to start the Firefox Account set-up process</li>
- <li><a href="/en-US/Add-ons/Firefox_for_Android/API/JavaAddonManager.jsm" title="/en-US/docs/Extensions/Mobile/API/Prompt.jsm"><code>JavaAddonManager.jsm</code></a> allows you to dynamically load and interface with compiled Java code. {{fx_minversion_inline("42")}}</li>
-</ul>
-
-<p>In these pages we've documented the main functions and properties exposed by these objects. To see all the details, refer to the code at <a class="external" href="http://mxr.mozilla.org/mozilla-central/source/mobile/android/chrome/content/browser.js" title="http://mxr.mozilla.org/mozilla-central/source/mobile/android/chrome/content/browser.js"><code>browser.js</code></a>.</p>
diff --git a/files/zh-tw/mozilla/add-ons/firefox_for_android/index.html b/files/zh-tw/mozilla/add-ons/firefox_for_android/index.html
deleted file mode 100644
index 8ade48ff37..0000000000
--- a/files/zh-tw/mozilla/add-ons/firefox_for_android/index.html
+++ /dev/null
@@ -1,70 +0,0 @@
----
-title: Extensions for Firefox for Android
-slug: Mozilla/Add-ons/Firefox_for_Android
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Add-ons/Legacy_Firefox_for_Android
----
-<p>Firefox for Android supports add-ons using the same <a href="/en-US/Add-ons" title="en/Extensions">extension system</a> used by all other Gecko-based applications. You can use the <a href="https://addons.mozilla.org/en-US/developers/docs/sdk/latest/dev-guide/tutorials/mobile.html">Add-on SDK</a> or build <a href="/en-US/Add-ons/Bootstrapped_extensions">manually bootstrapped restartless add-ons</a>. You can even develop traditional restart-required add-ons, although the other two approaches are preferable.</p>
-
-<p>Add-ons that work with desktop Firefox <strong>do not</strong> automatically work in Firefox for Android:</p>
-
-<ul>
- <li>There is no visible XUL in the UI, so you can't use an overlay to create the UI.</li>
- <li>Internal code and objects, like <code>gBrowser</code>, do not exist. Look at the Firefox on Android <a class="external" href="http://mxr.mozilla.org/mozilla-central/source/mobile/android/chrome/content/browser.js" title="http://mxr.mozilla.org/mozilla-central/source/mobile/android/chrome/content/browser.js"><code>browser.js</code></a> file to learn about the internals. Much of the same fundamental functionality exists.</li>
- <li>Services like <code>nsIPromptService</code> and <code>nsIAlertsService</code> are implemented to use native Android UI.</li>
- <li>There is a simple JavaScript object, called <a href="https://developer.mozilla.org/en/Extensions/Mobile/API/NativeWindow" title="en/Extensions/Mobile/NativeWindow"><code>NativeWindow</code></a>, that allows you to manipulate parts of the native Android UI.</li>
-</ul>
-
-<p>The following articles provide help with developing extensions for Firefox on Android. In addition, please refer to the <a class="internal" href="/en-US/Add-ons" title="En/Extensions">general extension documentation</a> that applies to all Mozilla applications.</p>
-
-<div class="column-container">
-<div class="column-half">
-<h3 id="Tutorials">Tutorials</h3>
-
-<dl>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/Walkthrough">Walkthrough</a></dt>
- <dd>Developing, packaging and installing a simple add-on for Firefox for Android.</dd>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/Firefox_Hub_Walkthrough">Firefox Hub Walkthrough</a></dt>
- <dd>How to develop a Firefox Hub add-on to add content to the Firefox for Android home page.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials/Mobile_development">Add-on SDK</a></dt>
- <dd>How to develop Firefox for Android add-ons using the Add-on SDK.</dd>
-</dl>
-
-<h3 id="Sample_code">Sample code</h3>
-
-<dl>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/Code_snippets">Code Snippets</a></dt>
- <dd>Code samples for common tasks.</dd>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/Initialization_and_Cleanup">Initialization and Cleanup</a></dt>
- <dd>How to initialize your add-on when it is started and clean up when it is shut down.</dd>
- <dt><a href="https://github.com/mozilla/firefox-for-android-addons">Firefox for Android Add-ons Github Repo</a></dt>
- <dd>A collection of JS modules, sample code, and boilerplate repos to help you build add-ons for Firefox for Android.</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<h3 id="API_reference">API reference</h3>
-
-<dl>
- <dt><a class="internal" href="/en-US/Add-ons/Firefox_for_Android/API/NativeWindow">NativeWindow</a></dt>
- <dd>Create native Android UI widgets.</dd>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/API/BrowserApp">BrowserApp</a></dt>
- <dd>Access browser tabs and the web content they host.</dd>
- <dt><a class="internal" href="/en-US/Add-ons/Firefox_for_Android/API/Prompt.jsm">Prompt.jsm</a></dt>
- <dd>Show native Android dialogs.</dd>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/API/HelperApps.jsm">HelperApps.jsm</a></dt>
- <dd>Query and launch native apps installed on the system.</dd>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/API/Notifications.jsm">Notifications.jsm</a></dt>
- <dd>Use extended properties for Android system notifications.</dd>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/API/Home.jsm">Home.jsm</a></dt>
- <dd>Customize the home page.</dd>
- <dt><a href="/en-US/Add-ons/Firefox_for_Android/API/HomeProvider.jsm">HomeProvider.jsm</a></dt>
- <dd>Store data to display on the home page.</dd>
- <dt> </dt>
-</dl>
-</div>
-</div>
-
-<p> </p>
diff --git a/files/zh-tw/mozilla/add-ons/sdk/builder/index.html b/files/zh-tw/mozilla/add-ons/sdk/builder/index.html
deleted file mode 100644
index f7dc93a009..0000000000
--- a/files/zh-tw/mozilla/add-ons/sdk/builder/index.html
+++ /dev/null
@@ -1,13 +0,0 @@
----
-title: Builder
-slug: Mozilla/Add-ons/SDK/Builder
-translation_of: Archive/Add-ons/Add-on_SDK/Builder
----
-<p>Add-on Builder 是 Web-based 的開發環境,讓開發者能以 SDK API 來開發附加元件,而不必使用 <code>cfx</code> 命令列工具。Add-on Builder 已經於 2014 年 4 月 1 日下架,而原本的網址「builder.addons.mozilla.org」則轉至此頁。<br>
- <br>
- 若您過去使用 Builder 來開發採用 SDK 的附加元件,便已獲得絕大部分以 SDK 直接開發的必備知識。Builder 中的 <a href="/Mozilla/Add-ons/SDK/High-Level_APIs">high-level</a> 與 <a href="/Mozilla/Add-ons/SDK/Low-Level_APIs">low-level</a> API,就跟 SDK 裡的一模一樣。改用 SDK 很簡單:</p>
-<ul>
- <li><a href="/Mozilla/Add-ons/SDK/Tutorials/Installation">首先在您的電腦上安裝 SDK</a></li>
- <li>閱讀<a href="/Mozilla/Add-ons/SDK/Tutorials/Getting_started">入門文件</a>與 <a href="/Mozilla/Add-ons/SDK/Tools/cfx"><code>cfx</code> 參考文件</a>,學習使用 cfx 命令列工具</li>
- <li>深入了解 <a href="/Mozilla/Add-ons/SDK/Tools/package_json">package.json</a> 檔,以便設定附加原件的屬性</li>
-</ul>
diff --git a/files/zh-tw/mozilla/add-ons/sdk/guides/index.html b/files/zh-tw/mozilla/add-ons/sdk/guides/index.html
deleted file mode 100644
index f4e37d9e10..0000000000
--- a/files/zh-tw/mozilla/add-ons/sdk/guides/index.html
+++ /dev/null
@@ -1,115 +0,0 @@
----
-title: Guides
-slug: Mozilla/Add-ons/SDK/Guides
-translation_of: Archive/Add-ons/Add-on_SDK/Guides
----
-<p>This page lists more theoretical in-depth articles about the SDK.</p>
-<hr>
-<h3 id="Contributor's_guide"><a name="contributors-guide">Contributor's guide</a></h3>
-<div class="column-container">
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/Getting_Started">Getting Started</a></dt>
- <dd>
- Learn how to contribute to the SDK: getting the code, opening/taking a bug, filing a patch, getting reviews, and getting help.</dd>
- <dt>
- <a href="Guides/Modules">Modules</a></dt>
- <dd>
- Learn about the module system used by the SDK (which is based on the CommonJS specification), how sandboxes and compartments can be used to improve security, and about the built-in SDK module loader, known as Cuddlefish.</dd>
- <dt>
- <a href="Guides/Classes_and_Inheritance">Classes and Inheritance</a></dt>
- <dd>
- Learn how classes and inheritance can be implemented in JavaScript, using constructors and prototypes, and about the helper functions provided by the SDK to simplify this.</dd>
- </dl>
- </div>
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/Private_Properties">Private Properties</a></dt>
- <dd>
- Learn how private properties can be implemented in JavaScript using prefixes, closures, and WeakMaps, and how the SDK supports private properties by using namespaces (which are a generalization of WeakMaps).</dd>
- <dt>
- <a href="Guides/Content_Processes">Content Processes</a></dt>
- <dd>
- The SDK was designed to work in an environment where the code to manipulate web content runs in a different process from the main add-on code. This article highlights the main features of that design.</dd>
- </dl>
- </div>
-</div>
-<hr>
-<h3 id="SDK_infrastructure"><a name="sdk-infrastructure">SDK infrastructure</a></h3>
-<div class="column-container">
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/Module_structure_of_the_SDK">Module structure of the SDK</a></dt>
- <dd>
- The SDK, and add-ons built using it, are of composed from reusable JavaScript modules. This explains what these modules are, how to load modules, and how the SDK's module tree is structured.</dd>
- <dt>
- <a href="Guides/SDK_API_Lifecycle">SDK API lifecycle</a></dt>
- <dd>
- Definition of the lifecycle for the SDK's APIs, including the stability ratings for APIs.</dd>
- </dl>
- </div>
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/Program_ID">Program ID</a></dt>
- <dd>
- The Program ID is a unique identifier for your add-on. This guide explains how it's created, what it's used for and how to define your own.</dd>
- <dt>
- <a href="Guides/Firefox_Compatibility">Firefox compatibility</a></dt>
- <dd>
- Working out which Firefox releases a given SDK release is compatible with, and dealing with compatibility problems.</dd>
- </dl>
- </div>
-</div>
-<hr>
-<h3 id="SDK_idioms"><a name="sdk-idioms">SDK idioms</a></h3>
-<div class="column-container">
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/Working_with_Events">Working With Events</a></dt>
- <dd>
- Write event-driven code using the the SDK's event emitting framework.</dd>
- <dt>
- <a href="Guides/Content_Scripts">Content scripts guide</a></dt>
- <dd>
- An overview of content scripts, including: what they are, what they can do, how to load them, how to communicate with them.</dd>
- </dl>
- </div>
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/Two_Types_of_Scripts">Two Types of Scripts</a></dt>
- <dd>
- This article explains the differences between the APIs available to your main add-on code and those available to content scripts.</dd>
- </dl>
- </div>
-</div>
-<hr>
-<h3 id="XUL_migration"><a name="xul-migration">XUL migration</a></h3>
-<div class="column-container">
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/XUL_Migration_Guide">XUL Migration Guide</a></dt>
- <dd>
- Techniques to help port a XUL add-on to the SDK.</dd>
- <dt>
- <a href="Guides/XUL_vs_SDK">XUL versus the SDK</a></dt>
- <dd>
- A comparison of the strengths and weaknesses of the SDK, compared to traditional XUL-based add-ons.</dd>
- </dl>
- </div>
- <div class="column-half">
- <dl>
- <dt>
- <a href="Guides/Porting_the_Library_Detector">Porting Example</a></dt>
- <dd>
- A walkthrough of porting a relatively simple XUL-based add-on to the SDK.</dd>
- </dl>
- </div>
-</div>
-<p> </p>
diff --git a/files/zh-tw/mozilla/add-ons/sdk/high-level_apis/context-menu/index.html b/files/zh-tw/mozilla/add-ons/sdk/high-level_apis/context-menu/index.html
deleted file mode 100644
index 42c5e0ca85..0000000000
--- a/files/zh-tw/mozilla/add-ons/sdk/high-level_apis/context-menu/index.html
+++ /dev/null
@@ -1,588 +0,0 @@
----
-title: context-menu
-slug: Mozilla/Add-ons/SDK/High-Level_APIs/context-menu
-translation_of: Archive/Add-ons/Add-on_SDK/High-Level_APIs/context-menu
----
-<div class="note">
- <p>Stable</p>
-</div>
-<p><span class="seoSummary">加入選單項目、子選單、選單分隔線到頁面右鍵選單。</span></p>
-<h2 id="用法">用法</h2>
-<p>Instead of manually adding items when particular contexts occur and then removing them when those contexts go away, you <em>bind</em> items to contexts, and the adding and removing is automatically handled for you. Items are bound to contexts in much the same way that event listeners are bound to events. When the user invokes the context menu, all of the items bound to the current context are automatically added to the menu. If no items are bound, none are added. Likewise, any items that were previously in the menu but are not bound to the current context are automatically removed from the menu. You never need to manually remove your items from the menu unless you want them to never appear again.</p>
-<p>For example, if your add-on needs to add a context menu item whenever the user visits a certain page, don't create the item when that page loads, and don't remove it when the page unloads. Rather, create your item only once and supply a context that matches the target URL.</p>
-<p>Context menu items are displayed in the order created or in the case of sub menus the order added to the sub menu. Menu items for each add-on will be grouped together automatically. If the total number of menu items in the main context menu from all add-ons exceeds a certain number (normally 10 but configurable with the <code>extensions.addon-sdk.context-menu.overflowThreshold</code> preference) all of the menu items will instead appear in an overflow menu to avoid making the context menu too large.</p>
-<h3 id="Specifying_Contexts">Specifying Contexts</h3>
-<p>As its name implies, the context menu should be reserved for the occurrence of specific contexts. Contexts can be related to page content or the page itself, but they should never be external to the page.</p>
-<p>For example, a good use of the menu would be to show an "Edit Image" item when the user right-clicks an image in the page. A bad use would be to show a submenu that listed all the user's tabs, since tabs aren't related to the page or the node the user clicked to open the menu.</p>
-<h4 id="The_Page_Context">The Page Context</h4>
-<p>First of all, you may not need to specify a context at all. When a top-level item does not specify a context, the page context applies. An item that is in a submenu is visible unless you specify a context.</p>
-<p>The <em>page context</em> occurs when the user invokes the context menu on a non-interactive portion of the page. Try right-clicking a blank spot in this page, or on text. Make sure that no text is selected. The menu that appears should contain the items "Back", "Forward", "Reload", "Stop", and so on. This is the page context.</p>
-<p>The page context is appropriate when your item acts on the page as a whole. It does not occur when the user invokes the context menu on a link, image, or other non-text node, or while a selection exists.</p>
-<h4 id="宣告式場景條件(Declarative_Contexts)">宣告式場景條件(Declarative Contexts)</h4>
-<p>當你藉由設定 <code>context</code> 屬性(該屬性為: 傳給 constructor 的選項物件之屬性)來新增選單項目時,你可以指定一些簡單的宣告式場景條件, 如下:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "My Menu Item",
- context: cm.URLContext("*.mozilla.org")
-});</pre>
-<table class="standard-table">
- <tbody>
- <tr>
- <th>Constructor</th>
- <th>選單項目出現的條件</th>
- </tr>
- <tr>
- <td><code>PageContext() </code></td>
- <td>當場景為網頁時.</td>
- </tr>
- <tr>
- <td><code>SelectionContext() </code></td>
- <td>當使用者在網頁上選取項目時.</td>
- </tr>
- <tr>
- <td><code>SelectorContext(selector) </code></td>
- <td>當選單在符合下述條件之一的節點上顯示: <code>selector</code>匹配, CSS 選擇器, 或 其祖先節點匹配選擇器. <code>selector</code>可以有多個(以逗點分隔), 例如, <code>"a[href], img"</code>.</td>
- </tr>
- <tr>
- <td><code>URLContext(matchPattern) </code></td>
- <td>特定網址的網頁. <code>matchPattern</code> is a match pattern string or an array of match pattern strings. 當 <code>matchPattern</code> 是陣列, 網址符合任何陣列元素之一時. These are the same match pattern strings that you use with the <a href="/en-US/Add-ons/SDK/High-Level_APIs/page-mod"><code>page-mod</code></a> <code>include</code> property. <a href="/en-US/Add-ons/SDK/Low-Level_APIs/util_match-pattern">Read more about patterns</a>.</td>
- </tr>
- <tr>
- <td><code>PredicateContext(predicateFunction)</code></td>
- <td>當選單被觸發時,<code>predicateFunction</code> 函數被呼叫,若函數傳回值為真值,則選單項目顯示。這函數傳入一物件,物件有著描述選單觸發場景條件的屬性.</td>
- </tr>
- <tr>
- <td>array</td>
- <td>An array of any of the other types. This context occurs when all contexts in the array occur.</td>
- </tr>
- </tbody>
-</table>
-<p>選單項目也有 <code>context</code> 屬性,可以用在新增或移除宣告式場景條件,當建構後. 例如:</p>
-<pre class="brush: js">var context = require("sdk/context-menu").SelectorContext("img");
-myMenuItem.context.add(context);
-myMenuItem.context.remove(context);</pre>
-<p>當選單項目被指定了多個場景條件, 選單項目顯示於所有場景條件皆成立時.</p>
-<h3 id="In_Content_Scripts">In Content Scripts</h3>
-<p>宣告式場景條件很容易使用,但功能不強. 舉例來說, 你希望選單項目出現的條件為:「有著至少一張圖片的頁面」, 但宣告式場景條件並不能達成這一點.</p>
-<p>當你需要對選單項目的出現時機有著更多的控制, 你可以使用 content scripts. 如同 SDK 的其他 APIs 一樣, <code>context-menu</code> API 使用 <a href="/en-US/Add-ons/SDK/Guides/Content_Scripts">content scripts</a> 以讓你的附加元件與瀏覽器中的頁面互動. 在最上層選單的每一個選單項目可以使用 content script.</p>
-<p>每當選單即將顯示時,一個特殊事件,其名為 <code>"context"</code> ,觸發於你的 content scripts. 如果你為這個事件註冊了偵聽(listener)函數,當函數傳回真值時, 與偵聽函數關聯的選單項目會被顯示於選單中.</p>
-<p>下例中, 當選單觸發於「有著至少一張圖片的頁面」時,顯示選單項目.</p>
-<pre class="brush: js">require("sdk/context-menu").Item({
- label: "This Page Has Images",
- contentScript: 'self.on("context", function (node) {' +
- ' return !!document.querySelector("img");' +
- '});'
-});</pre>
-<p>需要注意的是偵聽函數有一個參數叫 <code>node</code>. 這個 node 指的是使用者在頁面上按右鍵來觸發選單的頁面觸發節點. 你可以使用它來決定是否要顯示選單項目.</p>
-<p>你可以在 content script 中,同時指定宣告式場景條件和 context 偵聽函數. 在這種情況下, 先評估宣告式場景條件, 然後你的選單項目顯示條件為:所有宣告式場景條件成立,並且你的 context 偵聽函數傳回真值.</p>
-<p>如果任一宣告式場景條件未成立, 那麼你的 context 偵聽函數不會被呼叫. 下面的例子利用了這點. 確保了偵聽函數只在 image <code>node</code> 上觸發選單時,才會被呼叫:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "A Mozilla Image",
- context: cm.SelectorContext("img"),
- contentScript: 'self.on("context", function (node) {' +
- ' return /mozilla/.test(node.src);' +
- '});'
-});</pre>
-<p>However, if you do combine <code>SelectorContext</code> and the <code>"context"</code> event, be aware that the <code>node</code> argument passed to the <code>"context"</code> event will not always match the type specified in <code>SelectorContext</code>.</p>
-<p><code>SelectorContext</code> will match if the menu is invoked on the node specified <em>or any descendant of that node</em>, but the <code>"context"</code> event handler is passed <em>the actual node</em> on which the menu was invoked. 上個例子有作用,是因為 <code>&lt;IMG&gt;</code> 元素內不能包含其他元素, 但底下的例子裡, <code>node.nodeName</code> 不能保證是 "P" - 例如說, 當使用者在一個段落(<code>&lt;P&gt;</code>)的連結(<code>&lt;A&gt;</code>)上點右鍵時,它不會是 "P" :</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "A Paragraph",
- context: cm.SelectorContext("p"),
- contentScript: 'self.on("context", function (node) {' +
- ' console.log(node.nodeName);' +
- ' return true;' +
- '});'
-});</pre>
-<p>The content script is executed for every page that a context menu is shown for. It will be executed the first time it is needed (i.e. 當右鍵選單第一次顯示,並且選單項目的所有宣告式場景條件皆成立時) ,接著處於作用中,直到你銷毀你的選單項目或者關閉頁面.</p>
-<h3 id="處理選單項目上的點擊">處理選單項目上的點擊</h3>
-<p>content script 除了上述所說的功能(用來偵聽 <code>"context"</code> 事件)以外,你可以使用 content script 來處理選單項目上的點擊. 當使用者點擊選單項目時,一個名為 <code>"click"</code> 的事件在選單項目的 content script 內被觸發.</p>
-<p>因此, 欲處理選單項目上的點擊, 可以藉由偵聽選單項目 content script 內的 <code>"click"</code> 事件, 如下:</p>
-<pre class="brush: js">require("sdk/context-menu").Item({
- label: "My Item",
- contentScript: 'self.on("click", function (node, data) {' +
- ' console.log("Item clicked!");' +
- '});'
-});</pre>
-<p>注意:偵聽函數有兩參數 <code>node</code> 和 <code>data</code>.</p>
-<h4 id="node_參數">"node" 參數</h4>
-<p><code>node</code> 是使用者右鍵點擊所觸發選單的節點.</p>
-<ul>
- <li>如果你未使用 <code>SelectorContext</code> 來決定是否顯示選單項目, 那麼這實際點擊的節點.</li>
- <li>如果你使用了 <code>SelectorContext</code>, 那麼這是符合你的選擇器的那個節點.</li>
-</ul>
-<p>例如, 假設你的附加元件看起來像這樣:</p>
-<pre class="brush: js">var script = "self.on('click', function (node, data) {" +
- " console.log('clicked: ' + node.nodeName);" +
- "});";
-
-var cm = require("sdk/context-menu");
-
-cm.Item({
- label: "body context",
- context: cm.SelectorContext("body"),
- contentScript: script
-});</pre>
-<p>這個附加元件建立了一個右鍵選單項目,該項目使用 <code>SelectorContext</code> 來顯示項目,顯示時機為:右鍵選單觸發於 <code>&lt;BODY&gt;</code> 元素的任何後代元素之上時. 點擊時, 項目記錄了 <a href="https://developer.mozilla.org/en-US/docs/DOM/Node.nodeName"><code>nodeName</code></a> 屬性(觸發選單的節點名稱)傳給點擊事件處理器.</p>
-<p>如果你執行這個附加元件,你將看到它總是記錄 "BODY", 即使你點擊的是頁面上的段落元素<code>&lt;P&gt;</code>:</p>
-<pre>info: contextmenu-example: clicked: BODY</pre>
-<p>與上面對比, 底下的附加元件使用了 <code>PageContext</code>:</p>
-<pre class="brush: js">var script = "self.on('click', function (node, data) {" +
- " console.log('clicked: ' + node.nodeName);" +
- "});";
-
-var cm = require("sdk/context-menu");
-
-cm.Item({
- label: "body context",
- context: cm.PageContext(),
- contentScript: script
-});</pre>
-<p>它將記錄實際點擊的節點名稱:</p>
-<pre>info: contextmenu-example: clicked: P</pre>
-<h4 id="data_參數">"data" 參數</h4>
-<p><code>data</code> 是使用者所點擊選單項目的 <code>data</code>屬性. 注意: 當你有一個多層的選單(項目)時,點擊事件會被傳給被點擊的項目的所有祖先(項目),所以一定要驗證 <code>data</code> 值傳給你所期待的項目. 你可以使用 "data" 參數來簡化點擊事件處理 by providing just a single click listener on a <code>Menu</code> that reacts to clicks for any child items.:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Menu({
- label: "My Menu",
- contentScript: 'self.on("click", function (node, data) {' +
- ' console.log("You clicked " + data);' +
- '});',
- items: [
- cm.Item({ label: "Item 1", data: "item1" }),
- cm.Item({ label: "Item 2", data: "item2" }),
- cm.Item({ label: "Item 3", data: "item3" })
- ]
-});
-</pre>
-<h4 id="和附加元件通訊">和附加元件通訊</h4>
-<p>時常,你需要收集一些訊息,在點擊偵聽函數內和執行一個無關於頁面動作. 為了與關聯於 content script 的選單項目通訊, content script 可以呼叫附屬於全域 <code>self</code> 物件的 <code>postMessage</code> 函數, 傳給它一些 JSON-able 資料. 選單項目的 <code>"message"</code> 事件偵聽函數將被呼叫(前述的 JSON-able 資料作為參數傳入).</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "Edit Image",
- context: cm.SelectorContext("img"),
- contentScript: 'self.on("click", function (node, data) {' +
- ' self.postMessage(node.src);' +
- '});',
- onMessage: function (imgSrc) {
- openImageEditor(imgSrc);
- }
-});</pre>
-<h3 id="更新選單項目的文字標籤">更新選單項目的文字標籤</h3>
-<p>Each menu item must be created with a label, but you can change its label later using a couple of methods.</p>
-<p>最簡單的方法是設定選單項目的 <code>label</code> 屬性. 下面的例子更新選單項目的文字標籤為它被點擊的次數:</p>
-<pre class="brush: js">var numClicks = 0;
-var myItem = require("sdk/context-menu").Item({
- label: "Click Me: " + numClicks,
- contentScript: 'self.on("click", self.postMessage);',
- onMessage: function () {
- numClicks++;
- this.label = "Click Me: " + numClicks;
- // Setting myItem.label is equivalent.
- }
-});</pre>
-<p>Sometimes you might want to update the label based on the context. For instance, if your item performs a search with the user's selected text, it would be nice to display the text in the item to provide feedback to the user. 在這些情況下,你可以使用第二種方法 . 回想一下,你的 content scripts 可以偵聽 <code>"context"</code> 事件,如果你的偵聽函數傳回真值, 與 content scripts 關聯的選單項目會顯示在選單中. 除了傳回真值, 你的 <code>"context"</code> 偵聽函數也可以傳回字串. 當 <code>"context"</code> 偵聽函數傳回字串, 字串成為選單項目的新文字標籤.</p>
-<p>This item implements the aforementioned search example:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "Search Google",
- context: cm.SelectionContext(),
- contentScript: 'self.on("context", function () {' +
- ' var text = window.getSelection().toString();' +
- ' if (text.length &gt; 20)' + // 若太長
- ' text = text.substr(0, 20) + "...";' + // 則截短
- ' return "Search Google for " + text;' + // 後綴到固定字串上傳回
- '});'
-});</pre>
-<p><code>"context"</code> 偵聽函數取得使用者所選取的文字, 如果字串太長則截短它, 並後綴到固定字串上傳回. 當選單項目顯示, 它的文字標籤將是 "Search Google for <code>text</code>", 此處的 <code>text</code> 是被截短的 使用者所選取的文字.</p>
-<h3 id="隱私視窗">隱私視窗</h3>
-<p>If your add-on has not opted into private browsing, then any menus or menu items that you add will not appear in context menus belonging to private browser windows.</p>
-<p>To learn more about private windows, how to opt into private browsing, and how to support private browsing, refer to the <a href="/en-US/Add-ons/SDK/High-Level_APIs/private-browsing">documentation for the <code>private-browsing</code> module</a>.</p>
-<h3 id="更多例子">更多例子</h3>
-<p>For conciseness, these examples create their content scripts as strings and use the <code>contentScript</code> property. In your own add-on, you will probably want to create your content scripts in separate files and pass their URLs using the <code>contentScriptFile</code> property. See <a href="/en-US/Add-ons/SDK/Guides/Content_Scripts">Working with Content Scripts</a> for more information.</p>
-<div class="warning">
- <p>Unless your content script is extremely simple and consists only of a static string, don't use <code>contentScript</code>: if you do, you may have problems getting your add-on approved on AMO.</p>
- <p>Instead, keep the script in a separate file and load it using <code>contentScriptFile</code>. This makes your code easier to maintain, secure, debug and review.</p>
-</div>
-<p>Show an "Edit Page Source" item when the user right-clicks a non-interactive part of the page:</p>
-<pre class="brush: js">require("sdk/context-menu").Item({
- label: "Edit Page Source",
- contentScript: 'self.on("click", function (node, data) {' +
- ' self.postMessage(document.URL);' +
- '});',
- onMessage: function (pageURL) {
- editSource(pageURL);
- }
-});</pre>
-<p>Show an "Edit Image" item when the menu is invoked on an image:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "Edit Image",
- context: cm.SelectorContext("img"),
- contentScript: 'self.on("click", function (node, data) {' +
- ' self.postMessage(node.src);' +
- '});',
- onMessage: function (imgSrc) {
- openImageEditor(imgSrc);
- }
-});</pre>
-<p>Show an "Edit Mozilla Image" item when the menu is invoked on an image in a mozilla.org or mozilla.com page:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "Edit Mozilla Image",
- context: [
- cm.URLContext(["*.mozilla.org", "*.mozilla.com"]),
- cm.SelectorContext("img")
- ],
- contentScript: 'self.on("click", function (node, data) {' +
- ' self.postMessage(node.src);' +
- '});',
- onMessage: function (imgSrc) {
- openImageEditor(imgSrc);
- }
-});</pre>
-<p>Show an "Edit Page Images" item when the page contains at least one image:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-cm.Item({
- label: "Edit Page Images",
- // This ensures the item only appears during the page context.
- context: cm.PageContext(),
- contentScript: 'self.on("context", function (node) {' +
- ' var pageHasImgs = !!document.querySelector("img");' +
- ' return pageHasImgs;' +
- '});' +
- 'self.on("click", function (node, data) {' +
- ' var imgs = document.querySelectorAll("img");' +
- ' var imgSrcs = [];' +
- ' for (var i = 0 ; i &lt; imgs.length; i++)' +
- ' imgSrcs.push(imgs[i].src);' +
- ' self.postMessage(imgSrcs);' +
- '});',
- onMessage: function (imgSrcs) {
- openImageEditor(imgSrcs);
- }
-});</pre>
-<p>Show a "Search With" menu when the user right-clicks an anchor that searches Google or Wikipedia with the text contained in the anchor:</p>
-<pre class="brush: js">var cm = require("sdk/context-menu");
-var googleItem = cm.Item({
- label: "Google",
- data: "http://www.google.com/search?q="
-});
-var wikipediaItem = cm.Item({
- label: "Wikipedia",
- data: "http://en.wikipedia.org/wiki/Special:Search?search="
-});
-var searchMenu = cm.Menu({
- label: "Search With",
- context: cm.SelectorContext("a[href]"),
- contentScript: 'self.on("click", function (node, data) {' +
- ' var searchURL = data + node.textContent;' +
- ' window.location.href = searchURL;' +
- '});',
- items: [googleItem, wikipediaItem]
-});</pre>
-<h2 id="Globals">Globals</h2>
-<h3 id="Constructors">Constructors</h3>
-<h4 class="addon-sdk-api-name" id="Item(options)"><code>Item(options)</code></h4>
-<p>建立一個有文字標籤的選單項目,當點擊它時,可以執行一些動作.</p>
-<h5 id="參數">參數</h5>
-<p><strong>options : 物件</strong><br>
- options 物件的必要屬性:</p>
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">名稱</th>
- <th scope="col">型別</th>
- <th scope="col"> </th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>label</td>
- <td>字串</td>
- <td>
- <p>選單項目的文字標籤. It must either be a string or an object that implements <code>toString()</code>.</p>
- </td>
- </tr>
- </tbody>
-</table>
-<p>options 物件的可選屬性:</p>
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">名稱</th>
- <th scope="col">型別</th>
- <th scope="col"> </th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>image</td>
- <td>字串</td>
- <td>
- <p>選單項目的圖示, a string URL. The URL can be remote, a reference to an image in the add-on's <code>data</code> directory, or a data URI.</p>
- </td>
- </tr>
- <tr>
- <td>data</td>
- <td>字串</td>
- <td>
- <p>An optional arbitrary value to associate with the item. It must be either a string or an object that implements <code>toString()</code>. It will be passed to click listeners.</p>
- </td>
- </tr>
- <tr>
- <td>accessKey</td>
- <td>只有單一字元的字串</td>
- <td>
- <div class="geckoVersionNote">
- <p>New in Firefox 35.</p>
- </div>
- <p>選單項目的快捷鍵. Pressing this key selects the item when the context menu is open.</p>
- </td>
- </tr>
- <tr>
- <td>context</td>
- <td>value</td>
- <td>
- <p>If the item is contained in the top-level context menu, this declaratively specifies the context under which the item will appear; see Specifying Contexts above.</p>
- </td>
- </tr>
- <tr>
- <td>contentScript</td>
- <td>字串, 陣列</td>
- <td>
- <p>If the item is contained in the top-level context menu, this is the content script or an array of content scripts that the item can use to interact with the page.</p>
- </td>
- </tr>
- <tr>
- <td>contentScriptFile</td>
- <td>字串, 陣列</td>
- <td>
- <p>If the item is contained in the top-level context menu, this is the local file URL of the content script or an array of such URLs that the item can use to interact with the page.</p>
- </td>
- </tr>
- <tr>
- <td>onMessage</td>
- <td>函數</td>
- <td>
- <p>If the item is contained in the top-level context menu, this function will be called when the content script calls <code>self.postMessage</code>. It will be passed the data that was passed to <code>postMessage</code>.</p>
- </td>
- </tr>
- </tbody>
-</table>
-<h4 class="addon-sdk-api-name" id="Menu(options)"><code>Menu(options)</code></h4>
-<p>建立一個有文字標籤的選單項目,用以展開子選單.</p>
-<h5 id="參數_2">參數</h5>
-<p><strong>options : 物件</strong><br>
- options 物件的必要屬性:</p>
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">名稱</th>
- <th scope="col">型別</th>
- <th scope="col"> </th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>label</td>
- <td>字串</td>
- <td>
- <p>選單項目的文字標籤. It must either be a string or an object that implements <code>toString()</code>.</p>
- </td>
- </tr>
- <tr>
- <td>items</td>
- <td>陣列</td>
- <td>
- <p>選單項目構成的陣列,這些選單項目會被子選單所包含. 陣列中的元素須為 <code>Item</code>, <code>Menu</code>, 或 <code>Separator</code>.</p>
- </td>
- </tr>
- </tbody>
-</table>
-<p>options 物件的可選屬性:</p>
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">名稱</th>
- <th scope="col">型別</th>
- <th scope="col"> </th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>image</td>
- <td>字串</td>
- <td>
- <p>The menu's icon, a string URL. The URL can be remote, a reference to an image in the add-on's <code>data</code> directory, or a data URI.</p>
- </td>
- </tr>
- <tr>
- <td>context</td>
- <td>value</td>
- <td>
- <p>If the menu is contained in the top-level context menu, this declaratively specifies the context under which the menu will appear; see Specifying Contexts above.</p>
- </td>
- </tr>
- <tr>
- <td>contentScript</td>
- <td>字串, 陣列</td>
- <td>
- <p>If the menu is contained in the top-level context menu, this is the content script or an array of content scripts that the menu can use to interact with the page.</p>
- </td>
- </tr>
- <tr>
- <td>contentScriptFile</td>
- <td>字串, 陣列</td>
- <td>
- <p>If the menu is contained in the top-level context menu, this is the local file URL of the content script or an array of such URLs that the menu can use to interact with the page.</p>
- </td>
- </tr>
- <tr>
- <td>onMessage</td>
- <td>函數</td>
- <td>
- <p>If the menu is contained in the top-level context menu, this function will be called when the content script calls <code>self.postMessage</code>. It will be passed the data that was passed to <code>postMessage</code>.</p>
- </td>
- </tr>
- </tbody>
-</table>
-<h4 class="addon-sdk-api-name" id="Separator()"><code>Separator()</code></h4>
-<p>Creates a menu separator.</p>
-<h4 class="addon-sdk-api-name" id="PageContext()"><code>PageContext()</code></h4>
-<p>Creates a page context. See Specifying Contexts above.</p>
-<h4 class="addon-sdk-api-name" id="SelectionContext()"><code>SelectionContext()</code></h4>
-<p>Creates a context that occurs when a page contains a selection. See Specifying Contexts above.</p>
-<h4 class="addon-sdk-api-name" id="SelectorContext(selector)"><code>SelectorContext(selector)</code></h4>
-<p>Creates a context that matches a given CSS selector. See Specifying Contexts above.</p>
-<h5 id="Parameters">Parameters</h5>
-<p><strong>selector : string</strong><br>
- A CSS selector.</p>
-<h4 class="addon-sdk-api-name" id="URLContext(matchPattern)"><code>URLContext(matchPattern)</code></h4>
-<p>Creates a context that matches pages with particular URLs. See Specifying Contexts above.</p>
-<h5 id="Parameters_2">Parameters</h5>
-<p><strong>matchPattern : string,array</strong><br>
- A <a href="/en-US/Add-ons/SDK/Low-Level_APIs/util_match-pattern">match pattern</a> string, regexp or an array of match pattern strings or regexps.</p>
-<h4 class="addon-sdk-api-name" id="PredicateContext(predicateFunction)"><code>PredicateContext(predicateFunction)</code></h4>
-<div class="geckoVersionNote">
- <p>New in Firefox 29</p>
-</div>
-<p>Creates a context that occurs when predicateFunction returns a true value. See Specifying Contexts above.</p>
-<h5 id="Parameters_3">Parameters</h5>
-<p><strong>predicateFunction : function(context)</strong><br>
- A function which will be called with an object argument that provide information about the invocation context. <code>context</code> object properties:</p>
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Property</th>
- <th scope="col">Description</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code>documentType</code></td>
- <td>The MIME type of the document the menu was invoked in. E.g. <code>text/html</code> for HTML pages, <code>application/xhtml+xml</code> for XHTML, or <code>image/jpeg</code> if viewing an image directly.</td>
- </tr>
- <tr>
- <td><code>documentURL</code></td>
- <td>The URL of the document the menu was invoked in.</td>
- </tr>
- <tr>
- <td><code>targetName</code></td>
- <td>The name of the DOM element that the menu was invoked on, in lower-case.</td>
- </tr>
- <tr>
- <td><code>targetID</code></td>
- <td>The <code>id</code> attribute of the element that the menu was invoked on, or <code>null</code> if not set.</td>
- </tr>
- <tr>
- <td><code>isEditable</code></td>
- <td><code>true</code> if the menu was invoked in an editable element, and that element isn't disabled or read-only.  This includes non-input elements with the <code>contenteditable</code> attribute set to <code>true</code>.</td>
- </tr>
- <tr>
- <td><code>selectionText</code></td>
- <td>The current selection as a text string, or <code>null</code>. If the menu was invoked in an input text box or area, this is the selection of that element, otherwise the selection in the contents of the window.</td>
- </tr>
- <tr>
- <td><code>srcURL</code></td>
- <td>The <code>src</code> URL of the element that the menu was invoked on, or <code>null</code> if it doesn't have one.</td>
- </tr>
- <tr>
- <td><code>linkURL</code></td>
- <td>The <code>href</code> URL of the element that the menu was invoked on, or <code>null</code> if it doesn't have one.</td>
- </tr>
- <tr>
- <td><code>value</code></td>
- <td>The current contents of a input text box or area if the menu was invoked in one, <code>null</code> otherwise.</td>
- </tr>
- </tbody>
-</table>
-<h2 id="Item">Item</h2>
-<p>A labeled menu item that can perform an action when clicked.</p>
-<h3 id="Methods">Methods</h3>
-<h4 class="addon-sdk-api-name" id="destroy()"><code>destroy()</code></h4>
-<p>Permanently removes the item from its parent menu and frees its resources. The item must not be used afterward. If you need to remove the item from its parent menu but use it afterward, call <code>removeItem()</code> on the parent menu instead.</p>
-<h3 id="Properties">Properties</h3>
-<h4 class="addon-sdk-api-name" id="label"><code>label</code></h4>
-<p>The menu item's label. You can set this after creating the item to update its label later.</p>
-<h4 class="addon-sdk-api-name" id="image"><code>image</code></h4>
-<p>The item's icon, a string URL. The URL can be remote, a reference to an image in the add-on's <code>data</code> directory, or a data URI. You can set this after creating the item to update its image later. To remove the item's image, set it to <code>null</code>.</p>
-<h4 class="addon-sdk-api-name" id="data"><code>data</code></h4>
-<p>An optional arbitrary value to associate with the item. It must be either a string or an object that implements <code>toString()</code>. It will be passed to click listeners. You can set this after creating the item to update its data later.</p>
-<h4 class="addon-sdk-api-name" id="context"><code>context</code></h4>
-<p>A list of declarative contexts for which the menu item will appear in the context menu. Contexts can be added by calling <code>context.add()</code> and removed by called <code>context.remove()</code>.</p>
-<h4 class="addon-sdk-api-name" id="parentMenu"><code>parentMenu</code></h4>
-<p>The item's parent <code>Menu</code>, or <code>null</code> if the item is contained in the top-level context menu. This property is read-only. To add the item to a new menu, call that menu's <code>addItem()</code> method.</p>
-<h4 class="addon-sdk-api-name" id="contentScript"><code>contentScript</code></h4>
-<p>The content script or the array of content scripts associated with the menu item during creation.</p>
-<h4 class="addon-sdk-api-name" id="contentScriptFile"><code>contentScriptFile</code></h4>
-<p>The URL of a content script or the array of such URLs associated with the menu item during creation.</p>
-<h3 id="Events">Events</h3>
-<h4 class="addon-sdk-api-name" id="message"><code>message</code></h4>
-<p>If you listen to this event you can receive message events from content scripts associated with this menu item. When a content script posts a message using <code>self.postMessage()</code>, the message is delivered to the add-on code in the menu item's <code>message</code> event.</p>
-<h5 id="Arguments">Arguments</h5>
-<p><strong>value</strong> : Listeners are passed a single argument which is the message posted from the content script. The message can be any <a href="/en-US/Add-ons/SDK/Guides/Content_Scripts/using_port#JSON-Serializable_Values">JSON-serializable value</a>.</p>
-<h2 id="Menu">Menu</h2>
-<p>A labeled menu item that expands into a submenu.</p>
-<h3 id="Methods_2">Methods</h3>
-<h4 class="addon-sdk-api-name" id="addItem(item)"><code>addItem(item)</code></h4>
-<p>Appends a menu item to the end of the menu. If the item is already contained in another menu or in the top-level context menu, it's automatically removed first. If the item is already contained in this menu it will just be moved to the end of the menu.</p>
-<h5 id="Parameters_4">Parameters</h5>
-<p><strong>item : Item,Menu,Separator</strong><br>
- The <code>Item</code>, <code>Menu</code>, or <code>Separator</code> to add to the menu.</p>
-<h4 class="addon-sdk-api-name" id="removeItem(item)"><code>removeItem(item)</code></h4>
-<p>Removes the given menu item from the menu. If the menu does not contain the item, this method does nothing.</p>
-<h5 id="Parameters_5">Parameters</h5>
-<p><strong>item : Item,Menu,Separator</strong><br>
- The menu item to remove from the menu.</p>
-<h4 class="addon-sdk-api-name" id="destroy()_2"><code>destroy()</code></h4>
-<p>Permanently removes the menu from its parent menu and frees its resources. The menu must not be used afterward. If you need to remove the menu from its parent menu but use it afterward, call <code>removeItem()</code> on the parent menu instead.</p>
-<h3 id="Properties_2">Properties</h3>
-<h4 class="addon-sdk-api-name" id="label_2"><code>label</code></h4>
-<p>The menu's label. You can set this after creating the menu to update its label later.</p>
-<h4 class="addon-sdk-api-name" id="items"><code>items</code></h4>
-<p>An array containing the items in the menu. The array is read-only, meaning that modifications to it will not affect the menu. However, setting this property to a new array will replace all the items currently in the menu with the items in the new array.</p>
-<h4 class="addon-sdk-api-name" id="image_2"><code>image</code></h4>
-<p>The menu's icon, a string URL. The URL can be remote, a reference to an image in the add-on's <code>data</code> directory, or a data URI. You can set this after creating the menu to update its image later. To remove the menu's image, set it to <code>null</code>.</p>
-<h4 class="addon-sdk-api-name" id="context_2"><code>context</code></h4>
-<p>A list of declarative contexts for which the menu will appear in the context menu. Contexts can be added by calling <code>context.add()</code> and removed by called <code>context.remove()</code>.</p>
-<h4 class="addon-sdk-api-name" id="parentMenu_2"><code>parentMenu</code></h4>
-<p>The menu's parent <code>Menu</code>, or <code>null</code> if the menu is contained in the top-level context menu. This property is read-only. To add the menu to a new menu, call that menu's <code>addItem()</code> method.</p>
-<h4 class="addon-sdk-api-name" id="contentScript_2"><code>contentScript</code></h4>
-<p>The content script or the array of content scripts associated with the menu during creation.</p>
-<h4 class="addon-sdk-api-name" id="contentScriptFile_2"><code>contentScriptFile</code></h4>
-<p>The URL of a content script or the array of such URLs associated with the menu during creation.</p>
-<h3 id="Events_2">Events</h3>
-<h4 class="addon-sdk-api-name" id="message_2"><code>message</code></h4>
-<p>If you listen to this event you can receive message events from content scripts associated with this menu item. When a content script posts a message using <code>self.postMessage()</code>, the message is delivered to the add-on code in the menu item's <code>message</code> event.</p>
-<h5 id="Arguments_2">Arguments</h5>
-<p><strong>value</strong> : Listeners are passed a single argument which is the message posted from the content script. The message can be any <a href="/en-US/Add-ons/SDK/Guides/Content_Scripts/using_port#JSON-Serializable_Values">JSON-serializable value</a>.</p>
-<h2 id="Separator">Separator</h2>
-<p>A menu separator. Separators can be contained only in <code>Menu</code>s, not in the top-level context menu.</p>
-<h3 id="Methods_3">Methods</h3>
-<h4 class="addon-sdk-api-name" id="destroy()_3"><code>destroy()</code></h4>
-<p>Permanently removes the separator from its parent menu and frees its resources. The separator must not be used afterward. If you need to remove the separator from its parent menu but use it afterward, call <code>removeItem()</code> on the parent menu instead.</p>
-<h3 id="Properties_3">Properties</h3>
-<h4 class="addon-sdk-api-name" id="parentMenu_3"><code>parentMenu</code></h4>
-<p>The separator's parent <code>Menu</code>. This property is read-only. To add the separator to a new menu, call that menu's <code>addItem()</code> method.</p>
diff --git a/files/zh-tw/mozilla/add-ons/sdk/high-level_apis/index.html b/files/zh-tw/mozilla/add-ons/sdk/high-level_apis/index.html
deleted file mode 100644
index 32b39d045b..0000000000
--- a/files/zh-tw/mozilla/add-ons/sdk/high-level_apis/index.html
+++ /dev/null
@@ -1,10 +0,0 @@
----
-title: High-Level APIs
-slug: Mozilla/Add-ons/SDK/High-Level_APIs
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Add-ons/Add-on_SDK/High-Level_APIs
----
-<p>Modules listed on this page implement high-level APIs for building add-ons: creating user interfaces, interacting with the web, and interacting with the browser.</p>
-<p>Unless the documentation explicitly says otherwise, all these modules are "Stable": we'll avoid making incompatible changes to them. {{ LandingPageListSubpages ("/en-US/Add-ons/SDK/High-Level_APIs", 5) }}</p>
diff --git a/files/zh-tw/mozilla/add-ons/sdk/index.html b/files/zh-tw/mozilla/add-ons/sdk/index.html
deleted file mode 100644
index 2937b883d7..0000000000
--- a/files/zh-tw/mozilla/add-ons/sdk/index.html
+++ /dev/null
@@ -1,82 +0,0 @@
----
-title: Add-on SDK
-slug: Mozilla/Add-ons/SDK
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Add-ons/Add-on_SDK
----
-<p>有了附加元件開發套件(Add-on SDK),您可以使用標準的JavaScript、HTML、CSS等語法來建立Firefox的附加元件。SDK包含用來製作附加元件的JavaScript API,及建立、測試、運行或包裝附加元件的相關工具。</p>
-
-<hr>
-<h3 id="入門">入門</h3>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#getting-started">從此開始</a></dt>
- <dd>如何<a href="/en-US/Add-ons/SDK/Tutorials/Installation">安裝 SDK </a>及<a href="/en-US/Add-ons/SDK/Tutorials/Getting_Started_With_cfx">使用 cfx tool </a>來建立、測試或包裝附加元件。</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#interact-with-the-browser">和瀏覽器互動</a></dt>
- <dd><a href="/en-US/Add-ons/SDK/Tutorials/Open_a_Web_Page">開啟網頁</a>、<a href="/en-US/Add-ons/SDK/Tutorials/Listen_For_Page_Load">監測頁面載入</a>以及<a href="/en-US/Add-ons/SDK/Tutorials/List_Open_Tabs">列出已開啟頁面</a>。</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#development-techniques">開發技巧</a></dt>
- <dd>學習常用開發技術,如<a href="/en-US/Add-ons/SDK/Tutorials/Unit_testing">單元測試</a>、<a href="/en-US/Add-ons/SDK/Tutorials/Logging">紀錄</a>、<a href="/en-US/Add-ons/SDK/Tutorials/Creating_Reusable_Modules">建立可重用模組</a>、<a href="/en-US/Add-ons/SDK/Tutorials/l10n">在地化</a>、<a href="/en-US/Add-ons/SDK/Tutorials/Mobile_development">流動裝置</a> 。</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#create-user-interfaces">建立使用者介面的元件</a></dt>
- <dd>如<a href="/en-US/Add-ons/SDK/Tutorials/Adding_a_Button_to_the_Toolbar">工具列按鈕</a>、<a href="/en-US/Add-ons/SDK/Tutorials/Add_a_Context_Menu_Item">內文選單</a>、<a href="/en-US/Add-ons/SDK/Tutorials/Add_a_Menu_Item_to_Firefox">選單項目</a>、<a href="/en-US/Add-ons/SDK/Tutorials/Display_a_Popup">對話框</a>等等。</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#modify-web-pages">修改網頁</a></dt>
- <dd>修改<a href="/en-US/Add-ons/SDK/Tutorials/Modifying_Web_Pages_Based_on_URL">符合網址模式</a>的頁面或動態<a href="/en-US/Add-ons/SDK/Tutorials/Modifying_the_Page_Hosted_by_a_Tab">修改特定分頁</a>。</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials/Annotator">整合各項</a></dt>
- <dd>以 Annotator(一個顯示註解的附加元件)為例顯示製作流程。</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h3 id="指引">指引</h3>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Guides#contributors-guide">貢獻者指南</a></dt>
- <dd>學習<a href="/en-US/Add-ons/SDK/Guides/Getting_Started">如何貢獻 </a>SDK 以及 SDK 當中的重要術語,如<a href="/en-US/Add-ons/SDK/Guides/Modules">模組</a>、<a href="/en-US/Add-ons/SDK/Guides/Classes_and_Inheritance">類(Class)及繼承(Inheritance)</a>、<a href="/en-US/Add-ons/SDK/Guides/Private_Properties">私有屬性</a>以及<a href="/en-US/Add-ons/SDK/Guides/Content_Processes">內容處理</a>。</dd>
- <dt><a href="/en-US/Add-ons/SDK/Guides#sdk-infrastructure">SDK infrastructure</a></dt>
- <dd>Aspects of the SDK's underlying technology: <a href="/en-US/Add-ons/SDK/Guides/Module_structure_of_the_SDK">modules</a>, the <a href="/en-US/Add-ons/SDK/Guides/Program_ID">Program ID</a>, and the rules defining <a href="/en-US/Add-ons/SDK/Guides/Firefox_Compatibility">Firefox compatibility</a>.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Guides/Content_Scripts">Content scripts</a></dt>
- <dd>A detailed guide to <a href="/en-US/Add-ons/SDK/Guides/Content_Scripts">working with content scripts</a>, including: <a href="/en-US/Add-ons/SDK/Guides/Loading_content_scripts">how to load content scripts</a>, <a href="/en-US/Add-ons/SDK/Guides/Accessing_the_DOM">which objects content scripts can access</a>, and <a href="/en-US/Add-ons/SDK/Guides/Communicating_with_other_scripts">how to communicate between content scripts and the rest of your add-on</a>.</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Guides#sdk-idioms">SDK idioms</a></dt>
- <dd>The SDK's <a href="/en-US/Add-ons/SDK/Guides/Working_with_Events">event framework</a> and the <a href="/en-US/Add-ons/SDK/Guides/Two_Types_of_Scripts">distinction between add-on scripts and content scripts</a>.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Guides/XUL_Migration_Guide">XUL migration</a></dt>
- <dd>A guide to <a href="/en-US/Add-ons/SDK/Guides/XUL_Migration_Guide">porting XUL add-ons to the SDK</a>. This guide includes a <a href="/en-US/Add-ons/SDK/Guides/XUL_vs_SDK">comparison of the two toolsets</a> and a <a href="/en-US/Add-ons/SDK/Guides/Porting_the_Library_Detector">working example</a> of porting a XUL add-on.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h3 id="參考資料">參考資料</h3>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/High-Level_APIs">高階 API</a></dt>
- <dd>高階 SDK API 的參考文件。</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tools">工具參考</a></dt>
- <dd>Reference documentation for the <a href="/en-US/Add-ons/SDK/Tools/cfx">cfx tool</a> used to develop, test, and package add-ons, the <a href="/en-US/Add-ons/SDK/Tools/console">console</a> global used for logging, and the <a href="/en-US/Add-ons/SDK/Tools/package_json">package.json</a> file.</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Low-Level_APIs">低階 API</a></dt>
- <dd>低階 SDK API 的參考文件。</dd>
-</dl>
-</div>
-</div>
diff --git a/files/zh-tw/mozilla/add-ons/sdk/low-level_apis/index.html b/files/zh-tw/mozilla/add-ons/sdk/low-level_apis/index.html
deleted file mode 100644
index 2108d30783..0000000000
--- a/files/zh-tw/mozilla/add-ons/sdk/low-level_apis/index.html
+++ /dev/null
@@ -1,20 +0,0 @@
----
-title: Low-Level APIs
-slug: Mozilla/Add-ons/SDK/Low-Level_APIs
-translation_of: Archive/Add-ons/Add-on_SDK/Low-Level_APIs
----
-<p>Modules in this section implement low-level APIs. These modules fall roughly into three categories:</p>
-<ul>
- <li>
- <p>fundamental utilities such as <a href="/en-US/Add-ons/SDK/Low-Level_APIs/util_collection">collection</a>. Many add-ons are likely to want to use modules from this category.</p>
- </li>
- <li>
- <p>building blocks for higher level modules, such as <a href="/en-US/Add-ons/SDK/Low-Level_APIs/event_core">events</a> and <a href="/en-US/Add-ons/SDK/Low-Level_APIs/content_worker">worker</a>. You're more likely to use these if you are building your own modules that implement new APIs, thus extending the SDK itself.</p>
- </li>
- <li>
- <p>privileged modules that expose powerful low-level capabilities such as <a href="/en-US/Add-ons/SDK/Low-Level_APIs/window_utils">window/utils</a> and <a href="/en-US/Add-ons/SDK/Low-Level_APIs/net_xhr">net/xhr</a>. You can use these modules in your add-on if you need to, but should be aware that the cost of privileged access is the need to take more elaborate security precautions. In many cases these modules have simpler, more restricted analogs among the "High-Level APIs" (for example, <a href="/en-US/Add-ons/SDK/High-Level_APIs/windows">windows</a> or <a href="/en-US/Add-ons/SDK/High-Level_APIs/request">request</a>).</p>
- </li>
-</ul>
-<p>These modules are still in active development, and we expect to make incompatible changes to them in future releases.</p>
-<p>{{ LandingPageListSubpages ("/en-US/Add-ons/SDK/Low-Level_APIs", 5) }}</p>
-<p> </p>
diff --git a/files/zh-tw/mozilla/add-ons/themes/obsolete/index.html b/files/zh-tw/mozilla/add-ons/themes/obsolete/index.html
deleted file mode 100644
index d420b6ebf0..0000000000
--- a/files/zh-tw/mozilla/add-ons/themes/obsolete/index.html
+++ /dev/null
@@ -1,10 +0,0 @@
----
-title: Obsolete
-slug: Mozilla/Add-ons/Themes/Obsolete
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Add-ons/Themes/Obsolete
----
-<p>This page collects theme docs that we don't expect will ever be updated, but which we're keeping for the time being as potential source material for updated docs.</p>
-<p>{{ ListSubPages ("/en-US/Add-ons/Themes/Obsolete", 5) }}</p>
diff --git a/files/zh-tw/mozilla/adding_phishing_protection_data_providers/index.html b/files/zh-tw/mozilla/adding_phishing_protection_data_providers/index.html
deleted file mode 100644
index 14b56484b5..0000000000
--- a/files/zh-tw/mozilla/adding_phishing_protection_data_providers/index.html
+++ /dev/null
@@ -1,66 +0,0 @@
----
-title: 新增偽造網站清單來源
-slug: Mozilla/Adding_phishing_protection_data_providers
-tags:
- - 待翻譯
-translation_of: Mozilla/Adding_phishing_protection_data_providers
----
-<p>詐騙網站偵測技術讓 Firefox 能將當前網頁與黑名單兩相比對,藉此得知此網站是否為詐騙網站,並於確認後提醒使用者。</p>
-
-<h2 id=".E5.AE.89.E8.A3.9D.E6.96.B0.E8.B3.87.E6.96.99.E4.BE.86.E6.BA.90" name=".E5.AE.89.E8.A3.9D.E6.96.B0.E8.B3.87.E6.96.99.E4.BE.86.E6.BA.90">安裝新資料來源</h2>
-
-<p>要安裝詐騙網站清單的資料來源,必須調整一些相關設定,以便提供資料來源的細節。</p>
-
-<p>每個資料來源都有其獨一無二的 ID 號碼,而 ID 號碼為 0 者即是 Firefox 出廠時的預設資料來源。當安裝新的資料來源時,你應該指定另一個未使用的號碼。</p>
-
-<p>要知道哪些號碼能用,必須以迴圈循序取出設定值,例如先是 <code>browser.safebrowsing.provider.0.name</code>、而後為<code>browser.safebrowsing.provider.1.name</code>,以此類推。當取值時無傳回內容,代表這個數字可以用。</p>
-
-<p>你可以從<a href="zh_tw/%e7%82%ba%e6%93%b4%e5%85%85%e5%a5%97%e4%bb%b6%e6%96%b0%e5%a2%9e%e5%81%8f%e5%a5%bd%e8%a8%ad%e5%ae%9a">為擴充套件新增偏好設定</a>文章中找到讀寫設定值的相關範例。</p>
-
-<h3 id=".E5.BF.85.E5.82.99.E8.A8.AD.E5.AE.9A" name=".E5.BF.85.E5.82.99.E8.A8.AD.E5.AE.9A">必備設定</h3>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.name</code></dt>
- <dd>資料來源的名稱,讓使用者方便識別。</dd>
-</dl>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.keyURL</code></dt>
- <dd>用來為其他要求編碼的私鑰 URL。</dd>
-</dl>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.lookupURL</code></dt>
- <dd>The URL to use to look up URLs to see if they're blacklisted. This request must be encrypted using the private key returned by the <code>keyURL</code> request.</dd>
-</dl>
-
-<h3 id=".E9.81.B8.E7.94.A8.E8.A8.AD.E5.AE.9A" name=".E9.81.B8.E7.94.A8.E8.A8.AD.E5.AE.9A">選用設定</h3>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.reportURL</code></dt>
- <dd>An URL used for reporting when users visit phishing pages and whether or not they decided to heed the warning or to ignore it.</dd>
-</dl>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.updateURL</code></dt>
- <dd>An URL used to request an updated list of phishing sites. The server either provides a full list or incremental updates in order to bring the client's tables up to date.</dd>
-</dl>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.reportGenericURL</code></dt>
- <dd>Not currently used; intended for use in reporting other issues with the phishing protection service.</dd>
-</dl>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.reportErrorURL</code></dt>
- <dd>An URL to which the user is directed in order to report a safe page that is incorrectly being reported as a phishing site.</dd>
-</dl>
-
-<dl>
- <dt><code>browser.safebrowsing.provider.<em>idnum</em>.reportPhishURL</code></dt>
- <dd>An URL to which the user is directed in order to report a phishing site that isn't detected by the phishing protection system.</dd>
-</dl>
-
-<h2 id="Determining_the_currently-selected_data_provider" name="Determining_the_currently-selected_data_provider">Determining the currently-selected data provider</h2>
-
-<p>If you need to determine the ID number of the currently selected anti-phishing data provider, you can look at the current value of the preference <code>browser.safebrowsing.dataProvider</code>.</p>
diff --git a/files/zh-tw/mozilla/chrome_registration/index.html b/files/zh-tw/mozilla/chrome_registration/index.html
deleted file mode 100644
index f2cde3f964..0000000000
--- a/files/zh-tw/mozilla/chrome_registration/index.html
+++ /dev/null
@@ -1,348 +0,0 @@
----
-title: Chrome registration
-slug: Mozilla/Chrome_Registration
-translation_of: Mozilla/Chrome_Registration
----
-<h2 id="What_is_Chrome.3F" name="What_is_Chrome.3F">馬桶裡有個 chrome?</h2>
-
-<p><a href="/en/Chrome" title="en/Chrome">Chrome</a> 是一拖拉庫在文件 window 範圍之外 AP 視窗的 UI 元件。 管它 Toolbars 、 menu bars、progress bars 還是 window title bars 基本上都是 chrome 的一部份。</p>
-
-<div class="note">
-<p>Mozilla 會尋找並讀取主題佈景和附加元件根目錄<code>的 chrome.manifest</code> 檔。</p>
-</div>
-
-<div class="note">
-<p>古早的 Gecko 1.9.2 (及更古早版本),Mozilla 是從 AP 讀取<code>chrome/*.manifest</code> 檔。 從 Gecko 2.0 {{ geckoRelease("2.0") }} 開始,就只剩根目錄的 <code>chrome.manifest</code> 還有再用;若要增加更多的內容,就在其中利用 <a href="/en/Chrome_Registration#manifest" title="en/Chrome Registration#manifest"><code>manifest</code></a> 指令來擴充。</p>
-</div>
-
-<h2 id="Chrome_Providers" name="Chrome_Providers">Chrome providers</h2>
-
-<p>基於某種 window type (例如針對 browser window) 提供 chrome 者稱為 chrome provider。所有的 provider 同心協力針對特定的 window 提供整套的 chrome,從工具列上的圖案到文字或內容描述檔,以及 window 本身的外觀。</p>
-
-<p>以下是三種基本的 chrome provider :</p>
-
-<dl>
- <dt>Content</dt>
- <dd>視窗描述主要是來自於 content provider,格式可以是任何一種 Mozilla 看得懂的類型。通常會是個  XUL file,因為它本來就是專門設計來描述 window 和 dialog 的。用來定義 UI 的 JavaScript 檔也會跟在這包,多數的 XBL binding files 也是。</dd>
- <dt>Locale</dt>
- <dd>多語系的應用程式會將語系資訊交給 locale providers。醬子譯者就可以翻譯並插進一個另外的 chrome package 而不去更動其它的程式。Java-style properties 檔和 DTD 檔是兩種主要的多語系檔案類型。</dd>
- <dt>Skin</dt>
- <dd>Skin provider 就負責 chrome 整套外觀的描述檔,通常是 CSS 和圖形。</dd>
-</dl>
-
-<div class="note">
-<p><strong>註:</strong> 從 skin packages 載入的 scripts (包括 <a href="/en/XBL" title="en/XBL">XBL </a>裡的) 並不會執行喔。</p>
-</div>
-
-<h2 id="The_Chrome_Registry" name="The_Chrome_Registry">Chrome 登錄 (chrome registry)</h2>
-
-<p>Gecko runtime 會保持一份稱為 chrome registry 的記錄,用來對登錄 chrome package 名稱和實際檔案路徑。</p>
-
-<p>Chrome registry 可以設定並且會保存;且有賴於 xpinstall 和 extension manager,這樣 user 就可以很多套 chrome provider 然後選擇喜歡的語系和外觀。</p>
-
-<p>XULRunner application、主題布景或附加元件要讓 chrome registry 知道有這麼一個 chrome,那就要在自己的根目錄下放一個 純文字格式的 manifest,也就是 `chrome.manifest`。</p>
-
-<p>這個純文字的 manifests 是簡單的逐行格式,會被一行一行地解析。 chrome registry 看懂一行就處理一行,看不懂就跳過;當然,有問題的會 log 在 console 中。</p>
-
-<pre>locale packagename localename path/to/files
-skin packagename skinname path/to/files
-</pre>
-
-<p></p><div class="warning">Firefox 2 、 Thunderbird 2 和 SeaMonkey 1.1 無法辨識大小寫夾雜的 <code>packagename</code> 。 要是把範例中的 <code>packagename </code>改成 <strong>C</strong>amel<strong>C</strong>ase<strong>P</strong>ackage 就會跑出類似 "No chrome registered for chrome://<strong>c</strong>amel<strong>c</strong>ase<strong>p</strong>ackage/path/to/files" 的訊息。 Firefox 3 、 Thunderbird 3 還有 SeaMonkey 2 已經支援這個功能。Bug resolved 於 Mozilla 1.9; see {{bug(132183)}}.</div><p></p>
-
-<h2 id="Manifest_Instructions" name="Manifest_Instructions">Manifest 指令</h2>
-
-<h3 id="comments" name="comments">comments</h3>
-
-<p>如果一行的開頭是 '#' 那這整行就變成註解。</p>
-
-<pre class="eval"># this line is a comment - you can put whatever you want here
-</pre>
-
-<h3 id="manifest" name="manifest">manifest</h3>
-
-<p>{{ gecko_minversion_inline("2.0b4") }}</p>
-
-<pre>manifest <em>subdirectory/foo.manifest [flags]</em>
-</pre>
-
-<p>這行會載入另一份 manifest 檔。這在拆分元件、chrome 登錄項或是各平台相依登錄資料時尤其有用。</p>
-
-<h3 id="binary-component">binary-component</h3>
-
-<p>{{ gecko_minversion_inline("2.0b2") }}</p>
-
-<pre>binary-component <em>components/mycomponent.dll [flags]</em>
-</pre>
-
-<p>叫 Mozilla 登錄並應用 binary component,由於 binary components 為 ABI-specific,應與 abi flag 並用。 <a href="/en/XPCOM/XPCOM_changes_in_Gecko_2.0" title="en/XPCOM/XPCOM changes in Gecko 2.0">在 Firefox 4 之前 </a>,components 資料夾裡的檔案會自動被登錄。</p>
-
-<h3 id="interfaces">interfaces</h3>
-
-<p>{{ gecko_minversion_inline("2.0b2") }}</p>
-
-<pre>interfaces <em>component/mycomponent.xpt [flags]</em>
-</pre>
-
-<p>叫 Mozilla 從經由 XPIDL 產生的 typelib 檔載入 interface 資訊。<a href="/en/XPCOM/XPCOM_changes_in_Gecko_2.0" title="en/XPCOM/XPCOM changes in Gecko 2.0">在 Firefox 4 之前</a>,components 資料夾裡的檔案會自動被登錄。</p>
-
-<h3 id="component">component</h3>
-
-<p>{{ gecko_minversion_inline("2.0b2") }}</p>
-
-<pre>component <em>{00000000-0000-0000-0000-000000000000} components/mycomponent.js [flags]</em>
-</pre>
-
-<p>告訴 Mozilla 一個由 XPCOM 元件以 JavaScript (或是其它可接受的 scripting language) 實作之元件的 CID。ClassID {0000 ...} 一定要和該元件所實現的 ClassID 相同。可利用程式或線上 UUID 產生器產生唯一的 ClassID。</p>
-
-<h3 id="contract">contract</h3>
-
-<p>{{ gecko_minversion_inline("2.0b2") }}</p>
-
-<pre>contract <em>@foobar/mycontract;1 <em>{00000000-0000-0000-0000-000000000000} [flags]</em></em>
-</pre>
-
-<p>將特定實作的 contract ID (一個語意化字串) 對應到 ClassID。通常 contract ID 就和它頂頭所列的 component entry 一組。<br>
-  </p>
-
-<h3 id="content" name="content" style="min-height: 0;">category</h3>
-
-<p>{{ gecko_minversion_inline("2.0b2") }}</p>
-
-<pre>category <em>category entry-name value [flags]</em>
-</pre>
-
-<p>登錄在 <a href="/en/XPCOM_Interface_Reference/nsICategoryManager" title="en/XPCOM Interface Reference/nsICategoryManager">category manager</a> ,至於項目的格式和用意就要看它是哪個 category 了。</p>
-
-<h3 id="content" name="content" style="min-height: 0;">content</h3>
-
-<p>下面這行登錄一個 content package :</p>
-
-<pre>content <em>packagename</em> <em>uri/to/files/</em> <em>[flags]</em>
-</pre>
-
-<p>這會將 package 登錄在一個像 <code>`chrome://<em>packagename</em>/content/..` </code>的位置,也就是之後它被存取的位置。這個 URI 可以是絕對位置或是相對於 manifest file 的位置,但要注意結尾的 '/' 不可省略。</p>
-
-<h3 id="locale" name="locale">locale</h3>
-
-<p>下面這行登錄一個 locale package :</p>
-
-<pre class="eval">locale <em>packagename</em> <em>localename</em> <em>uri/to/files/</em> <em>[flags]</em>
-</pre>
-
-<p>這會將 locale package 登錄在解析 `chrome://<em>packagename</em>/locale/..` 所用的位置。<em> localename</em> 通常直接用語系名稱像是 "zh" 或有時候用 語系-地區 像 "zh-TW"。如果同一 package 有多個語系 chrome registry 會根據使用者偏好中的設定值選擇最接近的語系。</p>
-
-<h3 id="skin" name="skin">skin</h3>
-
-<p>下面這行登錄一個 skin package :</p>
-
-<pre class="eval">skin <em>packagename</em> <em>skinname</em> <em>uri/to/files/</em> <em>[flags]</em>
-</pre>
-
-<p>這會將 skin package 登錄在 <a class="external" rel="freelink">chrome://packagename/skin/</a>.. ,<em> skinname</em> is 是用來識別所安裝 skin 的一個非透明化字串。同樣地,若同一 package 登記了多個 skin , chrome registry 會根據使用者偏好中的設定值選擇最合適的。</p>
-
-<h3 id="style" name="style">style</h3>
-
-<p>Style overlay (套用在chrome page上的自訂 CSS) 以下列語法登錄:</p>
-
-<pre class="eval">style chrome://<em>URI-to-style</em> chrome://<em>stylesheet-URI</em> <em>[flags]</em>
-</pre>
-
-<div class="note">注意: 只有位於 chrome URI 的 stylesheet 可以這樣用。</div>
-
-<h3 id="override" name="override">override</h3>
-
-<p>chrome 登錄 manifest 允許 override 指令以便讓某些 extension 或其它嵌入物件可以改寫 XULRunner 或 AP 預設的 chrome file 設定。</p>
-
-<pre class="eval">override chrome://<em>package</em>/<em>type</em>/<em>original-uri.whatever</em> <em>new-resolved-URI</em> <em>[flags]</em>
-</pre>
-
-<p>注意:override 路徑不會遞迴 (所以將 <a class="external" rel="freelink">chrome://foo/content/bar/</a> override 為 <a class="external" rel="freelink">file:///home/john/blah/</a> 之後,其行為通常不會是預期的那樣)。而且 override 之後路徑是相對於被重寫掉的路徑而不是用來重寫的路徑 (從 CSS 的角度來說,這搞不好是個偏門也搞不好使人抓狂) 。</p>
-
-<div class="note">
-<p>在 Gecko 1.8.1.5 (Firefox 2.0.0.5) 和較早的版本中有個 <em>new-resolved-URI</em> 參數 只能用絕對路徑而不能用相對路徑的 bug。詳見: {{ Bug(323455) }}.</p>
-</div>
-
-<h3 id="resource" name="resource">resource</h3>
-
-<p>{{ Fx_minversion_inline("3") }}</p>
-
-<p>在 extension 和 AP 中使用<a href="/en/Components.utils.import" title="en/Components.utils.import"> Components.utils.import</a> 來載入 <a href="/en/JavaScript_code_modules/Using" title="en/Using_JavaScript_code_modules">JavaScript code modules</a> 時,建立 resource protocol 別名 (aliases) 有時是必須的。請使用 <code>resource</code> 指令來建立別名:</p>
-
-<pre class="eval">resource <em>aliasname</em> <em>uri/to/files/</em> <em>[flags]</em>
-</pre>
-
-<p>這會將目的路徑對映到 <code>resource://&lt;aliasname&gt;<span style="font-family: Verdana,Tahoma,sans-serif;">/</span></code>.. 。</p>
-
-<div class="note">
-<p><span class="short_text" id="result_box" lang="zh-TW"><span>並</span><span>沒有安全性</span><span>限制防止</span><span>網頁內容</span><span> include 以 resource: 開頭</span><span>的 URI</span><span>,故</span><span>請留意此處所開啟的能見度</span><span>。</span></span></p>
-</div>
-
-<h2 id="Manifest_Flags" name="Manifest_Flags">Manifest 旗號</h2>
-
-<p>Manifest 指令行允許多個以空白分隔的旗號附加於行尾。這些旗號將會設定 package 中 chrome 的特殊屬性,或限制這些指令行本身於什麼條件下作用。</p>
-
-<h3 id="application" name="application">application</h3>
-
-<p>Extension 可以安裝於多個應用程式,而有些 chrome registration 可能只需作用於特定的應用程式。以下旗號</p>
-
-<pre class="eval">application=<em>app-ID</em>
-</pre>
-
-<p>代表這個指令只應在 extension 安裝於符合 <em>app-ID </em>的應用程式時作用。同一行可以指定多個應用程式,此時只要其中一項符合即會作用。</p>
-
-<p>以下示範如何為多個應用程是分別指定 overlay :</p>
-
-<pre>overlay chrome://browser/content/browser.xul chrome://myaddon/content/ffOverlay.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384}
-overlay chrome://messenger/content/mailWindowOverlay.xul chrome://myaddon/content/tbOverlay.xul application={3550f703-e582-4d05-9a08-453d09bdfdc6}
-overlay chrome://songbird/content/xul/layoutBaseOverlay.xul chrome://myaddon/content/sbOverlay.xul application=songbird@songbirdnest.com
-</pre>
-
-<h3 id="appversion" name="appversion">appversion</h3>
-
-<p>Extension 可以安裝於同一應用程式的多個不同版本,而有些 chrome registration 可能只需作用於特定的版本。以下旗號</p>
-
-<pre class="eval">appversion=<em>version</em>
-appversion&lt;<em>version</em>
-appversion&lt;=<em>version</em>
-appversion&gt;<em>version</em>
-appversion&gt;=<em>version</em>
-</pre>
-
-<p>代表這個指令只應在 extension 安裝於符合特定版本的應用程式時作用。同一行可以指定多個 <code>appversion</code> ,此時只要其中一項符合即會作用。版本字串應遵循 <a href="/en/Toolkit_version_format" title="en/Toolkit_version_format">Toolkit version format</a> 。</p>
-
-<div class="note">
-<p>Gecko 在 1.8.0.13 之前以及版本 1.8.1.5 有一個 bug , 就是本字串必須超過一個字元(也就是最少兩個) 才能使用 &lt; 、 &gt; 及 =,否則會在 console 中收到<code> appversion</code> flag was not recognized 的錯誤訊息。參見: {{ Bug(380398) }} 。</p>
-</div>
-
-<h3 id="platformversion" name="platformversion">platformversion</h3>
-
-<p>{{ gecko_minversion_inline("8.0") }} 當附加元件尤其是 binary components支援一種以上的應用程式時,若能指定所相容的 Gecko 版本將為其帶來更多的方便性。若某些 chrome registration 只作用於定特定 Gecko 版本,以下旗號</p>
-
-<pre class="eval">platformversion=<em>version</em>
-platformversion&lt;<em>version</em>
-platformversion&lt;=<em>version</em>
-platformversion&gt;<em>version</em>
-platformversion&gt;=<em>version</em>
-</pre>
-
-<p>代表這個指令只應在 extension 安裝於符合特定 Gecko 版本的應用程式時作用。同一行可以指定多個 <code>platformversion</code>,此時只要其中一項符合即會作用。</p>
-
-<h3 id="contentaccessible" name="contentaccessible">contentaccessible</h3>
-
-<p>{{ Fx_minversion_inline("3") }} Chrome resources 已不能被非信任來源內容中的 &lt;img&gt;、&lt;script&gt; 及其他包含或添加的 elements 所參照。 這個限制不僅適用於非信任來源中所定義的 elements , 同時也適用於受信任的附加元件中所定義的 elements。若參照需要明確地被允許,請將 <code>contentaccessible</code> 旗號設定為 <code>yes</code> 來達到如舊版 Firefox 中的行為。 <span class="comment">See {{ bug("4369")}}</span></p>
-
-<p><code>contentaccessible</code> 只能用於 content package ,言下之意,它不會被 locale 或 skin registration 所識別。好在於 content package 所對應到的 locale 和 skin packages 對 content 而言是可見的。</p>
-
-<p>注意:由於舊版的 Firefox 根本看不懂 <code>contentaccessible</code> flag , 若要讓附加元件同時支援 Firefox 3 及古董版的話就得來個倒退嚕,您倒是看看:</p>
-
-<pre>content packagename chrome/path/
-content packagename chrome/path/ contentaccessible=yes
-</pre>
-
-<h3 id="os" name="os">os</h3>
-
-<p>{{ Fx_minversion_inline("3") }} Extensions (or themes) may offer different features depending on the operating system on which Firefox is running. The value is compared to the value of <a href="/en/OS_TARGET" title="en/OS_TARGET">OS_TARGET</a> for the platform.</p>
-
-<pre class="eval">os=WINNT
-os=Darwin
-</pre>
-
-<p>See <a href="/en/OS_TARGET" title="en/OS_TARGET">OS_TARGET</a> for a more complete list of os names. The os name is case insensitive.</p>
-
-<h3 id="osversion" name="osversion">osversion</h3>
-
-<p>{{ Fx_minversion_inline("3") }} An extension or theme may need to operate differently depending on which version of an operating system is running. For example, a theme may wish to adopt a different look on Mac OS X 10.5 than 10.4:</p>
-
-<pre class="eval">osversion&gt;=10.5
-</pre>
-
-<h3 id="platform_.28Platform-specific_packages.29" name="platform_.28Platform-specific_packages.29">abi</h3>
-
-<p>{{ Fx_minversion_inline("4") }} If a component is only compatible with a particular ABI, it can specify which ABI/OS by using this directive. The value is taken from the <a href="/en/XPCOM_Interface_Reference/nsIXULRuntime" title="https://developer.mozilla.org/en/nsIXULRuntime">nsIXULRuntime</a> OS and XPCOMABI values (concatenated with an underscore). For example:</p>
-
-<pre>binary-component component/myLib.dll abi=WINNT_<code>x86-MSVC
-</code>binary-component component/myLib.so abi=Linux_<code>x86-gcc3 </code>
-</pre>
-
-<p>See <a href="/en/XPCOM_ABI" title="en/XPCOM ABI">XPCOM ABI</a> for more details.</p>
-
-<h3 id="platform_.28Platform-specific_packages.29" name="platform_.28Platform-specific_packages.29">platform (Platform-specific packages)</h3>
-
-<p>Some packages are marked with a special flag indicating that they are platform specific. Some parts of content, skin, and locales may be different based on the platform being run. These packages contain three different sets of files, for Windows and OS/2, Macintosh, and Unix-like platforms. For example, the order of the "OK" and "Cancel" buttons in a dialog is different, as well as the names of some items.</p>
-
-<p>The "platform" modifier is only parsed for content registration; it is not recognized for locale or skin registration. However, it applies to content, locale, and skin parts of the package, when specified.</p>
-
-<p>To indicate that a package is platform-specific, add the "platform" modifier to the "content" line after the path, for example:</p>
-
-<pre class="eval">content global-platform jar:toolkit.jar!/toolkit/content/global-platform/ platform
-</pre>
-
-<p>Once that is specified in your manifest you then ensure that under the directory global-platform are subdirectories <code>win</code> (Windows/OS2), <code>mac</code> (OS9/OSX), or <code>unix</code> (Everything Else). Anything residing outside of these subdirectories will be ignored.</p>
-
-<h3 id="xpcnativewrappers" name="xpcnativewrappers">xpcnativewrappers</h3>
-
-<p>Chrome packages can decide whether to use the <a href="/en/XPCNativeWrapper" title="en/XPCNativeWrapper">XPCNativeWrapper</a> security mechanism to automatically protect their code against malicious content that they might access. See <a href="/en/Safely_accessing_content_DOM_from_chrome" title="en/Safely_accessing_content_DOM_from_chrome">Safely accessing content DOM from chrome</a> for details.</p>
-
-<p>This flag is enabled by default since Firefox 1.5. Disabling it manually was possible by specifying <code>xpcnativewrappers=no</code> until Firefox 4.</p>
-
-<div class="geckoVersionNote">
-<p>{{ gecko_callout_heading("2.0") }}</p>
-
-<p>Support for this flag has been removed in Gecko 2.0 {{ geckoRelease("2.0") }}. You can no longer disable <code>XPCNativeWrapper</code>s. To update your add-on to work without this flag:</p>
-
-<ul>
- <li>If your add-on depends upon XBL bindings attached to content objects (that is, it needs to be able to call functions or get and set properties created by the XBL binding), you'll need to use the object's <a href="/en/wrappedJSObject" title="en/wrappedJSObject"><code>wrappedJSObject</code></a> property to obtain a wrapped object.</li>
- <li>If you need to call functions or access properties defined by the content -- for example, if your add-on wants to add a button to the page that calls a JavaScript function defined by the page.</li>
-</ul>
-</div>
-
-<p>The <code>xpcnativewrappers</code> flag applies only to content packages; it is not recognized for locale or skin registration.</p>
-
-<h2 id="Example_Chrome_Manifest" name="Example_Chrome_Manifest">Example chrome manifest</h2>
-
-<pre class="eval">content necko jar:comm.jar!/content/necko/
-locale necko en-US jar:en-US.jar!/locale/en-US/necko/
-content xbl-marquee jar:comm.jar!/content/xbl-marquee/
-content pipnss jar:pipnss.jar!/content/pipnss/
-locale pipnss en-US jar:en-US.jar!/locale/en-US/pipnss/
-# Firefox-only
-overlay <a class="external" rel="freelink">chrome://browser/content/pageInfo.xul</a> <a class="external" rel="freelink">chrome://pippki/content/PageInfoOverlay.xul</a> application={ec8030f7-c20a-464f-9b0e-13a3a9e97384}
-# SeaMonkey-only
-overlay <a class="external" rel="freelink">chrome://navigator/content/pageInfo.xul</a> <a class="external" rel="freelink">chrome://pippki/content/PageInfoOverlay.xul</a> application={92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}
-overlay <a class="external" rel="freelink">chrome://communicator/content/pref/preftree.xul</a> <a class="external" rel="freelink">chrome://pippki/content/PrefOverlay.xul</a>
-content pippki jar:pippki.jar!/content/pippki/
-locale pippki en-US jar:en-US.jar!/locale/en-US/pippki/
-content global-platform jar:toolkit.jar!/content/global-platform/ platform
-skin global classic/1.0 jar:classic.jar!/skin/classic/global/
-override <a class="external" rel="freelink">chrome://global/content/netError.xhtml</a> jar:embedder.jar!/global/content/netError.xhtml
-content inspector jar:inspector.jar!/content/inspector/
-</pre>
-
-<h2 id="Instructions_supported_in_bootstrapped_add_ons" name="Instructions_supported_in_bootstrapped_add_ons">Instructions supported in bootstrapped add-ons</h2>
-
-<p>The following instructions are supported in <a href="/en/Extensions/Bootstrapped_extensions" title="en/Extensions/Bootstrapped extensions">Bootstrapped extensions</a>:</p>
-
-<ul>
- <li><code>manifest</code></li>
- <li><code>content</code></li>
- <li><code>locale</code></li>
- <li><code>skin</code></li>
- <li><code>override</code></li>
-</ul>
-
-<h2 id="Debugging_a_Chrome_Manifest_file" name="Debugging_a_Chrome_Manifest_file">Debugging a chrome manifest file</h2>
-
-<p>The <a class="link-https" href="https://addons.mozilla.org/firefox/addon/chrome-list">Chrome List</a> extension (for Firefox 3.6 and older) shows all registered chrome. This is very helpful when trying to write a <code>chrome.manifest</code> file as you can inspect where the files are being mapped from (jar files, local directory, etc.)</p>
-
-<h2 id="Old-style_contents.rdf_manifests" name="Old-style_contents.rdf_manifests">Old-style contents.rdf manifests</h2>
-
-<p>Before the plaintext manifests were introduced (which happened in Firefox 1.5, Toolkit 1.8), RDF manifests named "contents.rdf" were used to register chrome. This format is deprecated; however, SeaMonkey versions before version 2 do not support the plaintext manifest format yet, so <code>contents.rdf</code> manifests are required for extensions that wish to maintain backwards compatibility with Firefox 1.0 or the suite.</p>
-
-<p>{{ gecko_minversion_note("1.9.2", "The <code>contents.rdf</code> manifest format is no longer supported at all starting with Gecko 1.9.2; add-ons already installed using this format will continue to work but can no longer be installed. Be sure to remove your add-on and reinstall it to ensure that it installs correctly after updating it to use a plaintext manifest.") }}</p>
-
-<h2 id="Official_References_for_Toolkit_API" name="Official_References_for_Toolkit_API">Official references for <a href="/en/Toolkit_API" title="en/Toolkit_API">Toolkit API</a></h2>
-
-<p>{{ page("en-US/docs/Toolkit_API/Official_References") }}</p>
-
-<p>{{ languages( { "fr": "fr/Enregistrement_chrome", "ja": "ja/Chrome_Registration", "pl": "pl/Rejestracja_Chrome" ,"zh-cn":"zh-cn/Chrome_Registration"} ) }}</p>
diff --git a/files/zh-tw/mozilla/connect/index.html b/files/zh-tw/mozilla/connect/index.html
deleted file mode 100644
index 2e7b782447..0000000000
--- a/files/zh-tw/mozilla/connect/index.html
+++ /dev/null
@@ -1,126 +0,0 @@
----
-title: Connect with Mozilla
-slug: Mozilla/Connect
-tags:
- - 繁體中文TW
-translation_of: Mozilla/Connect
----
-<div class="summary">
-<p><span class="seoSummary">Enable, inspire and collaborate to make the Web the primary platform used to create experiences across all connected devices.</span></p>
-</div>
-
-<div>
-<div class="column-container dev-program-callouts dev-program-block dev-program-first dev-program-column-wrapper">
-<div class="dev-program-callout">
-<div class="callout-link-container">
-<h2 id="Hacks_部落格">Hacks 部落格</h2>
-
-<p>A key resource for people developing for the Open Web, the Mozilla Hacks blog offers news and discussion of the latest in Web technologies and browser features.</p>
-
-<div class="callout-link-wrapper"><a class="callout-link ignore-external" href="https://hacks.mozilla.org/" style="white-space: normal;">立刻閱讀 </a></div>
-</div>
-</div>
-
-<div class="dev-program-callout">
-<div class="callout-link-container">
-<h2 id="回饋頻道">回饋頻道</h2>
-
-<p>Do you have a <a href="http://mzl.la/devtools">great idea for the Developer Tools</a> in Firefox or <a href="http://mzl.la/openwebapps">how Open Web Apps should work</a>? Let us know and help shape the future features!</p>
-
-<p>Building things and need help? Ask away on Stack Overflow!<br>
- <span class="smaller"><strong>{{anch("Developer discussions", "Search the Q&amp;A below")}}</strong></span></p>
-
-<div class="callout-link-wrapper"><a class="callout-link ignore-external" href="http://stackoverflow.com/r/mozilla" style="white-space: normal;">Stack Overflow 上的 Mozilla 問與答 </a></div>
-</div>
-</div>
-
-<div class="dev-program-callout">
-<div class="callout-link-container">
-<h2 id="加入_MDN">加入 MDN</h2>
-
-<p>Sign up for MDN! You will able to <a href="/en-US/docs/MDN/Contribute">edit the documentation</a> here, create a profile to show off your work, and get access to features over time as we roll them out.</p>
-
-<div class="callout-link-wrapper"><a class="callout-link" href="/profile/edit" style="white-space: normal;">加入或登入 </a></div>
-</div>
-</div>
-</div>
-
-<div class="dev-program-explanation dev-program-block">
-<h2 id="與_Mozilla_連結">與 Mozilla 連結</h2>
-
-<p>Developers are creating the future by building services and apps for people all over the world. The goal of Mozilla Developer Relations is to help developers to use open and standardized web technologies to succeed in achieving their goals. In addition to the documentation here on MDN, we offer help and other resources towards this goal, through various channels. We invite you to connect, learn, and share your own knowledge.</p>
-
-<p>We are offering help through <a href="http://stackoverflow.com/r/mozilla">Q&amp;A on Stack Overflow</a>, to solve specific technical issues and challenges you might have. We also have a newsletter keeping you informed on the latest happenings in the web scene around web apps and more. <a href="https://marketplace.firefox.com/developers/#newsletter-signup">Subscribe to the Apps &amp; Hacks newsletter.</a></p>
-
-<p>If you share Mozilla's <a href="https://www.mozilla.org/en-US/mission/">mission</a> and <a href="https://www.mozilla.org/en-US/about/manifesto/">principles</a>, and want to help spread them to more developers, check out the ways you can <a href="https://wiki.mozilla.org/Engagement/Developer_Engagement/Technical_Evangelism/Get_Involved">get involved with technical evangelism</a>, and join our <a href="https://lists.mozilla.org/listinfo/evangelism">evangelism discussion group</a>.</p>
-
-<p>We have a lot of plans and ideas for iteratively expanding our Developer Relations offerings, and we want you involved as we do so! So, <a href="http://stackoverflow.com/r/mozilla">follow the tags on Stack Overflow</a>, <a href="https://hacks.mozilla.org/">subscribe to the Hacks blog</a>, <a href="https://marketplace.firefox.com/developers/#newsletter-signup">subscribe to the newsletter, </a>and <a href="/profile/edit">sign up for an account</a>!</p>
-
-<h2 id="加入_Mozilla" style="line-height: 30px;">加入 Mozilla</h2>
-
-<p><span style="line-height: 1.5;">If you want to go beyond <em>connecting</em> with Mozilla, you can <em>join</em> Mozilla and help realize <a href="https://www.mozilla.org/mission/">Mozilla's mission of building a better Internet</a>. As a developer, you have skills to contribute in many areas, as well as the opportunity to enhance your skills. Mozilla is an open source project, so we "default to open." You can "view source" and contribute to our software development projects, like the Firefox browser for desktop and Android, Firefox OS, and Mozilla's own websites. You can become part of an international community and get recognition for your efforts. Here are some of the advantages of contributing to the Mozilla project.</span></p>
-
-<h3 id="學習新東西的機會"><strong>學習新東西的機會 </strong></h3>
-
-<div>
-<p><span style="line-height: 1.5;">In writing code for an open source project, you may face problems you have not encountered before, which present learning opportunities for you. You can try out new tools and techniques in an open source project. For example, if you've never done any unit testing, and cannot get permission from your boss to do so in your regular job, writing some code for an open source project would be an excellent place to try it out. Contributing to open source gives you the opportunity to collaborate with and get to know many people around the world who have similar interests. Moreover, an open source organization like Mozilla has many contributors who can help you in solving problems you encounter.</span> If you're just getting started contributing, you can look for "mentored" bugs, where an experienced contributor has offered to help a newcomer fix them.</p>
-
-<h3 id="我可以從貢獻中得到什麼?"><strong>我可以從貢獻中得到什麼? </strong></h3>
-
-<p><span style="line-height: 1.5;">Exploring many things and getting recognition in the community -- these are the intangible benefits of contributing to Mozilla. While we can't guarantee specific tangible benefits, many valued contributors receive free Mozilla gear and invitations to Mozilla-related events, and are first in line to be considered for internships. Moreover, your experience in contributing to an open source project might help you find a job. </span><span style="line-height: 1.5;">More and more employers of developers are looking at open source contributions. They like to see that you're blogging and contributing to mailing lists, and they really like to see you listed as a committer on an open source project. It can also help with the work experience section of your resume. </span></p>
-
-<h3 id="我可以如何貢獻_Mozilla?"><strong>我可以如何貢獻 Mozilla? </strong></h3>
-
-<p><span style="line-height: 1.5;">There are many project area for which you can contribute to Mozilla. You can find a current, complete list on the main Mozilla <a href="https://www.mozilla.org/contribute">Get Involved</a> page. Some areas that may interest you as a developer include:</span></p>
-
-<ul>
- <li><a href="http://www.whatcanidoformozilla.org/">Coding</a></li>
- <li><a href="http://www.whatcanidoformozilla.org/">Web development</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia">Firefox OS</a></li>
- <li><a href="https://quality.mozilla.org/teams/">QA</a></li>
- <li><a href="https://wiki.mozilla.org/Marketplace/Contributing/Addons">Add-ons</a></li>
- <li><a href="https://wiki.mozilla.org/Marketplace/Contributing/Apps">Apps</a></li>
- <li><a href="/en-US/docs/MDN/Getting_started">Developer documentation (here on MDN)</a></li>
-</ul>
-</div>
-</div>
-
-<div class="column-container dev-program-block">
-<div class="column-half" id="Developer_discussions">
-<h2 id="Stack_Overflow_上的問與答_查看所有_QA…">Stack Overflow 上的問與答 <a class="heading-link" href="http://stackoverflow.com/r/mozilla">查看所有 Q&amp;A…</a></h2>
-
-<p>We have Q&amp;A to discuss challenges and issues when developing, in particular for Firefox OS and the Open Web on mobile. It's available on Stack Overflow under the easy URL <a href="http://stackoverflow.com/r/mozilla">http://stackoverflow.com/r/mozilla</a>.</p>
-
-<div class="stack-form">Stack form</div>
-
-<h3 id="最新_QA_主題">最新 Q&amp;A 主題</h3>
-</div>
-
-<div class="column-half dev-program-hacks dev-program-block"> </div>
-</div>
-
-<p class="dev-program-block"><img alt="Developers at a Firefox OS workshop in Madrid." src="https://mdn.mozillademos.org/files/7479/PhonesUp.jpg" style="display: block; height: 359px; margin: 0px auto; max-width: 100%; width: 720px;"></p>
-
-<div class="column-container dev-program-block">
-<div class="column-7 dev-program-events">
-<h2 id="Mozilla_在哪裡?_在活動頁面上查看訪客與詳細說明…">Mozilla 在哪裡? <a class="heading-link" href="https://developer.mozilla.org/en/events">在活動頁面上查看訪客與詳細說明… </a></h2>
-
-<p>Here is a listing of events where Mozilla representatives will be speaking. Make sure to talk to them!</p>
-</div>
-
-<div class="column-5">
-<h2 id="其他資源">其他資源</h2>
-
-<ul class="no-bullets">
- <li><a href="http://www.youtube.com/user/mozhacks">Mozilla Hacks on YouTube</a>
-
- <ul>
- <li><a href="http://www.youtube.com/playlist?list=PLo3w8EB99pqIHIUUv08hBCHq1OgPKhdo0">Firefox OS videos</a></li>
- <li><a href="http://www.youtube.com/playlist?list=PLo3w8EB99pqLZNY22xKbTEzMfYo9PXAlm">Firefox Developer Tools videos</a></li>
- </ul>
- </li>
- <li><a href="https://twitter.com/mozhacks">@mozhacks on Twitter</a></li>
-</ul>
-</div>
-</div>
-</div>
diff --git a/files/zh-tw/mozilla/creating_mozsearch_plugins/index.html b/files/zh-tw/mozilla/creating_mozsearch_plugins/index.html
deleted file mode 100644
index d41978c6ee..0000000000
--- a/files/zh-tw/mozilla/creating_mozsearch_plugins/index.html
+++ /dev/null
@@ -1,56 +0,0 @@
----
-title: 製作 MozSearch 搜尋模組
-slug: Mozilla/Creating_MozSearch_plugins
-tags:
- - 搜尋模組
-translation_of: Mozilla/Creating_MozSearch_plugins
----
-<p>Firefox 2 使用簡化的 <a class="external" href="http://opensearch.org/">OpenSearch</a> 格式儲存搜尋模組,而 MozSearch 搜尋模組則是描述搜尋引擎、URL 及相關參數的 XML 檔。
-</p>
-<div class="warning"><b>警告:</b>MozSearch 並非標準格式,也只應於 Mozilla 專案內部使用。除非要包裝在 <a href="zh_tw/Bundles#Application-specific_Extension_Files">Firefox 擴充套件</a>中或直接與 Firefox 安裝檔一起發佈,否則不該使用這種格式。要製作能由網頁安裝的搜尋模組,請參考<a href="zh_tw/%e8%a3%bd%e4%bd%9c_OpenSearch_%e6%90%9c%e5%b0%8b%e6%a8%a1%e7%b5%84">製作 OpenSearch 搜尋模組</a>。</div>
-<h2 id=".E6.90.9C.E5.B0.8B.E6.A8.A1.E7.B5.84.E6.AA.94" name=".E6.90.9C.E5.B0.8B.E6.A8.A1.E7.B5.84.E6.AA.94">搜尋模組檔</h2>
-<p>MozSearch 格式檔與 <a href="zh_tw/%e8%a3%bd%e4%bd%9c_OpenSearch_%e6%90%9c%e5%b0%8b%e6%a8%a1%e7%b5%84">OpenSearch</a> 格式很像,只是根元素及 XML 名稱空間不同。
-</p>
-<h2 id=".E7.AF.84.E4.BE.8B.EF.BC.9AYahoo.21_.E6.90.9C.E5.B0.8B" name=".E7.AF.84.E4.BE.8B.EF.BC.9AYahoo.21_.E6.90.9C.E5.B0.8B">範例:Yahoo! 搜尋</h2>
-<p>下列 XML 是內建於英文版 Firefox 2 的 Yahoo! 搜尋模組:
-</p>
-<pre>&lt;SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/"&gt;
-&lt;ShortName&gt;Yahoo&lt;/ShortName&gt;
-&lt;Description&gt;Yahoo Search&lt;/Description&gt;
-&lt;InputEncoding&gt;UTF-8&lt;/InputEncoding&gt;
-&lt;Image width="16" height="16"&gt;data:image/x-icon;base64,R0lGODlhEAAQAJECAP8AAAAAAP///wAAACH5BAEAAAIALAAAAAAQABAAAAIplI+py+0NogQuyBDEnEd2kHkfFWUamEzmpZSfmaIHPHrRguUm/fT+UwAAOw==&lt;/Image&gt;
-&lt;Url type="application/x-suggestions+json" method="GET"
- template="http://ff.search.yahoo.com/gossip?output=fxjson&amp;amp;command={searchTerms}" /&gt;
-&lt;Url type="text/html" method="GET" template="http://search.yahoo.com/search"&gt;
- &lt;Param name="p" value="{searchTerms}"/&gt;
- &lt;Param name="ei" value="UTF-8"/&gt;
-
- &lt;MozParam name="fr" condition="pref" pref="yahoo-fr" /&gt;
-&lt;/Url&gt;
-&lt;SearchForm&gt;http://search.yahoo.com/&lt;/SearchForm&gt;
-&lt;/SearchPlugin&gt;
-</pre>
-<p>假設使用者選擇 Yahoo! 搜尋模組,然後在搜尋欄內輸入「mozilla」後按下 Enter 鍵。接著 Firefox 會依據上面的搜尋模組敘述前往這個搜尋 URL:
-</p>
-<pre class="eval"><span class="nowiki">http://search.yahoo.com/search?p=mozilla&amp;ei=UTF-8&amp;fr=moz2</span>
-</pre>
-<p>若使用者只單純按下搜尋欄的放大鏡圖示,或者在搜尋欄隱藏時點選「工具>網路搜尋」,則瀏覽器會前往 <code>&lt;SearchForm&gt;</code> 指定的 &lt;tt&gt;<span class="nowiki">http://search.yahoo.com/</span>&lt;/tt&gt;。
-</p>
-<h2 id=".E7.AF.84.E4.BE.8B.EF.BC.9A.E6.90.9C.E5.B0.8B_MDC" name=".E7.AF.84.E4.BE.8B.EF.BC.9A.E6.90.9C.E5.B0.8B_MDC">範例:搜尋 MDC</h2>
-<p>此搜尋模組能協助你輕鬆搜尋 Mozilla 開發者中心英文版的文件:
-</p>
-<pre>&lt;SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/"&gt;
-&lt;ShortName&gt;MDC&lt;/ShortName&gt;
-&lt;Description&gt;Mozilla Developer Center search&lt;/Description&gt;
-&lt;InputEncoding&gt;UTF-8&lt;/InputEncoding&gt;
-&lt;Image width="16" height="16"&gt;data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAABGdBTUEAAK%2FINwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz%2F%2Fz8DJQAggJiQOe%2Ffv2fv7Oz8rays%2FN%2BVkfG%2FiYnJfyD%2F1%2BrVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw%2F8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi%2FG%2BQKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo%2BMXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia%2BCuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq%2FvLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg%2FkdypqCg4H8lUIACnQ%2FSOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD%2BaDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg%3D%3D&lt;/Image&gt;
-&lt;Url type="text/html" method="GET" template="http://developer.mozilla.org/en/docs/Special:Search?search={searchTerms}"/&gt;
-&lt;SearchForm&gt;http://developer.mozilla.org/en/docs/Special:Search&lt;/SearchForm&gt;
-&lt;/SearchPlugin&gt;
-</pre>
-<p>這個範例中單純將參數加到 URL 中,而不是使用 <code>&lt;Param&gt;</code> 指定參數。這也是使用 <code>GET</code> 時的建議做法,而 <code>&lt;Param&gt;</code> 應於以 <code>POST</code> 方式傳送表單時才使用。
-</p>
-<h2 id=".E5.BB.B6.E4.BC.B8.E9.96.B1.E8.AE.80" name=".E5.BB.B6.E4.BC.B8.E9.96.B1.E8.AE.80">延伸閱讀</h2>
-<ul><li><a href="zh_tw/%e8%a3%bd%e4%bd%9c_OpenSearch_%e6%90%9c%e5%b0%8b%e6%a8%a1%e7%b5%84#.E9.99.A4.E9.8C.AF.E6.8A.80.E5.B7.A7">搜尋模組除錯技巧</a>
-</li></ul>
-{{ languages( { "ca": "ca/Creaci\u00f3_de_connectors_MozSearch", "en": "en/Creating_MozSearch_plugins", "es": "es/Creaci\u00f3n_de_plugins_MozSearch", "fr": "fr/Cr\u00e9ation_de_plugins_MozSearch", "ja": "ja/Creating_MozSearch_plugins", "it": "it/Creare_Plugin_MozSearch", "pl": "pl/Tworzenie_wtyczek_MozSearch" } ) }}
diff --git a/files/zh-tw/mozilla/firefox/developer_edition/index.html b/files/zh-tw/mozilla/firefox/developer_edition/index.html
deleted file mode 100644
index d912a36470..0000000000
--- a/files/zh-tw/mozilla/firefox/developer_edition/index.html
+++ /dev/null
@@ -1,56 +0,0 @@
----
-title: Firefox 開發者版本
-slug: Mozilla/Firefox/Developer_Edition
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Firefox/Developer_Edition
----
-<div>{{FirefoxSidebar}}</div><p style="text-align: center;"><img alt="" src="https://mdn.mozillademos.org/files/9143/firefox-dev-ed_logo-only_1024.png" style="width: 256px; height: 256px; display: block; margin-left: auto; margin-right: auto;">一個專為 Web 開發者量身定做的 Firefox 版本。</p>
-
-<p><a href=" https://www.mozilla.org/zh-TW/firefox/developer/" style="width: 250px; display: block; margin-left: auto; margin-right: auto; padding: 10px; text-align: center; border-radius: 4px; background-color: #81BC2E; white-space: nowrap; color: white; text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.2), 0px -1px 0px 0px rgba(0, 0, 0, 0.3) inset;">下載 Firefox 開發者版本</a></p>
-
-<hr>
-<div class="column-container">
-<div class="column-half">
-<h3 id="最新的_Firefox_功能"><strong>最新的 Firefox 功能</strong></h3>
-
-<p>Firefox Developer Edition 取代了 <a href="https://wiki.mozilla.org/Release_Management/Release_Process">Firefox 釋出流程</a>中的 Aurora 頻道。如同 Aurora,各功能會在 Nightly builds 中穩定下來後,每隔六週下放到 Developer Edition 裡面。</p>
-
-<p>透過 Developer Edition,您可以在至少 12 週前接觸到 Firefox 正式釋出的工具及平台功能。</p>
-
-<p><a href="/zh-TW/Firefox/Releases/35">來看看 Developer Edition 有哪些新功能</a>。</p>
-</div>
-
-<div class="column-half">
-<h3 id="清晰的界面"><strong>清晰的界面</strong></h3>
-
-<p>更快找到開發者工具。</p>
-
-<h3 id="實驗性的開發者工具"><strong>實驗性的開發者工具</strong></h3>
-
-<p>我們加入了尚未準備好正式釋出的實驗性工具。</p>
-
-<p>例如,Developer Edition 加入了 <a href="/en-US/docs/Tools/Valence">Valence 附加元件</a>,一個可以讓您透過 <a href="/zh-TW/docs/Tools">Firefox 開發者工具</a>連到其他瀏覽器,像是 Android 上面的 Chrome 及 iOS 上面的 Safari。</p>
-</div>
-</div>
-
-<div class="column-container">
-<div class="column-half">
-<h3 id="獨立的設定檔"><strong>獨立的設定檔</strong></h3>
-
-<p>Firefox Developer Edition 使用一個獨立於其他已經安裝在您電腦上 Firefox 版本的設定檔。這意味著您可以簡單的在執行 Developer Edition 的同時使用正式或測試版的 Firefox。</p>
-
-<div class="note">
-<p><strong>註:</strong>這表示在您第一次啟動  Developer Edition 後,將會看到一個完全沒有自訂外觀﹑沒有擴充套件、沒有書籤、也沒有歷史紀錄的瀏覽器。若您想讓您的  Developer Edition 跟您其他版本的  Firefox 使用一樣的設定,您可以<a href="https://support.mozilla.org/zh-TW/kb/how-do-i-set-up-firefox-sync">使用  Firefox Sync</a> 來達成同步。</p>
-</div>
-</div>
-
-<div class="column-half">
-<h3 id="針對_Web_開發者的設置"><strong>針對 Web 開發者的設置</strong></h3>
-
-<p>我們針對 Web 開發者的需求調整了預設的設定值。例如,chrome 及遠端除錯功能預設為開啟。</p>
-</div>
-</div>
-
-<p> </p>
diff --git a/files/zh-tw/mozilla/firefox/developer_edition/reverting/index.html b/files/zh-tw/mozilla/firefox/developer_edition/reverting/index.html
deleted file mode 100644
index 0a83335196..0000000000
--- a/files/zh-tw/mozilla/firefox/developer_edition/reverting/index.html
+++ /dev/null
@@ -1,25 +0,0 @@
----
-title: 回到過去
-slug: Mozilla/Firefox/Developer_Edition/Reverting
-translation_of: Mozilla/Firefox/Developer_Edition/Reverting
----
-<div>{{FirefoxSidebar}}</div><h2 id="換掉_Developer_Edition_佈景主題">換掉 Developer Edition 佈景主題</h2>
-
-<p><br>
- 如果您想繼續使用 Developer Edition, 可是比較喜歡目前套用在 Firefox 及 Firefox Beta 的 Australis 界面,您可以切換到一般的 Firefox 佈景主題:只要打開「自訂模式」面板並點擊「使用 Firefox Developer Edition 佈景主題」按鈕即可。</p>
-
-<p>{{EmbedYouTube("OvJwofTjsNg")}}</p>
-
-<p>注意,目前 Developer Edition 佈景主題尚未與個性面板相容。所以如果您想套用個性面板,您必須先切回 Australis 界面。</p>
-
-<h2 id="回到_Firefox_Aurora">回到 Firefox Aurora</h2>
-
-<p><br>
- 如果您想保留所有 Firefox Developer Edition 的前期測試功能,但是又不想要有其他的改變,您可以回復到看起來就像是以前的 Firefox Aurora。請依序執行下面兩步驟:</p>
-
-<ol>
- <li>開啟 Developer Edition 的選項頁面,並將「允許 Firefox Developer Edition 與 Firefox 同時執行」選項的勾選取消掉。您將會收到重新啟動瀏覽器的提示。</li>
- <li>瀏覽器重新啟動後,您可以打開「自訂模式」面板並點擊「使用 Firefox Developer Edition 佈景主題」按鈕來關閉 Developer Edition 佈景主題。</li>
-</ol>
-
-<p>{{EmbedYouTube("0Ofq-vlw8Qw")}}</p>
diff --git a/files/zh-tw/mozilla/firefox/multiprocess_firefox/index.html b/files/zh-tw/mozilla/firefox/multiprocess_firefox/index.html
deleted file mode 100644
index 6afe2dd67d..0000000000
--- a/files/zh-tw/mozilla/firefox/multiprocess_firefox/index.html
+++ /dev/null
@@ -1,80 +0,0 @@
----
-title: 多處理程序的 Firefox
-slug: Mozilla/Firefox/Multiprocess_Firefox
-tags:
- - Elecrolysis
- - Firefox
- - Multiprocess
- - e10s
-translation_of: Mozilla/Firefox/Multiprocess_Firefox
----
-<div>{{FirefoxSidebar}}</div><p>在舊的 Firefox 桌面版本中,整個瀏覽器都是執行在單一的作業系統處理程序裡。特別是用來執行瀏覽器使用者介面(又稱為「chrome code」)的 JavaScript 和網頁裡的程式碼(又稱為「內容」或「網頁內容」)都在同一個處理程序中。<br>
-<br>
-最新版的 Firefox 會分別在單獨的處理程序中執行瀏覽器的介面和網頁內容。在這個架構的第一個版本中,所有瀏覽器分頁在同一個處理程序中執行,而瀏覽器介面則在另外的一個處理程序中。在未來幾個版本後,我們希望能有不只一個處理程序。這個提供多處理程序 Firefox 的專案稱為 Electrolysis,有時候會縮寫成 e10s。</p>
-
-<p>多處理程序的 Firefox 不會影響一般的網頁。只有 Firefox 本身和附加元件的開發者們需要直接存取網頁內容時才會受到影響。</p>
-
-<p>使用者介面的 chrome JavaScript 必須使用 <a href="/Firefox/Multiprocess_Firefox/Message_manager">message manager</a> 來間接存取網頁內容。為了緩解過渡期的影響,我們已經實作了 <a href="/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">Cross Process Object Wrappers</a> 和一些<a href="/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts#Compatibility_shims">給附加元件開發者的相容替代方案</a>。如果你是附加元件的開發者,想知道這會不會影響到你,請參閱<a href="/Mozilla/Add-ons/Working_with_multiprocess_Firefox">多處理程序 Firefox 的工作指南</a>。</p>
-
-<hr>
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/Firefox/Multiprocess_Firefox/Technical_overview">技術總覽</a></dt>
- <dd>非常高階的多處理程序 Firefox 實作解釋。</dd>
- <dt><a href="/zh-TW/Firefox/Multiprocess_Firefox/Web_content_compatibility">網頁內容相容性指南</a></dt>
- <dd>過渡期可能出現的潛在網站相容性問題的指南和細節。提示:不是很多!</dd>
- <dt><a href="/Firefox/Multiprocess_Firefox/Glossary">用語表</a></dt>
- <dd>多處理程序 Firefox 的術語參考。</dd>
- <dt><a href="/Firefox/Multiprocess_Firefox/Message_Manager">Message manager</a></dt>
- <dd>溝通介面與內容的元件完整指南。</dd>
- <dt><a href="/zh-TW/Mozilla/Add-ons/SDK/Guides/Multiprocess_Firefox_and_the_SDK">基於 SDK 的附加元件</a></dt>
- <dd>如何移植使用 Add-on SDK 開發的附加元件。</dd>
- <dt><a href="/Firefox/Multiprocess_Firefox/Which_URIs_load_where">各種 URIs 在哪裡載入</a></dt>
- <dd>URIs(chrome:, about:, file:, resource:)在哪個處理程序中載入的快速指南。</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/Firefox/Multiprocess_Firefox/Motivation">動機</a></dt>
- <dd>為什麼我們要實作多處理程序的 Firefox:效能、安全和穩定。</dd>
- <dt><a href="/Mozilla/Add-ons/Working_with_multiprocess_Firefox">附加元件移植指南</a></dt>
- <dd>如果你是附加元件的開發者,來這裡看看你要如何處理程式碼。</dd>
- <dt><a href="/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">跨處理程序元件包裝(Cross Process Object Wrappers)</a></dt>
- <dd>Cross Process Object Wrappers 是一個移植工具,讓 chrome code 可以同步存取內容。</dd>
- <dt><a href="/Firefox/Multiprocess_Firefox/Debugging_frame_scripts">內容處理程序的除錯</a></dt>
- <dd>如何在內容處理程序、包含框架和處理程序腳本中進行除錯。</dd>
- <dt><a href="/docs/Mozilla/Firefox/Multiprocess_Firefox/Tab_selection_in_multiprocess_Firefox">多處理程序 Firefox 的分頁處理</a></dt>
- <dd>在多處理程序的 Firefox 中分頁是如何切換的。</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts">Chrome 程式碼的限制</a></dt>
- <dd>不再有用的 Chrome 程式碼,以及如何修正。</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/Firefox/Multiprocess_Firefox/Limitations_of_frame_scripts">框架程式碼的限制</a></dt>
- <dd>不再有用的框架程式碼,以及如何替代。</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="聯絡我們">聯絡我們</h2>
-
-<p>了解更多關於項目、參與、或者來問問題。</p>
-
-<ul>
- <li><strong>Electrolysis 專案頁面</strong>:<a href="https://wiki.mozilla.org/Electrolysis">https://wiki.mozilla.org/Electrolysis</a></li>
- <li><strong>IRC</strong>:#e10s on <a href="https://wiki.mozilla.org/IRC">irc.mozilla.org</a></li>
- <li><strong>郵件群組</strong>:<a href="https://groups.google.com/forum/#!forum/mozilla.dev.tech.electrolysis">dev.tech.electrolysis</a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/firefox/privacy/index.html b/files/zh-tw/mozilla/firefox/privacy/index.html
deleted file mode 100644
index 1f42ab5be0..0000000000
--- a/files/zh-tw/mozilla/firefox/privacy/index.html
+++ /dev/null
@@ -1,9 +0,0 @@
----
-title: 隱私
-slug: Mozilla/Firefox/Privacy
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Firefox/Privacy
----
-<div>{{FirefoxSidebar}}</div><p>{{ ListSubpages () }}</p>
diff --git a/files/zh-tw/mozilla/firefox/privacy/tracking_protection/index.html b/files/zh-tw/mozilla/firefox/privacy/tracking_protection/index.html
deleted file mode 100644
index a52f8b815d..0000000000
--- a/files/zh-tw/mozilla/firefox/privacy/tracking_protection/index.html
+++ /dev/null
@@ -1,74 +0,0 @@
----
-title: 追蹤保護
-slug: Mozilla/Firefox/Privacy/Tracking_Protection
-translation_of: Mozilla/Firefox/Privacy/Tracking_Protection
----
-<div>{{FirefoxSidebar}}</div><h2 id="追蹤保護是什麼?">追蹤保護是什麼?</h2>
-
-<p>在第 42 版後,Firefox Desktop 與 Firefox for Android 導入了追蹤保護。在隱私視窗(Firefox for Android 則是隱私標籤)內,Firefox 會封鎖從其他用戶追蹤網站載入的內容。</p>
-
-<p>有些被封鎖的內容,屬於頁面排版的一部分。如果 Firefox 因為封鎖了這些內容而造成跑版,用戶很可能會注意到。但如果針對遭封鎖的元素,以其他元素填充的話,用戶也可能完全不會注意到。</p>
-
-<p>當 Firefox 封鎖內容的時候,網頁主控台的訊息會跳出如下面般的紀錄:</p>
-
-<pre>因為啟用了追蹤保護,位於「http://some/url」的資源已被封鎖。</pre>
-
-<p>請記得在使用 Firefox for Android 的時候,你可以透過遠端除錯訪問主控台。</p>
-
-<p>Firefox UI 會在封鎖內容的時候告訴用戶,並同時告知用戶可以在此次瀏覽階段解除封鎖。用戶也可以選擇完全停用追蹤保護。</p>
-
-<h2 id="Firefox_如何決定封鎖什麼?">Firefox 如何決定封鎖什麼?</h2>
-
-<p>載入內容的封鎖與否,取決於該內容來自哪個網域。</p>
-
-<p>Firefox 會傳送一個確定參與用戶追蹤的網域列表。當追蹤保護啟動的時候,Firefox 會封鎖來自列表網站的內容。</p>
-
-<p>追蹤用戶的網站通常來自第三方廣告網站與分析網站。</p>
-
-<h2 id="這對我的網站有什麼意義?">這對我的網站有什麼意義?</h2>
-
-<p>當追蹤保護啟用時,最明顯的意義是:</p>
-
-<ul>
- <li>用戶不會見到由第三方維護的追蹤性內容</li>
- <li>你的網站無法使用與追蹤有關的第三方廣告與分析服務。</li>
-</ul>
-
-<p>更值得注意的是,如果你的網站有部分依賴於追蹤器的運作程式碼,那這些追蹤程式碼將會被封鎖和禁止並可能導致你的網站失去正常運作當追蹤保護被啟用。例如,當你的網站包含程式碼,那些程式碼依賴於追蹤網站所提供的程式碼的功能,那麼這些追蹤網站的程式碼的功能將會失敗,不會運作,停止呼叫程式碼,失去網站的運作功能。</p>
-
-<p>像是說,不要這樣用 Google Analytics:</p>
-
-<pre class="brush:html example-bad">&lt;a href="http://www.example.com" onclick="trackLink('http://www.example.com', event);"&gt;Visit example.com&lt;/a&gt;
-&lt;script&gt;
-function trackLink(url,event) {
- event.preventDefault();
- ga('send', 'event', 'outbound', 'click', url, {
- 'transport': 'beacon',
- 'hitCallback': function() {
- document.location = url;
- }
- });
-}
-&lt;/script&gt;</pre>
-
-<p>而是要在使用物件以前偵測該物件是否存在或被停用,防止程式運作的失敗。像是:</p>
-
-<pre class="brush:html example-good">&lt;a href="http://www.example.com" onclick="trackLink('http://www.example.com', event);"&gt;Visit example.com&lt;/a&gt;
-&lt;script&gt;
-function trackLink(url,event) {
- event.preventDefault();
- if (window.ga &amp;&amp; <span class="pl-smi">ga</span>.loaded) {
- ga('send', 'event', 'outbound', 'click', url, {
- 'transport': 'beacon',
- 'hitCallback': function() { document.location = url; }
- });
- } else {
- document.location = url;
- }
-}
-&lt;/script&gt;
-</pre>
-
-<p>關於此技術的詳細資訊可參見 <a href="https://hacks.mozilla.org/2016/01/google-analytics-privacy-and-event-tracking/">Google Analytics, Privacy, and Event Tracking</a>.</p>
-
-<p>取決於那些第三方網站程式的程式碼寫法和運作方式,這樣的程式碼寫法不會是適合和適用於你的網站的程式碼。所以說,你的網站將會失敗停止運作如果這些第三方外掛程式碼回應過慢或不可用或追蹤程式碼被外掛程式停用。</p>
diff --git a/files/zh-tw/mozilla/firefox/releases/3/firefox_3_css_improvement/index.html b/files/zh-tw/mozilla/firefox/releases/3/firefox_3_css_improvement/index.html
deleted file mode 100644
index bbad0696a8..0000000000
--- a/files/zh-tw/mozilla/firefox/releases/3/firefox_3_css_improvement/index.html
+++ /dev/null
@@ -1,30 +0,0 @@
----
-title: Firefox 3 CSS Improvement
-slug: Mozilla/Firefox/Releases/3/Firefox_3_CSS_Improvement
-translation_of: Mozilla/Firefox/releases/3/CSS_improvements
----
-<div>{{FirefoxSidebar}}</div><h3 id="Firefox_3_CSS_.E7.9A.84.E6.94.B9.E5.96.84" name="Firefox_3_CSS_.E7.9A.84.E6.94.B9.E5.96.84">Firefox 3 CSS 的改善</h3>
-<ul>
- <li>實做了 <a class="external" href="http://www.w3.org/TR/CSS21/visuren.html#propdef-display">display</a> property 的兩個特性值 <a class="external" href="http://www.w3.org/TR/CSS21/visuren.html#value-def-inline-block">inline-block</a> 與 <a class="external" href="http://www.w3.org/TR/CSS21/tables.html#value-def-inline-table">inline-table</a>。</li>
- <li>現在所有平台都支援 <a class="external" href="http://www.w3schools.com/css/pr_font_font-size-adjust.asp">font-size-adjust</a> property (先前只在 Windows 平台支援)。</li>
- <li>支援 <a class="external" href="http://www.w3.org/TR/css3-color/">CSS 3 Color Module</a> 中加入的特性值 <a class="external" href="http://www.w3.org/TR/css3-color/#rgba-color">rgba()</a> 與 <a class="external" href="http://www.w3.org/TR/css3-color/#hsla-color">hsla()</a> (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=147017">Bug 147017</a>)。</li>
- <li>支援 <a class="external" href="http://www.w3.org/TR/css3-ui/">CSS3 Basic User Interface Module</a> 的 pesudo-class <a class="external" href="http://www.w3.org/TR/css3-ui/#pseudo-default">:default</a> (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=302186">Bug 302186</a>)。</li>
- <li>替 width, min-width, max-width 這三個 properties 加入四個特性值: -moz-max-content, -moz-min-content, -moz-fit-content, 與 -moz-available (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=311415">Bug 311415</a> 與 <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=402706">Bug 402706</a>)。</li>
- <li>支援 HTML soft hyphens (&amp;shy;)。</li>
- <li>現在 Pre-formatted tabs 在使用比例字型時的表現好多了,遵守 CSS 2.1 規格書。</li>
- <li>支援微軟的 CSS 規格 <a class="external" href="http://developer.mozilla.org/en/docs/CSS:ime-mode">ime-mode </a> property。</li>
- <li>現在支援了 CSS text-rendering property for HTML (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=387969">Bug 387969</a>)。</li>
- <li>實做了兩個 CSS properties: -moz-border-*-start 與 -moz-border-*-end (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=74880">Bug 74880</a>)。</li>
- <li>現在 -moz-initial 幾乎實做於所有的 CSS properties 了 (除了 quotes and -moz-border-*-colors) (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=80887">Bug 80887</a>)。</li>
- <li>window.getComputedStyle() 現在支援所有已支援的 CSS properties (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=316981">Bug 316981</a>).</li>
- <li>支援 content property 的特性值 "none" (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=378535">Bug 378535</a>)。</li>
- <li>支援 cursor property 的特性值 "none" (<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=378535">Bug 378535</a>)。</li>
-</ul>
-<h3 id=".E5.8F.83.E8.80.83.E8.B3.87.E8.A8.8A" name=".E5.8F.83.E8.80.83.E8.B3.87.E8.A8.8A">參考資訊</h3>
-<ul>
- <li><a class="external" href="http://developer.mozilla.org/en/docs/CSS_improvements_in_Firefox_3">CSS improvements in Firefox 3 原始網頁</a></li>
-</ul>
-<h3 id=".E5.BB.B6.E4.BC.B8.E9.96.B1.E8.AE.80" name=".E5.BB.B6.E4.BC.B8.E9.96.B1.E8.AE.80">延伸閱讀</h3>
-<ul>
- <li><a class="external" href="http://msdn2.microsoft.com/en-us/library/ms533883.aspx">ime-mode Attribute | imeMode Property</a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/gecko/chrome/api/browser_api/index.html b/files/zh-tw/mozilla/gecko/chrome/api/browser_api/index.html
deleted file mode 100644
index faa28e0f03..0000000000
--- a/files/zh-tw/mozilla/gecko/chrome/api/browser_api/index.html
+++ /dev/null
@@ -1,158 +0,0 @@
----
-title: Browser API
-slug: Mozilla/Gecko/Chrome/API/Browser_API
-translation_of: Mozilla/Gecko/Chrome/API/Browser_API/Using
----
-<p>{{ non-standard_header() }}</p>
-<p>{{ B2GOnlyHeader2('privileged') }}</p>
-<h2 id="摘要">摘要</h2>
-<p>HTML Browser API 其實是 HTML <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 元素的延伸,可讓 Web Apps 建構瀏覽器或類似瀏覽器的 Apps。主要可分為 2 大項:</p>
-<ul>
- <li>針對嵌入式內容,讓 <code>iframe</code> 行為如同最上層的瀏覽器視窗。也就是說 <a href="https://developer.mozilla.org/en-US/docs/DOM/window.top" title="/en-US/docs/DOM/window.top"><code>window.top</code></a><code>、</code><a href="https://developer.mozilla.org/en-US/docs/DOM/window.parent" title="/en-US/docs/DOM/window.parent"><code>window.parent</code></a><code>、</code><a href="https://developer.mozilla.org/en-US/docs/DOM/window.frameElement" title="/en-US/docs/DOM/window.frameElement"><code>window.frameElement</code></a><code> 都不該顯示出上層的頁</code>框階層 (Frame hierarchy)。在不同情況下,也能用來說明嵌入式內容是否為 Open Web Apps。</li>
- <li>用以控制並監聽嵌入式內容狀態變化的 API。</li>
-</ul>
-<p>另在「嵌入式內容就是 1 個 <a href="/en-US/docs/Apps" title="/en-US/docs/Apps">Open Web App</a>」的情況下,將於合適的 Apps 環境 (如權限) 中載入該內容。</p>
-<h2 id="用途">用途</h2>
-<p>設定了 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#attr-mozbrowser">mozbrowser</a> 屬性之後,即可將 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 轉為瀏覽器框架:</p>
-<pre class="brush: html">&lt;iframe src="http://hostname.tld" mozbrowser&gt;</pre>
-<p>如果要嵌入 Open Web Apps,就必須提供 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#attr-mozapp">mozapp</a> 屬性,且導向 Apps 的 manifest 檔案之路徑應為:</p>
-<pre>&lt;iframe src="http://hostname.tld" mozapp='http://path/to/manifest.webapp' mozbrowser&gt;</pre>
-<p>最後透過 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#attr-remote">remote</a> 屬性,<a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 內容可載入至本身的子處理程序 (Child process) 中,藉以分離出「嵌入此 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 頁面」的處理程序。</p>
-<pre>&lt;iframe src="http://hostname.tld" mozbrowser remote&gt;</pre>
-<div class="warning">
- <p><strong>警告:</strong>因應安全考量,若要從未知/未經信任的來源下載內容,則必備最後一項屬性。若要略過此屬性,則 Apps 可能受到惡意網站的危害。</p>
-</div>
-<h2 id="權限">權限</h2>
-<p>任何 Apps 若要嵌入瀏覽器框架,則其 <a href="/en-US/docs/Web/Apps/Manifest" title="/en-US/docs/Web/Apps/Manifest">app manifest</a> 檔案中必備 <code>browser</code> 權限。</p>
-<pre class="brush: json">{
- "permissions": {
- "browser": {}
- }
-}</pre>
-<p>此外,若要嵌入 Open Web Apps,則該 App 亦需具備 <code>embed-apps</code> 權限。</p>
-<pre class="brush: json">{
- "permissions": {
- "browser": {},
- "embed-apps": {}
- }
-}</pre>
-<h2 id="其他函式">其他函式</h2>
-<p>為因應瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的需求,Firefox OS 另擴充了 <a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement" title="/en-US/docs/Web/API/HTMLIFrameElement"><code>HTMLIFrameElement</code></a> DOM 介面。下列新函式將為 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 提供更多功能:</p>
-<h3 id="存取_(Navigation)_函式">存取 (Navigation) 函式</h3>
-<p>這些函式可存取 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的瀏覽記錄,為建構「停止」、「上一頁」、「下一頁」、「重新載入」等按鈕所必備。</p>
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.reload" title="/en-US/docs/Web/API/HTMLIFrameElement.reload"><code>reload()</code></a>:重新載入 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的內容。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.stop" title="/en-US/docs/Web/API/HTMLIFrameElement.stop"><code>stop()</code></a>:停止載入 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的內容。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.getCanGoBack" title="/en-US/docs/Web/API/HTMLIFrameElement.getCanGoBack"><code>getCanGoBack()</code></a>:得知是否能存取上一頁。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.goBack" title="/en-US/docs/Web/API/HTMLIFrameElement.goBack"><code>goBack()</code></a>:針對瀏覽記錄中的上個位置,更改 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的位置。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.getCanGoForward" title="/en-US/docs/Web/API/HTMLIFrameElement.getCanGoForward"><code>getCanGoForward()</code></a>:得知是否能存取下一頁。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.goForward" title="/en-US/docs/Web/API/HTMLIFrameElement.goForward"><code>goForward()</code></a>:針對瀏覽記錄中的下個位置,更改 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的位置。</li>
-</ul>
-<h3 id="效能函式">效能函式</h3>
-<p>這些函式可管理瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 所使用的資源。特別適於建構分頁式瀏覽器的應用。</p>
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.setVisible" title="/en-US/docs/Web/API/HTMLIFrameElement.setVisible"><code>setVisible()</code></a>:更改瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的顯示狀態。如此可能影響資源分配與某些函式 (如 <a href="https://developer.mozilla.org/en-US/docs/Web/API/window.requestAnimationFrame" title="/en-US/docs/Web/API/window.requestAnimationFrame"><code>requestAnimationFrame</code></a>)。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.getVisible" title="/en-US/docs/Web/API/HTMLIFrameElement.getVisible"><code>getVisible()</code></a>:得知瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 目前的顯示狀態。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.purgeHistory" title="/en-US/docs/Web/API/HTMLIFrameElement.purgeHistory"><code>purgeHistory()</code></a>:清除瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的所有相關資源 (cookies、localStorage、快取等)。</li>
-</ul>
-<h3 id="事件函式">事件函式</h3>
-<p>為了管理瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的內容,另新增了許多新事件 (如下所示)。下列函式即用以處理這些事件:</p>
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 現已支援 <a href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget" title="/en-US/docs/Web/API/EventTarget"><code>EventTarget</code></a> 介面的函式:<a href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener" title="/en-US/docs/Web/API/EventTarget.addEventListener"><code>addEventListener()</code></a>、<a href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.removeEventListener" title="/en-US/docs/Web/API/EventTarget.removeEventListener"><code>removeEventListener()</code></a>、<a href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.dispatchEvent" title="/en-US/docs/Web/API/EventTarget.dispatchEvent"><code>dispatchEvent()</code></a>。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.sendMouseEvent" title="/en-US/docs/Web/API/HTMLIFrameElement.sendMouseEvent"><code>sendMouseEvent()</code></a>:傳送 <a href="https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent" title="/en-US/docs/Web/API/MouseEvent"><code>MouseEvent</code></a> 至 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的內容。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.sendTouchEvent" title="/en-US/docs/Web/API/HTMLIFrameElement.sendTouchEvent"><code>sendTouchEvent()</code></a>:傳送 <a href="https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent" title="/en-US/docs/Web/API/TouchEvent"><code>TouchEvent</code></a> 至 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的內容。另請注意此函式僅能用於觸控式裝置。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.addNextPaintListener" title="/en-US/docs/Web/API/HTMLIFrameElement.addNextPaintListener"><code>addNextPaintListener()</code></a>:定義處理器 (Handler) 以監聽瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中的下一個 <a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/MozAfterPaint" title="/en-US/docs/Web/Reference/Events/MozAfterPaint">MozAfterPaint</a> 事件。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.removeNextPaintListener" title="/en-US/docs/Web/API/HTMLIFrameElement.removeNextPaintListener"><code>removeNextPaintListener()</code></a>:移除先前以 <a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.addNextPaintListener" title="/en-US/docs/Web/API/HTMLIFrameElement.addNextPaintListener"><code>addNextPaintListener()</code></a><code> 所設定的處理器。</code></li>
-</ul>
-<h3 id="其他函式_2">其他函式</h3>
-<p>這些函式適於使用瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的 Apps。</p>
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement.getScreenshot" title="/en-US/docs/Web/API/HTMLIFrameElement.getScreenshot"><code>getScreenshot()</code></a>:針對瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的內容進行截圖。特別適合在分頁式瀏覽器 Apps 中取得分頁的圖示。</li>
-</ul>
-<h2 id="事件">事件</h2>
-<p>若要讓 Apps 管理瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a>,則該 Apps 將監聽瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中發生的新事件。監聽的新事件如下:</p>
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowserasyncscroll" title="/en-US/docs/Web/Reference/Events/mozbrowserasyncscroll">mozbrowserasyncscroll</a>:瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中的捲動位置改變,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowserclose" title="/en-US/docs/Web/Reference/Events/mozbrowserclose">mozbrowserclose</a>:在瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中呼叫 <a href="https://developer.mozilla.org/en-US/docs/Web/API/window.close" title="/en-US/docs/Web/API/window.close"><code>window.close()</code></a>,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowsercontextmenu" title="/en-US/docs/Web/Reference/Events/mozbrowsercontextmenu">mozbrowsercontextmenu</a>:瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 嘗試開啟右鍵選單,隨即送出此函式。此函式將處理瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 內容中的可用 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/menuitem"><code>&lt;menuitem&gt;</code></a> 元素。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowsererror" title="/en-US/docs/Web/Reference/Events/mozbrowsererror">mozbrowsererror</a>:在瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中載入內容而發生錯誤時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowsericonchange" title="/en-US/docs/Web/Reference/Events/mozbrowsericonchange">mozbrowsericonchange</a>:瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的網站圖示變更時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowserloadend" title="/en-US/docs/Web/Reference/Events/mozbrowserloadend">mozbrowserloadend</a>:瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 完成載入所有的外部檔案 (Assets) 時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowserloadstart" title="/en-US/docs/Web/Reference/Events/mozbrowserloadstart">mozbrowserloadstart</a>:瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 開始載入新頁面時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowserlocationchange" title="/en-US/docs/Web/Reference/Events/mozbrowserlocationchange">mozbrowserlocationchange</a>:瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 的位置改變時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowseropenwindow" title="/en-US/docs/Web/Reference/Events/mozbrowseropenwindow">mozbrowseropenwindow</a>:在瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中呼叫 <a href="https://developer.mozilla.org/en-US/docs/Web/API/window.open" title="/en-US/docs/Web/API/window.open"><code>window.open()</code></a> 時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowsersecuritychange" title="/en-US/docs/Web/Reference/Events/mozbrowsersecuritychange">mozbrowsersecuritychange</a>:在瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中變更 SSL 狀態時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowsershowmodalprompt" title="/en-US/docs/Web/Reference/Events/mozbrowsershowmodalprompt">mozbrowsershowmodalprompt</a>:在瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中呼叫 <a href="https://developer.mozilla.org/en-US/docs/Web/API/window.alert" title="/en-US/docs/Web/API/window.alert"><code>alert()</code></a>、<a href="https://developer.mozilla.org/en-US/docs/Web/API/window.confirm" title="/en-US/docs/Web/API/window.confirm"><code>confirm()</code></a>,或 <a href="https://developer.mozilla.org/en-US/docs/Web/API/window.prompt" title="/en-US/docs/Web/API/window.prompt"><code>prompt()</code></a><code> 時</code>,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowsertitlechange" title="/en-US/docs/Web/Reference/Events/mozbrowsertitlechange">mozbrowsertitlechange</a>:在瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a> 中變更 document.title 時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowserusernameandpasswordrequired" title="/en-US/docs/Web/Reference/Events/mozbrowserusernameandpasswordrequired">mozbrowserusernameandpasswordrequired</a>:請求 HTTP 的認證 (Authentification) 時,隨即送出此函式。</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/Reference/Events/mozbrowseropensearch" title="/en-US/docs/Web/Reference/Events/mozbrowseropensearch">mozbrowseropensearch</a>:只要發現搜尋引擎的鏈結,隨即送出此函式。</li>
-</ul>
-<h2 id="範例">範例</h2>
-<p>此範例可建構最基本的瀏覽器 Apps。</p>
-<h3 id="HTML">HTML</h3>
-<p>在 HTML 中,我們只要新增 1 組 URL 位址列、1個「Go」與「Stop」按鈕、1 組瀏覽器 <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"><code>&lt;iframe&gt;</code></a>。</p>
-<pre class="brush: html">&lt;header&gt;
- &lt;input id="url"&gt;
- &lt;button id="go"&gt;Go&lt;/button&gt;
- &lt;button id="stop"&gt;Stop&lt;/button&gt;
-&lt;/header&gt;
-
-&lt;iframe src="about:blank" mozbrowser remote&gt;&lt;/iframe&gt;
-</pre>
-<h3 id="CSS">CSS</h3>
-<p>變個小小的 CSS 戲法,即可切換按鈕為「Go」與「Stop」。</p>
-<pre class="brush: css">button:disabled {
- display: none;
-}</pre>
-<h3 id="JavaScript">JavaScript</h3>
-<p>現在可加進必要的功能:</p>
-<pre class="brush: js">document.addEventListener("DOMContentLoaded", function () {
-  var url  = document.getElementById("url");
-  var go   = document.getElementById("go");
-  var stop = document.getElementById("stop");
-
-  var browser = document.getElementsByTagName("iframe")[0];
-
- // This function is used to switch the Go and Stop button
- // If the browser is loading content, "Go" is disabled and "Stop" is enabled
- // Otherwise, "Go" is enabled and "Stop" is disabled
-  function uiLoading(isLoading) {
-      go.disabled =  isLoading;
-    stop.disabled = !isLoading;
-  }
-
-  go.addEventListener("touchend", function () {
-    browser.setAttribute("src", url.value);
-  });
-
-  stop.addEventListener("touchend", function () {
-    browser.stop();
-  });
-
- // When the browser starts loading content, we switch the "Go" and "Stop" buttons
-  browser.addEventListener('mozbrowserloadstart', function () {
-    uiLoading(true);
-  });
-
- // When the browser finishes loading content, we switch back the "Go" and "Stop" buttons
-  browser.addEventListener('mozbrowserloadend', function () {
-    uiLoading(false);
-  });
-
- // In case of error, we also switch back the "Go" and "Stop" buttons
-  browser.addEventListener('mozbrowsererror', function (event) {
-    uiLoading(false);
-    alert("Loading error: " + event.detail);
-  });
-
- // When a user follows a link, we make sure the new location is displayed in the address bar
-  browser.addEventListener('mozbrowserlocationchange', function (event) {
-    url.value = event.detail;
-  });
-});</pre>
-<h2 id="另可參閱">另可參閱</h2>
-<ul>
- <li>{{HTMLElement("iframe")}}</li>
- <li>{{domxref("HTMLIFrameElement")}}</li>
- <li><a href="https://wiki.mozilla.org/WebAPI/BrowserAPI" title="https://wiki.mozilla.org/WebAPI/BrowserAPI">WikiMo 上的建構作業</a>統計資訊</li>
-</ul>
diff --git a/files/zh-tw/mozilla/gecko/chrome/api/index.html b/files/zh-tw/mozilla/gecko/chrome/api/index.html
deleted file mode 100644
index 7c32384981..0000000000
--- a/files/zh-tw/mozilla/gecko/chrome/api/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Chrome-only API reference
-slug: Mozilla/Gecko/Chrome/API
-translation_of: Mozilla/Gecko/Chrome/API
----
-<div>{{FirefoxSidebar}}</div>
-
-<p class="summary">此頁面列出了僅能在 Gecko Chrome 中執行的 APIs(and sometimes in other privileged circumstances.)。</p>
-
-<div class="note">
-<p><strong>Note</strong>: Most of the APIs exposed to the Web in general are also usable in Chrome code: see <a href="/en-US/docs/Web/API">Web APIs</a> for a list of these.</p>
-</div>
-
-<p>{{SubpagesWithSummaries}}</p>
diff --git a/files/zh-tw/mozilla/gecko/chrome/index.html b/files/zh-tw/mozilla/gecko/chrome/index.html
deleted file mode 100644
index 5701f56b12..0000000000
--- a/files/zh-tw/mozilla/gecko/chrome/index.html
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: Gecko Chrome
-slug: Mozilla/Gecko/Chrome
-tags:
- - Chrome
- - Gecko
- - Mozilla
- - Overview
-translation_of: Mozilla/Gecko/Chrome
----
-<div>{{FirefoxSidebar}}</div>
-
-<p class="summary">此頁面包含了於 Gecko 中執行 Chrome 程式碼的相關資訊。</p>
-
-<p>{{SubpagesWithSummaries}}</p>
diff --git a/files/zh-tw/mozilla/gecko/index.html b/files/zh-tw/mozilla/gecko/index.html
deleted file mode 100644
index ce55ea402f..0000000000
--- a/files/zh-tw/mozilla/gecko/index.html
+++ /dev/null
@@ -1,65 +0,0 @@
----
-title: Gecko
-slug: Mozilla/Gecko
-translation_of: Mozilla/Gecko
----
-<div class="summary">
-<p><span style="line-height: 1.5;">Gecko是一個排版引擎,一開始叫做NGLayout</span><span style="line-height: 1.5;">,屬於Mozilla專案</span><span style="line-height: 1.5;">。Gecko的功能就是讀取網頁內容,如 </span><a href="/zh-TW/docs/HTML" style="line-height: 1.5;" title="HTML">HTML</a><span style="line-height: 1.5;">, </span><a href="/zh-TW/docs/CSS" style="line-height: 1.5;" title="CSS">CSS</a><span style="line-height: 1.5;">, </span><a href="/zh-TW/docs/XUL" style="line-height: 1.5;" title="XUL">XUL</a><span style="line-height: 1.5;">, </span><a href="/zh-TW/docs/JavaScript" style="line-height: 1.5;" title="JavaScript">JavaScript</a><span style="line-height: 1.5;">,然後解析將內容顯示在螢幕上或印出來,在以XUL為基礎的應用程式中,Gecko也是用來解析生成應用程式的UI介面。</span></p>
-</div>
-
-<p>許多應用程式中都有使用到Gecko,包括一些瀏覽器,如Firefox, SeaMonkey等等 (完整列表請參考<a class="external" href="http://en.wikipedia.org/wiki/Gecko_%28layout_engine%29#Web_browsers" rel="external" title="http://en.wikipedia.org/wiki/Gecko_(layout_engine)#Web_browsers">維基百科Gecko的文章</a>.) 。使用相同版本Gecko的程式對於標準都有著相同的支援。</p>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 class="Documentation" id="文件">文件</h2>
-
- <dl>
- <dt><a href="https://developer.mozilla.org/zh-TW/docs/Mozilla/Gecko/Chrome">Chrome</a></dt>
- <dd>
- <p>這個頁面包含 Gecko 運行 Chrome 專有程式碼的訊息。</p>
- </dd>
- </dl>
-
- <dl>
- <dt><a href="/zh-TW/docs/Gecko_FAQ" title="Gecko_FAQ">Gecko FAQ</a></dt>
- <dd>常見問題</dd>
- <dt><a href="/zh-TW/docs/Gecko_DOM_Reference" title="https://developer.mozilla.org/zh-TW/docs/Gecko_DOM_Reference">Gecko DOM 參考</a></dt>
- <dd>DOM參考文件</dd>
- <dt><a href="/zh-TW/docs/Gecko-Specific_DOM_Events" title="Gecko/Gecko event reference">Gecko 事件參考</a></dt>
- <dd>Gecko和Mozilla程式內各項事件的參考文件;對於網頁標準的DOM事件,請參考 <a href="/zh-TW/docs/DOM/DOM_event_reference" title="DOM/DOM event reference">DOM event reference</a>.</dd>
- <dt><a href="/zh-TW/docs/Gecko/Versions" title="Gecko/Versions">Gecko 版本和對應的應用程式</a></dt>
- <dd>Geck版本和各應用程式所用的Gecko版本列表</dd>
- <dt><a class="external" href="/zh-TW/docs/Introduction_to_Layout_in_Mozilla" title="https://developer.mozilla.org/zh-TW/docs/Introduction_to_Layout_in_Mozilla">Mozilla 的排版介紹</a></dt>
- <dd>排版相關的技術探討</dd>
- <dt><a href="/zh-TW/docs/Embedding_Mozilla" title="Embedding_Mozilla">應用 Mozilla</a></dt>
- <dd>在你自己的應用程式中使用Gecko</dd>
- <dt><a href="/zh-TW/docs/Character_Sets_Supported_by_Gecko" title="Character Sets Supported by Gecko">Gecko支援的字符集</a></dt>
- <dd>Gecko支援的字符集列表</dd>
- <dt><a href="/zh-TW/docs/Gecko/HTML_parser_threading" title="Gecko/HTML_parser_threading">HTML 解析器運作</a></dt>
- <dd>HTML解析器相關的執行緒探討</dd>
- <dt>{{interwiki('wikimo', 'Gecko:Home_Page', 'Gecko Homepage on MozillaWiki')}}</dt>
- <dd>使用者、產品規劃圖和最新資源的入口首頁</dd>
- </dl>
-
- <p><span class="alllinks"><a href="/zh-TW/docs/tag/Gecko" title="tag/Gecko">全部...</a></span></p>
- </td>
- <td>
- <h2 class="Community" id="社群">社群</h2>
-
- <ul>
- <li>View Mozilla forums... {{DiscussionList("dev-tech-layout", "mozilla.dev.tech.layout")}}</li>
- </ul>
-
- <h2 class="Related_Topics" id="相關主題">相關主題</h2>
-
- <dl>
- <dd><a href="/zh-TW/docs/Web_Standards" title="Web_Standards">Web Standards</a>, <a href="/zh-TW/docs/XUL" title="XUL">XUL</a>, <a href="/zh-TW/docs/Embedding_Mozilla" title="Embedding_Mozilla">Embedding Mozilla</a>, <a href="/zh-TW/docs/Developer_Guide" title="Developing_Mozilla">Developing Mozilla</a></dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p> </p>
diff --git a/files/zh-tw/mozilla/infallible_memory_allocation/index.html b/files/zh-tw/mozilla/infallible_memory_allocation/index.html
deleted file mode 100644
index 06844eedd5..0000000000
--- a/files/zh-tw/mozilla/infallible_memory_allocation/index.html
+++ /dev/null
@@ -1,84 +0,0 @@
----
-title: 絕對可靠的記憶體配置
-slug: Mozilla/Infallible_memory_allocation
-tags:
- - 分配
- - 記憶體
-translation_of: Mozilla/Infallible_memory_allocation
----
-<div>{{gecko_minversion_header("2.0")}}</div>
-
-<p>There's ongoing work to implement <strong>infallible memory allocators</strong>. These are memory allocation routines that never return <code>null</code>; that is, they always successfully return the requested block of memory. This is in contrast to a traditional, fallible memory allocator that can return <code>null</code> indicating that the request failed.</p>
-
-<p>Currently, while code is transitioned to be compatible with infallible memory allocators, you have to explicitly decide whether to use infallible allocation or not. Eventually, however, the generic memory allocators (<code>malloc() </code>and<code> realloc()</code>) will become infallible.</p>
-
-<h2 id="記憶體配置要怎樣才能萬無一失?"><a id="How can memory allocation be infallible" name="How can memory allocation be infallible"></a>記憶體配置要怎樣才能萬無一失?</h2>
-
-<p>「萬無一失」這個詞代表了配置記憶體時絕對會成功:你的程式碼永遠不會看到請求失敗,也就無須對失敗的情況做出處置。</p>
-
-<p>平常在配置記憶體時,情況則不太一樣。在有限記憶體的狀況下,記憶體配置是有可能失敗的。然而,在平常配置失敗的程序中程式將不會返回到你的程式碼中,而是直接停止程式。不過這情況可能有點少見,因為記憶體管理系統通常都會為你要求的記憶體想盡辦法找到空間。</p>
-
-<h2 id="選擇記憶體分配器">選擇記憶體分配器</h2>
-
-<p>當你在寫需要配置記憶體的程式時,可能需要遵守幾個規則以便幫助你決定是否在分配器使用萬無一失的策略:</p>
-
-<ul>
- <li>如果你可能需要分配大塊記憶體時,你就應該讓他可能出錯(像是使用 <code>moz_malloc()</code> ,並確保返回的結果不會是 <code>null</code>。就如在 <a href="#How can memory allocation be infallible">記憶體配置要怎樣才能萬無一失?</a> 一段中所述,在有限的記憶體中要求大塊記憶體時,分配器會找不到你所要求的記憶體,因此程式會直接停止。</li>
- <li>如果你不確定記憶體是否會很大塊,就使用標準的 <code>malloc()</code> 來動作,它目前是可能出錯的,但最後可能會變成萬無一失,請確認 <code>null</code> 的結果。</li>
- <li>在實例物件時,<code>new</code> 這個運算元預設會萬無一失地創造他們。如果你想要讓他們有機會出錯的話,就使用 <code>new (fallible) Foo()</code> 這個語法。</li>
- <li>在有疑慮的時候,使用萬無一失分配器,且不要確認 <code>null</code> 的情況。</li>
- <li>
- <p><code>NS_Alloc()</code> 也是萬無一失的。</p>
- </li>
-</ul>
-
-<h2 id="明示的萬無一失記憶體分配器">明示的萬無一失記憶體分配器</h2>
-
-<p>下面的記憶體分配器都明確地標示出他們是萬無一失的,並且會一直保持下去。他們保證會回傳可用的記憶體指標:</p>
-
-<pre>p = moz_xmalloc();
-p = moz_xrealloc();
-</pre>
-
-<pre>f = new Foo();
-fArray = new Foo[];
-</pre>
-
-<pre>n = ::operator new(...);
-nArray = ::operator new[](...);
-</pre>
-
-<h2 id="Explicitly_fallible_memory_allocators">Explicitly fallible memory allocators</h2>
-
-<p>These memory allocators are explicitly fallible, and will remain so. When using these, you must check to ensure the resulting value isn't <code>null</code> before attempting to use the returned memory.</p>
-
-<pre>p = moz_malloc();
-p = moz_realloc();
-</pre>
-
-<pre>namespace mozilla {
- f = new (fallible) Foo();
- fArray = new (fallible) Foo[];
-}
-</pre>
-
-<pre>namespace mozilla {
- n = ::operator new(..., fallible);
- nArray = ::operator new[](..., fallible);
-}
-</pre>
-
-<h2 id="最終萬無一失分配器">最終萬無一失分配器</h2>
-
-<p>下面的記憶體目前是可能出錯的,但在未來將會變成萬無一失的:</p>
-
-<pre>p = malloc();
-p = realloc();
-</pre>
-
-<h2 id="你也可以參看">你也可以參看</h2>
-
-<ul>
- <li><a href="/en-US/docs/Choosing_the_right_memory_allocator" title="Choosing the right memory allocator">選擇正確的記憶體分配器</a></li>
- <li><a href="/en-US/docs/NS_Alloc" title="NS Alloc"><code>NS_Alloc()</code></a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/introduction_to_layout_in_mozilla/index.html b/files/zh-tw/mozilla/introduction_to_layout_in_mozilla/index.html
deleted file mode 100644
index 0c0c5388db..0000000000
--- a/files/zh-tw/mozilla/introduction_to_layout_in_mozilla/index.html
+++ /dev/null
@@ -1,358 +0,0 @@
----
-title: Introduction to Layout in Mozilla
-slug: Mozilla/Introduction_to_Layout_in_Mozilla
-translation_of: Mozilla/Introduction_to_Layout_in_Mozilla
----
-<h2 id="Overview" name="Overview"><font><font>概要</font></font></h2>
-
-<ul>
- <li><font><font>基本數據流</font></font></li>
- <li><font><font>關鍵數據結構</font></font></li>
- <li><font><font>詳細執行步驟</font></font></li>
- <li><font><font>漸進模式</font></font></li>
- <li><font><font>未來高科技會談</font></font></li>
- <li><font><font>總結起來,Q&A</font></font></li>
-</ul>
-
-<h2 id="Basic_Data_Flow" name="Basic_Data_Flow"><font><font>基本數據流</font></font></h2>
-
-<ul>
- <li><font><font>通過網絡APIs 獲取源文檔</font></font></li>
- <li><font><font>在單線程佈局引擎中依次執行下面步驟:</font></font>
- <ul>
- <li><font><font>解析,計算樣式,渲染,重複</font></font></li>
- <li><font><font>CSS 用於渲染所有的內容</font></font></li>
- </ul>
- </li>
- <li><font><font>理論上, 內容與“展示“是相分離的</font></font></li>
-</ul>
-
-<p><img src="/files/464/Gecko_Overview_9.png" style="height: 316px; width: 688px;"></p>
-
-<h2 id="Key_Data_Structures" name="Key_Data_Structures"><font><font>關鍵數據結構</font></font></h2>
-
-<p><img src="/files/454/Gecko_Overview_10.png" style="height: 122px; width: 638px;"></p>
-
-<ul>
- <li><font><font>內容節點</font></font>
-
- <ul>
- <li><font><font>元素,屬性</font></font></li>
- <li><font><font>判決</font></font></li>
- </ul>
- </li>
- <li><font><font>框架(Frame)</font></font>
- <ul>
- <li><font><font>矩形格式</font></font></li>
- <li><font><font>幾何信息</font></font></li>
- <li><font><font>{{mediawiki.external('0..n')}} 每個內容節點</font></font></li>
- <li><font><font>第二通第n個是“延續”</font></font></li>
- </ul>
- </li>
- <li><font><font>樣式上下文Style context</font></font>
- <ul>
- <li><font><font>非幾何信息</font></font></li>
- <li><font><font>可由相鄰幀共享</font></font></li>
- <li><font><font>引用計數,一幀資</font></font></li>
- </ul>
- </li>
- <li><font><font>視圖(View)</font></font>
- <ul>
- <li><font><font>裁剪、z 軸順序、透明度</font></font></li>
- <li><font><font>{{mediawiki.external('0..1')}} 僅與一個框架 frame 對應, 從屬於框架</font></font></li>
- </ul>
- </li>
- <li><font><font>小工具(</font></font>Widget<font><font>)</font></font>
- <ul>
- <li><font><font>本地窗口</font></font></li>
- <li><font><font>{{mediawiki.external('0..1')}} 僅與一個視圖對應,從屬於視圖 view</font></font></li>
- </ul>
- </li>
-</ul>
-
-<p><img src="/files/455/Gecko_Overview_15.png" style="height: 397px; width: 680px;"></p>
-
-<h2 id="Key_Data_Structures_2" name="Key_Data_Structures_2"><font><font>關鍵數據結構</font></font></h2>
-
-<ul>
- <li><em><font><font>document</font></font></em><font><font> 物件中包含內容模型,以及一個或多個 </font></font><em><font><font>presentations</font></font></em>
-
- <ul>
- <li><font><font>通過 DOM API 以編程方式暴露在外</font></font></li>
- </ul>
- </li>
- <li><em><font><font>presentation</font></font></em><font><font> 包含框架層級關係</font></font>
- <ul>
- <li><font><font>框架包含風格背景,觀點,窗口小部件</font></font></li>
- <li><font><font>演示包含的媒體類型、尺寸等</font></font></li>
- <li><font><font>可能不會直接操控</font></font></li>
- </ul>
- </li>
-</ul>
-
-<h2 id="Detailed_Walk-Through" name="Detailed_Walk-Through"><font><font>詳細執行步驟</font></font></h2>
-
-<ul>
- <li><font><font>設置</font></font></li>
- <li><font><font>內容模型的構建</font></font></li>
- <li><font><font>框架 Frame 的構建</font></font></li>
- <li><font><font>樣式 Style 的決議</font></font></li>
- <li><font><font>回流(</font></font>{{Glossary("reflow")}}<font><font>)</font></font></li>
- <li><font><font>繪製(</font></font>Painting<font><font>)</font></font></li>
-</ul>
-
-<h2 id="Setting_Up" name="Setting_Up"><font><font>設置</font></font></h2>
-
-<ul>
- <li><font><font>假設此處您已經熟悉嵌入和網路 API(doc shell、stream)的基本知識。</font></font></li>
- <li><font><font>Content DLL 自動註冊一個<em>文件載入工廠(</em></font></font><em><font><font>DLF)</font></font></em>
- <ul>
- <li><code>@mozilla.org/content-viewer-factory/view;1?type=text/html</code></li>
- <li><font><font>所有 MIME type 都與同一個類——nsContentDLF 相對應</font></font></li>
- </ul>
- </li>
- <li><code><font><font>nsDocShell</font></font></code>
- <ul>
- <li><font><font>通過 </font></font><code><font><font>nsDSURIContentListener</font></font></code><font><font> 接收穫取的內容(原始數據)</font></font></li>
- <li><font><font>呼叫 </font></font><code><font><font>nsIDLF::CreateInstance</font></font></code><font><font> 方法,傳遞 MIME type 給 DLF</font></font></li>
- </ul>
- </li>
- <li><font><font>nsContentDLF</font></font>
- <ul>
- <li><font><font>建立一個 </font></font><code><font><font>nsHTMLDocument</font></font></code><font><font> 物件,呼叫 </font></font><code><font><font>StartDocumentLoad</font></font></code>
- <ul>
- <li><font><font>建立一個解析器(parser),將 </font></font><code><font><font>nsIStreamListener</font></font></code><font><font> 物件返回給 docshell</font></font></li>
- <li><font><font>創建一個 content sink(它會將解析器 parser 與文件 doucment 相連接)</font></font></li>
- </ul>
- </li>
- <li><font><font>創建一個 </font></font><code><font><font>DocumentViewerImpl</font></font></code><font><font> 對象,將 </font></font><code><font><font>nsIContentViewer</font></font></code><font><font> 對象返回給 docshell</font></font></li>
- </ul>
- </li>
- <li><code><font><font>DocumentViewerImpl</font></font></code><font><font> 創建 pres context 和 pres shell</font></font></li>
-</ul>
-
-<p><img src="/files/456/Gecko_Overview_19.png" style="height: 350px; width: 663px;"></p>
-
-<h2 id="Content_Model_Construction" name="Content_Model_Construction"><font><font>內容模型的構建</font></font></h2>
-
-<ul>
- <li><font><font>從網絡上通過 </font></font><code><font><font>nsIStreamListener::OnDataAvailable</font></font></code><font><font> 獲取內容</font></font></li>
- <li><font><font>解析器對內容進行標記&amp;處理;使用 </font></font><em><font><font>parser node</font></font></em><font><font> 對像在</font></font><code><font><font> nsIContentSink</font></font></code><font><font> 上調用方法</font></font>
- <ul>
- <li><font><font>一些緩衝和修正發生在這裡</font></font></li>
- <li><font><code><font>OpenContainer,CloseContainer,AddLeaf</font></code></font></li>
- </ul>
- </li>
- <li><font><font>內容水槽創建並使用附加內容節點 </font></font><code><font><font>nsIContent</font></font></code><font><font> 接口</font></font>
- <ul>
- <li><font><font>內容水槽保持棧的“活”元素</font></font></li>
- <li><font><font>更多緩衝和修正發生在這裡</font></font></li>
- <li><font><code><font>InsertChildAt,AppendChildTo,RemoveChildAt</font></code></font></li>
- </ul>
- </li>
-</ul>
-
-<p><img src="/files/457/Gecko_Overview_21.png" style="height: 179px; width: 662px;"></p>
-
-<h2 id="Frame_Construction" name="Frame_Construction"><font><font>框架 Frame 的構建</font></font></h2>
-
-<ul>
- <li><font><font>內容接收器使用 </font></font><code><font><font>nsIDocument</font></font></code><font><font>接口,在內容模型通知ΔS的</font></font>
-
- <ul>
- <li><font><code><font>ContentAppended,ContentInserted,ContentRemoved</font></code></font></li>
- </ul>
- </li>
- <li><code><font><font>PresShell</font></font></code><font><font> 被註冊作為文件觀察者</font></font>
- <ul>
- <li><font><font>接收 </font></font><code><font><font>ContentAppended</font></font></code><font><font> 等通知</font></font></li>
- <li><font><font>它傳遞給樣式集的對象,誰又將傳遞給幀構造</font></font></li>
- </ul>
- </li>
- <li><font><font>框架構造函數創建幀</font></font>
- <ul>
- <li><code><font><font>ConstructFrameInternal</font></font></code><font><font> 遞歸散步內容樹,解決作風和創建幀</font></font></li>
- <li><font><font>或者通過標籤創建</font></font><code><font><font>(</font></font>&lt;select&gt;<font><font>)</font></font></code><font><font>或顯示類型</font><font>(</font></font><code>&lt;p&gt;</code><font><font>)</font></font></li>
- </ul>
- </li>
- <li><font><font>幀管理者保持映射從內容到框架</font></font></li>
-</ul>
-
-<p><img src="/files/458/Gecko_Overview_23.png" style="height: 359px; width: 697px;"></p>
-
-<h2 id="Style_Resolution" name="Style_Resolution"><font><font>Style 選定</font></font></h2>
-
-<ul>
- <li><font><font>計算依據適用於框架的內容節點樣式規則文體信息</font></font></li>
- <li><font><font>分成不同的結構樣式數據</font></font>
- <ul>
- <li><font><font>顯示,能見度,字體,顏色,背景,...</font></font></li>
- <li><font><font>繼承與復位</font></font></li>
- </ul>
- </li>
- <li><font><font>樣式上下文對象是一個佔位符部分計算文體數據</font></font>
- <ul>
- <li><font><font>樣式數據懶洋洋地計算,因為它要求</font></font></li>
- </ul>
- </li>
-</ul>
-
-<h2 id="Reflow" name="Reflow"><font><font>回流</font></font></h2>
-
-<ul>
- <li><font><font>遞歸計算幾何</font><em><font>(</font></em></font><em>x</em>,<em>y</em>,<em>w</em>,<em>h</em><font><em><font>)</font></em><em><font>為框架,視圖和小部件</font></em></font>
-
- <ul>
- <li><font><font>鑑於“根幀”計算(</font></font><em>x</em>,<em>y</em>,<em>w</em>,<em>h</em><font><em><font>)為所有兒童</font></em></font></li>
- <li><font><font>通過約束傳播“向下</font></font><code><font><font>”nsHTMLReflowState</font></font></code></li>
- <li><font><font>所需的大小返回“向上”通過</font></font><code><font><font>nsHTMLReflowMetrics</font></font></code></li>
- </ul>
- </li>
- <li><font><font>基本模式</font></font>
- <ul>
- <li><font><font>父框架初始化子回流狀態(可</font><em><font>W¯¯,^ </font></em><font>h); </font><font>地方子幀</font><font>(x,ÿ); </font><font>調用孩子的</font><code><font>回流</font></code><font>方法</font></font></li>
- <li><font><font>子幀計算所需的</font><em><font>(W¯¯,^</font></em><font> </font><em><font>h),通過回流焊指標回報</font></em></font></li>
- <li><font><font>家長外形尺寸為子框架和觀點的基礎上孩子的指標</font></font></li>
- </ul>
- </li>
- <li><font><font>注:很多</font></font><em><font><font>並不</font></font></em><font><font>這樣工作!</font><font>(表,塊,XUL盒)</font></font></li>
-</ul>
-
-<h2 id="Reflow_2" name="Reflow_2"><font><font>回流</font></font></h2>
-
-<ul>
- <li><font><font>“環球”回流</font></font>
-
- <ul>
- <li><em><font><font>最初,調整大小,風格變化</font></font></em></li>
- <li><font><font>通過立即處理</font></font><code><font><font>PresShell</font></font></code><font><font>方法</font></font></li>
- </ul>
- </li>
- <li><font><font>增量回流</font></font>
- <ul>
- <li><font><font>針對特定的幀</font></font></li>
- <li><em><font><font>臟</font></font></em><font><font>,</font></font><em><font><font>內容改變</font></font></em><font><font>,</font></font><em><font><font>風格改變了</font></font></em><font><font>,</font></font><em><font><font>用戶自定義</font></font></em></li>
- <li><code><font><font>nsHTMLReflowCommand</font></font></code><font><font>對象封裝信息</font></font></li>
- <li><font><font>排隊和異步處理</font></font><code><font><font>,nsIPressShell </font><font>:: </font></font></code><code><font><font>AppendReflowCommand,ProcessReflowCommands</font></font></code></li>
- </ul>
- </li>
-</ul>
-
-<h2 id="Incremental_Reflow" name="Incremental_Reflow"><font><font>增量回流</font></font></h2>
-
-<p><img src="/files/459/Gecko_Overview_28.png" style="height: 331px; width: 319px;"></p>
-
-<ul>
- <li><font><font>遞歸下降到目標</font></font><em><font><font>恢復回流狀態</font></font></em>
-
- <ul>
- <li><font><font>兒童rs.reason設置為</font></font><em><font><font>增量</font></font></em></li>
- </ul>
- </li>
-</ul>
-
-<h2 id="Incremental_Reflow_2" name="Incremental_Reflow_2"><font><font>增量回流</font></font></h2>
-
-<p><img src="/files/460/Gecko_Overview_29.png" style="height: 331px; width: 319px;"></p>
-
-<ul>
- <li><font><font>流程回流“正常”的目標框架</font></font>
-
- <ul>
- <li><font><font>兒童rs.reason一套基於RC的</font></font><em><font><font>類型</font></font></em></li>
- </ul>
- </li>
-</ul>
-
-<h2 id="Incremental_Reflow_3" name="Incremental_Reflow_3"><font><font>增量回流</font></font></h2>
-
-<p><img src="/files/461/Gecko_Overview_30.png" style="height: 332px; width: 319px;"></p>
-
-<ul>
- <li><em><font><font>傳播損害</font></font></em><font><font>到“在流動”幀之後</font></font></li>
-</ul>
-
-<h2 id="Incremental_Reflow_4" name="Incremental_Reflow_4"><font><font>增量回流</font></font></h2>
-
-<p><img src="/files/462/Gecko_Overview_31.png" style="height: 331px; width: 319px;"></p>
-
-<ul>
- <li><font><font>多次回流焊命令批處理</font></font>
-
- <ul>
- <li><code><font><font>nsReflowPath</font></font></code><font><font>維持目標幀的一棵樹</font></font></li>
- <li><font><font>攤銷狀態的恢復和損傷擴展成本</font></font></li>
- </ul>
- </li>
-</ul>
-
-<h2 id="Painting" name="Painting"><font><font>繪畫</font></font></h2>
-
-<ul>
- <li><font><font>當回流繼續通過幀層次結構,區域</font></font><em><font><font>無效</font></font></em><font><font>通過</font></font><code><font><font>nsIViewManager ::更新視圖</font></font></code></li>
- <li><font><font>除非</font></font><em><font><font>直接</font></font></em><font><font>的,無效的區域合併,並通過操作系統的異步處理</font></font><em><font><font>揭露</font></font></em><font><font>事件</font></font></li>
- <li><font><font>本機暴露事件分派到小部件; </font><font>小部件委託給視圖管理器</font></font></li>
- <li><font><font>查看經理描繪的意見後到前,調用</font></font><code><font><font>PresShell</font></font></code><font><font>的</font></font><code><font><font>畫圖</font></font></code><font><font>方法</font></font></li>
- <li><code><font><font>PresShell ::油漆</font></font></code><font><font>遍歷從視圖幀; </font><font>將調用</font></font><code><font><font>nsIFrame ::油漆</font></font></code><font><font>每個</font></font><em><font><font>層</font></font></em></li>
-</ul>
-
-<h2 id="Incrementalism" name="Incrementalism"><font><font>漸進</font></font></h2>
-
-<ul>
- <li><font><font>單線程</font></font>
-
- <ul>
- <li><font><font>簡單(無鎖)</font></font></li>
- <li><font><font>不能離開事件隊列無人值守</font></font></li>
- </ul>
- </li>
- <li><font><font>內容建設開卷“隨意”</font></font>
- <ul>
- <li><font><font>解析器和內容接收器做一些緩衝</font></font></li>
- <li><font><font>內容散熱器具有“通知限制”</font></font></li>
- <li><font><font>效率與響應速度的權衡</font></font></li>
- </ul>
- </li>
- <li><font><font>框架結構運行完成</font></font></li>
- <li><font><font>CSS解析運行完成</font></font></li>
- <li><font><font>回流焊運行完成(主要)</font></font></li>
- <li><font><font>繪畫運行完成</font></font></li>
-</ul>
-
-<p><img src="/files/463/Gecko_Overview_34.png" style="height: 380px; width: 694px;"></p>
-
-<h2 id="Future_.28.3F.29_Tech_Talks" name="Future_.28.3F.29_Tech_Talks"><font><font>未來(?)技術講座</font></font></h2>
-
-<ul>
- <li><font><font>內容模型和DOM - </font><em><font>JST,jkeiser</font></em></font></li>
- <li><font><font>解析器和內容接收器(ESP無效的內容) - </font></font><em><font><font>harishd</font></font></em></li>
- <li><font><font>事件- </font></font><em><font><font>薩里</font></font></em><font><font>,</font></font><em><font><font>條既納</font></font></em></li>
- <li><font><font>塊和行回流焊- </font><em><font>沃特森,dbaron</font></em></font></li>
- <li><font><font>表回流焊- </font></font><em><font><font>karnaze</font></font></em></li>
- <li><font><font>窗體控件- </font><em><font>棒,礪石</font></em></font></li>
- <li><font><font>風格解析和規則樹- </font></font><em><font><font>dbaron</font></font></em></li>
- <li><font><font>視圖,窗口小部件,和繪畫- </font></font><em><font><font>大鵬</font></font></em><font><font> </font></font><em><font><font>,kmcclusk</font></font></em></li>
- <li><font><font>編輯器- </font><em><font>健,Jfrancis</font></em></font></li>
- <li><font><font>XUL和箱的佈局- </font></font><em><font><font>休伊特</font></font></em><font><font>,</font></font><em><font><font>本</font></font></em></li>
- <li><font><font>XBL - </font></font><em><font><font>休伊特</font></font></em><font><font>,</font></font><em><font><font>本</font></font></em></li>
-</ul>
-
-<h2 id="Conclusion" name="Conclusion"><font><font>結論</font></font></h2>
-
-<ul>
- <li><font><font>數據流</font></font></li>
- <li><font><font>關鍵數據結構</font></font></li>
- <li><font><font>詳細演練</font></font></li>
- <li><font><font>漸進</font></font></li>
- <li><font><font>Q&A?</font></font></li>
-</ul>
-
-<div class="originaldocinfo">
-<h2 id="Original_Document_Information" name="Original_Document_Information"><font><font>原始文檔信息</font></font></h2>
-
-<ul>
- <li><a class="link-mailto" href="mailto:waterson@netscape.com"><font><font>作者(S):克里斯·沃特森</font></font></a></li>
- <li><font><font>最後更新日期:2002年6月10日,</font></font></li>
- <li><font><font>版權信息:此內容的部分是©1998-2008個別mozilla.org貢獻者; </font><font>|在創作共用許可的可用內容</font></font><a href="http://www.mozilla.org/foundation/licensing/website-content.html"><font><font>詳細信息</font></font></a><font><font>。</font></font></li>
-</ul>
-</div>
diff --git a/files/zh-tw/mozilla/javascript_code_modules/index.html b/files/zh-tw/mozilla/javascript_code_modules/index.html
deleted file mode 100644
index 72f737df9e..0000000000
--- a/files/zh-tw/mozilla/javascript_code_modules/index.html
+++ /dev/null
@@ -1,102 +0,0 @@
----
-title: JavaScript code modules
-slug: Mozilla/JavaScript_code_modules
-tags:
- - Add-ons
- - Extensions
- - JavaScript
- - Landing
- - Modules
- - NeedsTranslation
- - TopicStub
- - XPCOM
-translation_of: Mozilla/JavaScript_code_modules
----
-<div>{{gecko_minversion_header("1.9")}}</div>
-
-<p>JavaScript code modules let multiple privileged JavaScript scopes share code. For example, a module could be used by Firefox itself as well as by extensions, in order to avoid code duplication.</p>
-
-<h2 id="General_topics">General topics</h2>
-
-<dl style="-moz-columns: 2; columns: 2;">
- <dt><a href="/en-US/docs/JavaScript_code_modules/Using" title="./Using">Using JavaScript code modules</a></dt>
- <dd>An introduction to how to use JavaScript code modules.</dd>
- <dt><a href="/en-US/docs/Components.utils.import" title="Components.utils.import">Components.utils.import</a></dt>
- <dd>How to import a JavaScript code module.</dd>
- <dt><a href="/en-US/docs/Components.utils.unload" title="Components.utils.unload">Components.utils.unload</a> {{gecko_minversion_inline("7.0")}}</dt>
- <dd>How to unload a JavaScript code module.</dd>
- <dt><a href="/en-US/docs/Code_snippets/Modules" title="Code_snippets/Modules">Code snippets: Modules</a></dt>
- <dd>Examples of how to use code modules.</dd>
- <dt><a class="external" href="http://wiki.mozilla.org/Labs/JS_Modules">Mozilla Labs JS Modules</a></dt>
- <dd>This page features a list of JS modules, along with download links and documentation, that extension developers can use in their code.</dd>
-</dl>
-
-<dl>
-</dl>
-
-<h2 id="Standard_code_modules">Standard code modules</h2>
-
-<dl style="-moz-columns: 2; columns: 2;">
- <dt><a href="/en-US/docs/Addons/Add-on_Manager" title="Addons/Add-on_Manager">AddonManager.jsm</a> {{gecko_minversion_inline("2.0")}}</dt>
- <dd>Interface to install, manage, and uninstall add-ons.</dd>
- <dt><a href="/en-US/docs/Addons/Add-on_Repository" title="Addons/Add-on Repository">AddonRepository.jsm</a> {{gecko_minversion_inline("2.0")}}</dt>
- <dd>Allows searching of the add-ons repository.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Assert.jsm" title="./Assert.jsm">Assert.jsm</a> {{gecko_minversion_inline("28.0")}}</dt>
- <dd>Implements the <a href="http://wiki.commonjs.org/wiki/Unit_Testing/1.1" title="http://wiki.commonjs.org/wiki/Unit_Testing/1.1">CommonJS Unit Testing specification version 1.1</a>, which provides a basic, standardized interface for performing in-code logical assertions with optional, customizable error reporting.</dd>
- <dt><a href="/en-US/docs/Mozilla/js-ctypes" title="./ctypes.jsm">ctypes.jsm</a> {{fx_minversion_inline("3.6")}}</dt>
- <dd>Provides an interface that allows JavaScript code to call native libraries without requiring the development of an XPCOM component.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/CustomizableUI.jsm" title="./ctypes.jsm">CustomizableUI.jsm</a> {{fx_minversion_inline("29")}}</dt>
- <dd>Allows you to interact with customizable buttons and items in Firefox's main window UI.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/DeferredTask.jsm" title="./DeferredTask.jsm">DeferredTask.jsm</a> {{gecko_minversion_inline("18.0")}}</dt>
- <dd>Run a task after a delay.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Dict.jsm" title="./Dict.jsm">Dict.jsm</a> {{gecko_minversion_inline("5.0")}}</dt>
- <dd>Provides an API for key/value pair dictionaries.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/DownloadLastDir.jsm" title="./DownloadLastDir.jsm">DownloadLastDir.jsm</a> {{gecko_minversion_inline("2.0")}}</dt>
- <dd>Provides the path to the directory into which the last download occurred.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Downloads.jsm" title="./Downloads.jsm">Downloads.jsm</a> {{gecko_minversion_inline("23.0")}}</dt>
- <dd>Provides a single entry point to interact with the downloading capabilities of the platform.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/FileUtils.jsm" title="./FileUtils.jsm"><strong style="font-weight: bold;">FileUtils.jsm</strong></a> {{gecko_minversion_inline("1.9.2")}}</dt>
- <dd>Provides helpers for dealing with files.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Geometry.jsm" title="./Geometry.jsm">Geometry.jsm</a> {{gecko_minversion_inline("2.0")}}</dt>
- <dd>Provides routines for performing basic geometric operations on points and rectangles.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Geometry.jsm" title="./Geometry.jsm">HTTP.jsm</a> {{gecko_minversion_inline("25.0")}}</dt>
- <dd>A wrapper for XMLHttpRequest that provides convenient and simplified API for dealing with HTTP requests.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/JNI.jsm">JNI.jsm</a> {{fx_minversion_inline("17.0")}}</dt>
- <dd>Abstracts the js-ctypes to provide an interface that allows JavaScript code to call code running in native JVMs.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/ISO8601DateUtils.jsm" title="./ISO8601DateUtils.jsm">ISO8601DateUtils.jsm</a></dt>
- <dd>Provides routines to convert between JavaScript <a href="/en-US/docs/JavaScript/Reference/Global_Objects/Date" title="JavaScript/ Reference/Global Objects/Date"><code>Date</code></a> objects and ISO 8601 date strings.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Log.jsm">Log.jsm</a> (formerly log4moz) {{gecko_minversion_inline("27.0")}}</dt>
- <dd>Provides a <a href="https://en.wikipedia.org/wiki/Log4j">log4j</a> style API for logging log messages to various endpoints, such as the <a href="/en-US/docs/Tools/Browser_Console">Browser Console</a> or a file on disk. This module was formerly</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/NetUtil.jsm" title="./NetUtil.jsm"><strong style="font-weight: bold;">NetUtil.jsm</strong></a></dt>
- <dd>Provides helpful networking utility functions, including the ability to easily copy data from an input stream to an output stream asynchronously.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/openLocationLastURL.jsm" title="./openLocationLastURL.jsm">openLocationLastURL.jsm</a> {{gecko_minversion_inline("1.9.1.4")}}</dt>
- <dd>Provides access to the last URL opened using the "Open Location" option in the File menu.</dd>
- <dt><a href="/Mozilla/JavaScript_code_modules/OSFile.jsm" title="/en-US/docs/JavaScript_OS.File">OSFile.jsm</a> {{gecko_minversion_inline("16.0")}}</dt>
- <dd>Provides routines to access files. Read, write, rename, create directories, ...</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/PerfMeasurement.jsm" title="./PerfMeasurement.jsm">PerfMeasurement.jsm</a> {{fx_minversion_inline("4.0")}}</dt>
- <dd>Provides access to low-level hardware and OS performance measurement tools.</dd>
- <dt><a href="/en-US/docs/Localization_and_Plurals" title="Localization and Plurals">PluralForm.jsm</a></dt>
- <dd>Provides an easy way to get the correct plural forms for the current locale, as well as ways to localize to a specific plural rule.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/PopupNotifications.jsm" title="./PopupNotifications.jsm">PopupNotifications.jsm</a> {{gecko_minversion_inline("2.0")}}</dt>
- <dd>Provides an easy way to present non-modal notifications to users.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm" title="./Promise.jsm">Promise.jsm</a> {{gecko_minversion_inline("25.0")}}</dt>
- <dd>Implements the <a class="external" href="https://github.com/promises-aplus/promises-spec/blob/1.0.0/README.md" title="https://github.com/promises-aplus/promises-spec/blob/1.0.0/README.md">Promises/A+</a> proposal as known in April 2013.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/PromiseWorker.jsm">PromiseWorker.jsm</a> {{gecko_minversion_inline("20.0")}}</dt>
- <dd>A version of {{domxref("ChromeWorker")}} which uses promises to return the worker's result instead of using an event to do so.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Services.jsm" title="./Services.jsm">Services.jsm</a> {{gecko_minversion_inline("2.0")}}</dt>
- <dd>Provides getters for conveniently obtaining access to commonly-used services.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/source-editor.jsm" title="./source-editor.jsm">source-editor.jsm</a> {{fx_minversion_inline("11.0")}}</dt>
- <dd>The Source Editor is used by developer tools such as the Style Editor; this interface implements the editor and lets you interact with it.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Sqlite.jsm" title="./Sqlite.jsm">Sqlite.jsm</a> {{gecko_minversion_inline("20.0")}}</dt>
- <dd>A Promise-based API to {{ interface("mozIStorage") }}/SQLite.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Task.jsm" title="./Task.jsm">Task.jsm</a> {{gecko_minversion_inline("17.0")}}</dt>
- <dd>Implements a subset of <a class="external" href="http://taskjs.org/" title="http://taskjs.org/">Task.js</a> to make sequential, asynchronous operations simple, using the power of JavaScript's <code>yield</code> operator.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Timer.jsm" title="/en-US/docs/Mozilla/JavaScript_code_modules/Timer.jsm">Timer.jsm </a>{{gecko_minversion_inline("22.0")}}</dt>
- <dd>A pure JS implementation of <code>window.setTimeout</code>.</dd>
- <dt><a href="/en-US/Add-ons/Webapps.jsm" title="/en-US/docs/Mozilla/JavaScript_code_modules/Timer.jsm">Webapps.jsm </a>{{gecko_minversion_inline("??.0")}}</dt>
- <dd>Provides an interface to manager Open Web Apps.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/WebRequest.jsm">WebRequest.jsm</a> {{gecko_minversion_inline("41.0")}}</dt>
- <dd>Provides an API to add event listeners for the various stages of making an HTTP request. The event listener receives detailed information about the request, and can modify or cancel the request.</dd>
- <dt><a href="/en-US/docs/Mozilla/JavaScript_code_modules/XPCOMUtils.jsm" title="./XPCOMUtils.jsm">XPCOMUtils.jsm</a></dt>
- <dd>Contains utilities for JavaScript components loaded by the JS component loader.</dd>
-</dl>
diff --git a/files/zh-tw/mozilla/javascript_code_modules/promise.jsm/index.html b/files/zh-tw/mozilla/javascript_code_modules/promise.jsm/index.html
deleted file mode 100644
index fc54b6e846..0000000000
--- a/files/zh-tw/mozilla/javascript_code_modules/promise.jsm/index.html
+++ /dev/null
@@ -1,144 +0,0 @@
----
-title: Promise.jsm
-slug: Mozilla/JavaScript_code_modules/Promise.jsm
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/JavaScript_code_modules/Promise.jsm
----
-<p>{{ gecko_minversion_header("25") }}</p>
-
-<p>The <code>Promise.jsm</code> JavaScript code module implements the <a href="https://github.com/promises-aplus/promises-spec/blob/1.0.0/README.md" title="https://github.com/promises-aplus/promises-spec/blob/1.0.0/README.md">Promises/A+</a> proposal as known in April 2013.</p>
-
-<div class="warning">
-<p>This module was used before <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">DOM Promises</a> were made globally available in Gecko 29. Its usage is not suggested for new code.</p>
-
-<p>If you just need a Promise, consider using a <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">DOM Promise</a> instead.</p>
-
-<p>If you need a <a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred">Deferred</a>, because you want to create a Promise and manually resolve or reject it, consider using <a href="/en-US/docs/Mozilla/JavaScript_code_modules/PromiseUtils.jsm">PromiseUtils.jsm</a> instead.</p>
-</div>
-
-<p>To use it, you first need to import the code module into your JavaScript scope:</p>
-
-<pre>Components.utils.import("resource://gre/modules/Promise.jsm");
-</pre>
-
-<div class="note">
-<p><strong>Note:</strong> A preliminary promise module is also available starting from Gecko 17, though it didn't conform to the Promises/A+ proposal until Gecko 25:</p>
-
-<pre>Components.utils.import("<s>resource://gre/modules/commonjs/promise/core.js</s>"); // Gecko 17 to 20
-Components.utils.import("<s>resource://gre/modules/commonjs/sdk/core/promise.js</s>"); // Gecko 21 to 24
-</pre>
-
-<p>This implementation also includes helper functions that are specific to the Add-on SDK. While you may still import this module from the above paths, the recommended way for loading it is through the <a href="https://addons.mozilla.org/en-US/developers/docs/sdk/latest/modules/toolkit/loader.html" title="https://addons.mozilla.org/en-US/developers/docs/sdk/latest/modules/toolkit/loader.html">Add-on SDK loader</a>.</p>
-</div>
-
-<h2 id="Introduction">Introduction</h2>
-
-<p>For an introduction to promises, you may start from the <a href="/en-US/Add-ons/SDK/Low-Level_APIs/core_promise">Add-on SDK documentation</a>, keeping in mind that only the core subset is implemented in this module.</p>
-
-<p><u>A promise is an object representing a value that may not be available yet</u>. Internally, a promise can be in one of three states:</p>
-
-<ul>
- <li><strong>Pending</strong>, when the final value is not available yet. This is the only state that may transition to one of the other two states.</li>
- <li><strong>Fulfilled</strong>, when and if the final value becomes available. A <em>fulfillment value</em> becomes permanently associated with the promise. This may be any value, including <code>undefined</code>.</li>
- <li><strong>Rejected</strong>, if an error prevented the final value from being determined. A <em>rejection reason</em> becomes permanently associated with the promise. This may be any value, including <code>undefined</code>, though it is generally an <a href="/en-US/docs/JavaScript/Reference/Global_Objects/Error" title="/en-US/docs/JavaScript/Reference/Global_Objects/Error"><code>Error</code></a> object, like in exception handling.</li>
-</ul>
-
-<p>A reference to an existing promise may be received by different means, for example as the return value of a call into an asynchronous API. In this case, the state of the promise can be observed but not directly controlled.</p>
-
-<p>To observe the state of a promise, its <code>then</code> method must be used. This method registers callback functions that are called as soon as the promise is either fulfilled or rejected. The method returns a new promise, that in turn is fulfilled or rejected depending on the state of the original promise and on the behavior of the callbacks. For example, unhandled exceptions in the callbacks cause the new promise to be rejected, even if the original promise is fulfilled. See the documentation of the <code>then</code> method for details.</p>
-
-<p>Promises may also be created using the <a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise#Constructor" title="/Mozilla/JavaScript_code_modules/Promise.jsm/Promise#Constructor"><code>new Promise()</code></a> constructor.</p>
-
-<h2 id="Method_overview">Method overview</h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <td><code><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred">Deferred</a> <a href="#defer()">defer</a>();</code> {{ obsolete_inline("30") }}</td>
- </tr>
- <tr>
- <td><code><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise">Promise</a> <a href="#resolve()">resolve</a>([optional] aValue);</code></td>
- </tr>
- <tr>
- <td><code><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise">Promise</a> <a href="#reject()">reject</a>([optional] aReason);</code></td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Methods">Methods</h2>
-
-<h3 id="defer()">defer()</h3>
-
-<p>Creates a new pending promise and provides methods to resolve or reject it.</p>
-
-<pre>Deferred defer(); {{ obsolete_inline("30") }}
-</pre>
-
-<h6 id="Parameters">Parameters</h6>
-
-<p>None.</p>
-
-<h6 id="Return_value">Return value</h6>
-
-<p>A new object, containing the new promise in the <code>promise</code> property, and the methods to change its state in the <code>resolve</code> and <code>reject</code> properties. See the <a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred"><code>Deferred</code></a> documentation for details.</p>
-
-<h3 id="resolve()">resolve()</h3>
-
-<p>Creates a new promise fulfilled with the specified value, or propagates the state of an existing promise.</p>
-
-<pre>Promise resolve(
- aValue
-);
-</pre>
-
-<h6 id="Parameters_2">Parameters</h6>
-
-<dl>
- <dt><code>aValue</code> {{ optional_inline() }}</dt>
- <dd>If this value is not a promise, including <code>undefined</code>, it becomes the fulfillment value of the returned promise. If this value is a promise, then the returned promise will be resolved with the value, i.e. it will eventually assume the same state as the provided promise.</dd>
-</dl>
-
-<h6 id="Return_value_2">Return value</h6>
-
-<p>A promise that can be pending, fulfilled, or rejected.</p>
-
-<h3 id="reject()">reject()</h3>
-
-<p>Creates a new promise rejected with the specified reason.</p>
-
-<pre>Promise reject(
- aReason
-);
-</pre>
-
-<h6 id="Parameters_3">Parameters</h6>
-
-<dl>
- <dt><code>aReason</code> {{ optional_inline() }}</dt>
- <dd>
- <p>The rejection reason for the returned promise. Although the reason can be <code>undefined</code>, it is generally an <a href="/en-US/docs/JavaScript/Reference/Global_Objects/Error" title="/en-US/docs/JavaScript/Reference/Global_Objects/Error"><code>Error</code></a> object, like in exception handling.</p>
-
- <div class="note"><strong>Note:</strong> This argument should not be a promise. Specifying a rejected promise would make the rejection reason equal to the rejected promise itself, and not its rejection reason.</div>
- </dd>
-</dl>
-
-<h6 id="Return_value_3">Return value</h6>
-
-<p>A rejected promise.</p>
-
-<h2 id="Examples">Examples</h2>
-
-<p>See the <a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Examples">examples</a> page.</p>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise">Promise</a></li>
- <li><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred">Deferred</a></li>
- <li><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Examples">Examples</a></li>
- <li><a class="internal" href="/en-US/docs/JavaScript_code_modules/Using" title="en-US/docs/JavaScript code modules/Using JavaScript code modules">Using JavaScript code modules</a></li>
- <li><a class="internal" href="/en-US/docs/Mozilla/JavaScript_code_modules" title="en-US/docs/Mozilla/JavaScript code modules">JavaScript code modules</a></li>
- <li><a class="internal" href="/en-US/docs/Components.utils.import" title="en-US/docs/Components.utils.import"><code>Components.utils.import</code></a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/javascript_code_modules/promise.jsm/promise/index.html b/files/zh-tw/mozilla/javascript_code_modules/promise.jsm/promise/index.html
deleted file mode 100644
index 44c0b22181..0000000000
--- a/files/zh-tw/mozilla/javascript_code_modules/promise.jsm/promise/index.html
+++ /dev/null
@@ -1,215 +0,0 @@
----
-title: Promise
-slug: Mozilla/JavaScript_code_modules/Promise.jsm/Promise
-tags:
- - JavaScript
- - Promise.jsm
-translation_of: Mozilla/JavaScript_code_modules/Promise.jsm/Promise
----
-<p><strong>一個 <code>Promise</code> 物件代表一個可能還不能使用的值。</strong></p>
-
-<p>可以用不同的方式接收一個 promise 的參照,比如作為一個異步 API 的回傳值。一但你有了 promise 的參照,你就可以呼叫它的 <a href="#then()" title="#then()"><code>then()</code></a> 方法來在它的值準備好後,或是,當錯誤發生時執行一些動作。</p>
-
-<p>Promises 物件也可以透過 <a href="#Constructor" title="#Constructor"><code>new Promise()</code></a> 建構子來創建。當你使用一個 <code>Promise</code> 物件的參照時,並不需要額外引入 <code>Promise.jsm</code> 模組 。</p>
-
-<p>一個 promise 可以處於三種內部狀態:</p>
-
-<ul>
- <li><strong>Pending</strong>, 當最終的值尚未準備好被使用時。這是唯一一個可以轉移到其他兩個狀態的狀態。</li>
- <li><strong>Fulfilled</strong>, 當最終的值準備好被使用時。一個完成值將和 promise 建立永久關聯。它可能是任意的值,包和 <code>undefined</code>。</li>
- <li><strong>Rejected</strong>, 當計算最終的值時有錯誤發生。一個拒絕原因將和 promise 建立永久關聯。它可以是任意的值,包含 <code>undefined</code>,儘管它通常是一個 <a href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Error" title="/en-US/docs/JavaScript/Reference/Global_Objects/Error"><code>Error</code></a> 物件對象,就像例外處理時一樣。</li>
-</ul>
-
-<div class="note">
-<p><strong>註:</strong> 你永遠應該處理、轉送或是回報錯誤(或是拒絕的原因)。如果你看到 "<strong>A promise chain failed to handle a rejection</strong>",那很有可能是程式碼中有東西需要修正。請參考 <a href="#Handling_errors_and_common_pitfalls" title="#Handling_errors_and_common_pitfalls">handling errors and common pitfalls</a> 。</p>
-</div>
-
-<h2 id="文件規範">文件規範</h2>
-
-<p>在說明文件中,完成值的型別通常被定義在角括號中。舉例來說,<code><a href="/en-US/docs/JavaScript_OS.File/OS.File_for_the_main_thread#OS.File.exists()" title="/en-US/docs/JavaScript_OS.File/OS.File_for_the_main_thread#OS.File.exists()">OS.File.exists</a></code> 方法回傳的 promise 最終將會履行一個 boolean。</p>
-
-<pre>Promise&lt;boolean&gt; exists(string path);
-</pre>
-
-<p>拒絕原因通常可以分別在方法的文件中定義,而且當沒有特別說明時它將被當作是一個 <a href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Error" title="/en-US/docs/JavaScript/Reference/Global_Objects/Error"><code>Error</code></a> 物件。</p>
-
-<h2 id="方法總覽">方法總覽</h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <td><code>Promise <a href="#then()">then</a>([optional] <a href="/en-US/docs/JavaScript/Reference/Global_Objects/Function" title="/en-US/docs/JavaScript/Reference/Global_Objects/Function">Function</a> onFulfill, </code><code>[optional] </code><code><a href="/en-US/docs/JavaScript/Reference/Global_Objects/Function" title="/en-US/docs/JavaScript/Reference/Global_Objects/Function">Function</a> onReject</code><code>);</code></td>
- </tr>
- <tr>
- <td><code>Promise <a href="#catch">catch</a>([optional] <a href="/en-US/docs/JavaScript/Reference/Global_Objects/Function">Function</a> onReject);</code></td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="建構子">建構子</h2>
-
-<p>創建一個新的 promise ,初始化等待狀態,並提供一些 resolving 方法的參照,這些方法將可以用來改變它的狀態。</p>
-
-<pre>new Promise(executor);
-</pre>
-
-<h3 id="參數">參數</h3>
-
-<dl>
- <dt><code>executor</code></dt>
- <dd>
- <p>這個方法將立刻被呼叫,伴隨著兩個 resolving 方法作為其參數:</p>
-
- <pre>executor(resolve, reject);
-</pre>
-
- <p>建構子在 executor 結束之前不會結束。那些 resolving 方法可以在任何時候被使用,包含 executor 完成前和完成後,用來控制 promise 的最終狀態。如果 executor 拋出了例外,例外的值將被當作參數傳入 <code>reject</code> 方法。</p>
- </dd>
-</dl>
-
-<h3 id="Resolving_方法">Resolving 方法</h3>
-
-<h4 id="resolve()">resolve()</h4>
-
-<p>執行將特定值連結到 promise 的工作,或是傳遞狀態到一個已存在的 promise。如果被連結的 promise 已經處於被解決的狀態,無論是被連結到值、拒絕原因、或另外一個 promise,這個方法將不會做任何事。</p>
-
-<div class="note"><strong>註:</strong> 用一個等待中的 promise 當作此方法的 <code>aValue</code> 參數,並在這個 promise 被解決或被拒絕前再次呼叫此方法,第二次的呼叫並不會有任何效果,因為原本的 promise 已經被連結到這個等待中的 promise。</div>
-
-<pre>void resolve(
- aValue
-);
-</pre>
-
-<h6 id="參數_2">參數</h6>
-
-<dl>
- <dt><code>aValue</code> <span class="inlineIndicator optional optionalInline">Optional</span></dt>
- <dd>如果這個值不是一個 promise,包含 <code>undefined</code>,它將成為被連結 promise 的完成值。如果這個值是一個 promise,則被連結的 promise 將會連結到這個傳入的 promise,並和它保持一樣的狀態(包含任何未來的轉變)。</dd>
-</dl>
-
-<h4 id="reject()">reject()</h4>
-
-<p>用指定的原因拒絕被連結的 promise。如果該 promise 已經被解決,無論是連結到值、拒絕原因、或另外一個 promise,這個方法將不會做任何事。</p>
-
-<pre>void reject(
- aReason
-);
-</pre>
-
-<h6 id="參數_3">參數</h6>
-
-<dl>
- <dt><code>aReason</code> <span class="inlineIndicator optional optionalInline">Optional</span></dt>
- <dd>
- <p>被連結 promise 的拒絕原因。雖然原因可以是 <code>undefined</code>,它通常會是一個 <a href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Error" title="/en-US/docs/JavaScript/Reference/Global_Objects/Error"><code>Error</code></a> 物件對象,就像例外處理那樣。</p>
-
- <div class="note"><strong>註:</strong> 這個參數不應該是一個 promise。指定一個拒絕 promise 作為拒絕原因會讓拒絕原因等於這個拒絕 promise 物件本身,而不是該 promise 的拒絕原因。</div>
- </dd>
-</dl>
-
-<h2 id="方法">方法</h2>
-
-<h3 id="then()">then()</h3>
-
-<p>在 promise 被完成或是被拒絕後立刻呼叫提供的方法。一個新的 promise 將被回傳,新 promise 的狀態改變將基於此 promise 和提供的 callback 方法。</p>
-
-<p>一個適當的 callback 總是在這個方法回傳後調用,無論此 promise 是否已經被完成或是被拒絕。你也可以在同一個 promise 上多次呼叫 <code>then</code> 方法,callback 們將被依照它們的註冊順序依序被調用。</p>
-
-<div class="warning">
-<p><strong>警告: </strong>如果 <code>onFulfill</code> callback 拋出例外, <code>onReject</code> callback 並不會被調用,錯誤也不會顯示在 console(你將會看到 promise 鍊失敗錯誤)。作為替代方法,你可以在你準備回傳的 promise 上註冊一個拒絕 callback 方法(使用 catch() 或是 then()),用於處理任何此 promise 上註冊的 callback 中拋出的例外。</p>
-</div>
-
-<div class="note"><strong>註:</strong> 當你在同一個 promise 上呼叫多次 <code>then</code> 方法時,註冊的 callback 們將被獨立的調用。舉例來說,如果任何例外發生在其中一個 callback 中,它將不會影響其餘 callback 的執行。callback 的行為只會影響它註冊的 <code>then</code> 方法回傳的 promise。實際上,每次調用 <code>then</code> 方法將回傳完全不同的 promise。</div>
-
-<pre>Promise then(
- Function onFulfill,
- Function onReject
-);
-</pre>
-
-<h6 id="參數_4">參數</h6>
-
-<dl>
- <dt><code>onFulfill</code> <span class="inlineIndicator optional optionalInline">Optional</span></dt>
- <dd>如果 promise 被完成,這個方法將被調用,完成值將作為它的唯一參數,此方法的回傳值將決定 <code>then</code> 方法回傳的新 promise 的狀態。若此參數不是一個方法(通常為<code>null</code>),<code>then</code> 方法回傳的新 promise 將被用和原本 promise 相同的完成值完成。</dd>
- <dt><code>onReject</code> <span class="inlineIndicator optional optionalInline">Optional</span></dt>
- <dd>
- <p>如果 promise 被拒絕,這個方法將被調用,拒絕原因將作為它的唯一參數,此方法的回傳值將決定 <code>then</code> 方法回傳的新 promise 的狀態。若此參數不是一個方法(通常為<code>null</code>),<code>then</code> 方法回傳的新 promise 將被用和原本 promise 相同的拒絕原因拒絕。</p>
- </dd>
-</dl>
-
-<h6 id="回傳值">回傳值</h6>
-
-<p>一個預設等待的 promise ,接著可以假設其狀態基於 callback 方法的結果:</p>
-
-<ul>
- <li>如果 callback 回傳一個不是 primise 的值,包含 <code>undefined</code>,新的 promise 將被用這個值完成,就算原本的 primise 是被拒絕的。</li>
- <li>如果 callback 拋出例外,新的 promise 將被用這個例外當作拒絕原因拒絕,就算原本的 promise 是被完成的。</li>
- <li>如果 callback 回傳一個 promise ,則可以假設新的 promise 最終將會和該 promise 擁有相同的狀態。</li>
-</ul>
-
-<h3 id="catch()"><a name="catch">catch()</a></h3>
-
-<p>相當於呼叫 <code>then()</code> ,並使用 <code>undefined</code> 作為 <code>onFulfill</code> 參數的值。如果你串接 <code>then(onFulfile).catch(onReject)</code>,<code>onFulfill</code> 拋出的例外將會被攔截並傳入 <code>onReject</code> ,這和直接將 <code>onReject</code> 傳入 <code>then()</code> 中不同。</p>
-
-<pre>Promise catch(
-  Function onReject
-);
-</pre>
-
-<p>因此以下的呼叫是等價的:</p>
-
-<pre>p.then(undefined, logError);
-p.catch(logError);
-</pre>
-
-<h2 id="除錯">除錯</h2>
-
-<p>基於 promise 的設計, promise 對象的狀態和值無法在不調用 <code><a href="#then()" title="#then()">then()</a></code> 的前提下同步地檢視。</p>
-
-<p>為了幫助除錯,只有在手動檢視 promise 對象時,才能看到更多資訊,這些資訊是代碼無法訪問的特殊屬性(目前,這是透過隨機化屬性名稱來實現的,因為缺少更複雜的語言或調適器的支持)。</p>
-
-<p>這些代碼無法訪問,可檢視的屬性為:</p>
-
-<ul>
- <li><code><strong><span>{</span>{private:status}}</strong></code>: <strong>0</strong> 為等待, <strong>1</strong> 為完成, <strong>2</strong> 為拒絕。</li>
- <li><code><strong><span>{</span>{private:value}}</strong></code>: 完成值或是拒絕原因,只對已完成或是已拒絕的 promise 有效。</li>
- <li><code><strong><span>{</span>{private:handlers}}</strong></code>: 一個持有通過 <code><a href="#then()" title="#then()">then()</a></code> 方法註冊之方法的參照的物件陣列,只對等待中的 promise 有效。</li>
-</ul>
-
-<p style="text-align: center;"><img alt="Promise properties are visible in the debugger." src="https://mdn.mozillademos.org/files/6471/Promise-Debug-1.png" style="border-style: solid; border-width: 2px; height: 482px; margin-bottom: 15px; margin-top: 15px; width: 403px;"><img alt="Promise handlers can be watched from the Console." src="https://mdn.mozillademos.org/files/6473/Promise-Debug-2.png" style="border-style: solid; border-width: 2px; height: 161px; width: 977px;"></p>
-
-<h2 id="範例">範例</h2>
-
-<p>參見 <a href="/Mozilla/JavaScript_code_modules/Promise.jsm/Examples">examples</a>.</p>
-
-<h2 id="錯誤處理和常見的陷阱">錯誤處理和常見的陷阱</h2>
-
-<p>你應該回報沒有被處理的錯誤,除非你將 promise 移交給調用者或是交給其他的代碼來處理這些錯誤。</p>
-
-<pre class="brush: js">// ###### WRONG: Silently drops any rejection notified by "OS.File.Exists".
-OS.File.exists(path).then(exists =&gt; { if (exists) myRead(path); });
-
-// ###### WRONG: Silently drops any exception raised by "myRead".
-OS.File.exists(path).then(exists =&gt; { if (exists) myRead(path); }, Components.utils.reportError);
-
-// CORRECT (for example, might report the exception "myRead is not defined")
-OS.File.exists(path).then(exists =&gt; { if (exists) myRead(path); })
- .catch(Components.utils.reportError);
-
-// CORRECT (the function returns a promise, and the caller will handle the rejection)
-function myReadIfExists(path)
-{
- return OS.File.exists(path).then(exists =&gt; { if (exists) myRead(path); });
-}</pre>
-
-<h2 id="參見">參見</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm">Promise.jsm</a></li>
- <li><a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred" title="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred">Deferred</a></li>
- <li><a href="/Mozilla/JavaScript_code_modules/Promise.jsm/Examples">Examples</a></li>
- <li><a href="/en-US/docs/JavaScript_OS.File" title="/en-US/docs/JavaScript_OS.File">JavaScript OS.File</a></li>
- <li><a href="http://kryogenix.org/days/2013/12/12/promises-promises">Promises, Promises</a>: a useful simple explanation by Stuart Langridge</li>
- <li><a href="http://dom.spec.whatwg.org/#promises">WHATWG Living Standard</a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/js-ctypes/index.html b/files/zh-tw/mozilla/js-ctypes/index.html
deleted file mode 100644
index a49961f677..0000000000
--- a/files/zh-tw/mozilla/js-ctypes/index.html
+++ /dev/null
@@ -1,97 +0,0 @@
----
-title: js-ctypes
-slug: Mozilla/js-ctypes
-translation_of: Mozilla/js-ctypes
----
-<p>{{jsctypesSidebar("Introduction")}}</p>
-
-<p><strong>js-ctypes</strong> allows application and extension code to call back and forth to native code written in C. C++ support is possible through <code>vtable </code>pointers see <a href="/en-US/docs/Mozilla/js-ctypes/Examples/Using_COM_from_js-ctypes">使用 COM</a>. For a discussion on extended C++ support see {{bug("505907")}}. Unlike binary XPCOM components, It allows developers to ship a single binary for use with multiple versions of Firefox.</p>
-
-<div class="note"><strong>Note:</strong> js-ctypes 只能使用在 chrome 的應用程式和擴展裡,</div>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 class="Documentation" id="Documentation" name="Documentation">文件</h2>
-
- <dl>
- <dt><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes" title="Mozilla/js-ctypes/Using_js-ctypes">使用 JS-Ctypes</a></dt>
- <dd>
- <ul>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/ctypes.open">ctypes.open</a>
- <ul>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/ctypes.open#Custom_Native_File">Custom Native File</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/Standard_OS_Libraries" title="Mozilla/js-ctypes/Standard_Libraries_per_OS">Standard OS Libraries</a>
- <ul>
- <li><a href="/en-US/Add-ons/Code_snippets/Finding_Window_Handles">Finding window handles</a></li>
- </ul>
- </li>
- </ul>
- </li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/Working_with_data">Working with Data</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/Working_with_ArrayBuffers">Working with ArrayBuffers</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/Declaring_types">Declaring Types</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/Declaring_and_calling_functions">Declaring and Calling Functions</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/Callbacks">Declaring and Using Callbacks</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Using_js-ctypes/Type_conversion">Type Conversion</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/Memory_Management">Memory Management</a></li>
- <li><a href="/en-US/docs/Web/API/ChromeWorker">ChromeWorker</a></li>
- </ul>
- </dd>
- <dt><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference" title="js-ctypes/js-ctypes_reference">JS-ctypes 參考</a></dt>
- <dd>參考 js-ctypes API.
- <ul>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/ABI">ABI</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/CData">CData</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/CType">CType</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/ctypes">ctypes</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/FunctionType">FunctionType</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/Int64">Int64</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/Library">Library</a></li>
- <li><a href="/en-US/docs/Mozilla/js-ctypes/js-ctypes_reference/UInt64">UInt64</a></li>
- </ul>
- </dd>
- </dl>
-
- <p><span class="alllinks"><a href="/en-US/docs/tag/js-ctypes" title="tag/js-ctypes">View All...</a></span></p>
-
- <h2 class="Tools" id="Examples" name="Examples"><a href="/en-US/docs/Mozilla/js-ctypes/Examples" title="Mozilla/js-ctypes/Examples">範例</a></h2>
-
- <dl>
- <dt><a href="/en-US/docs/Mozilla/js-ctypes/Examples/Add_to_iPhoto" title="Mozilla/js-ctypes/Examples/Add_to_iPhoto">Add to iPhoto</a></dt>
- <dd>A Firefox extension that uses js-ctypes to call Carbon and Core Foundation framework routines on Mac OS X to implement an "Add image to iPhoto" feature in Firefox.</dd>
- <dt><a href="/en-US/docs/Mozilla/js-ctypes/Examples/Using_C_structs_and_pointers">使用 C 結構和指針</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/docs/Mozilla/js-ctypes/Examples/Using_COM_from_js-ctypes">使用 COM</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/docs/Mozilla/js-ctypes/Examples/Using_Objective-C_from_js-ctypes">使用 Objective-C</a></dt>
- </dl>
-
- <p><strong><a href="/en-US/docs/Mozilla/js-ctypes/Examples/Using_JNI_from_js-ctypes">使用 JNI/Java</a></strong></p>
-
- <dl>
- <dt><a href="https://github.com/ochameau/jscpptypes">Github :: ochameau / jscpptypes</a></dt>
- <dd>A mangling library to use C++ from js-ctypes</dd>
- </dl>
- </td>
- <td>
- <h2 class="Community" id="Community" name="Community">社群</h2>
-
- <ul>
- <li>View Mozilla forums...{{DiscussionList("dev-extensions", "mozilla.dev.extensions")}}</li>
- <li><a href="irc://moznet/jsctypes">IRC - #jsctypes</a></li>
- <li><a href="http://stackoverflow.com/questions/tagged/jsctypes">Stackoverflow - jsctypes</a></li>
- </ul>
-
- <h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">相關文件</h2>
-
- <ul>
- <li><a href="/en-US/docs/Mozilla/Tech/XPCOM/Guide/Changes_in_Gecko_2.0#Binary_components">XPCOM in Gecko 2 - Binary Components</a></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p> </p>
diff --git a/files/zh-tw/mozilla/localization/index.html b/files/zh-tw/mozilla/localization/index.html
deleted file mode 100644
index eee1265f5f..0000000000
--- a/files/zh-tw/mozilla/localization/index.html
+++ /dev/null
@@ -1,25 +0,0 @@
----
-title: Mozilla 在地化
-slug: Mozilla/Localization
-tags:
- - Landing
- - Localization
- - Mozilla
- - NeedsTranslation
- - TopicStub
- - Translation
- - l10n
-translation_of: Mozilla/Localization
----
-<p><span class="seoSummary"><strong>在地化</strong>(Localization、L10n)指的是翻譯軟體的使用者介面,從一個語言到另一個語言,並調整到適合該語言的文化。這些資源提供給所有對於在地化的技術層面感興趣的人。</span>像是開發者和貢獻者。</p>
-
-<h2 id="延伸閱讀">延伸閱讀</h2>
-
-<dl>
- <dt><a href="/zh-TW/docs/Project:MDN/Localizing" title="/en-US/docs/Project:MDN/Localizing">Localizing MDN</a></dt>
- <dd>這些資源涵蓋了 MDN 文件的在地化。</dd>
- <dt><a href="/zh-TW/Apps/Build/Localization">App localization</a></dt>
- <dd>這一系列文件特別用於在地化應用程式,包含 Firefox OS 應用程式。</dd>
- <dt><a href="/zh-TW/docs/Web/API/L10n">L10n</a></dt>
- <dd>Mozilla 用於在地化 Firefox OS 的 L10n API 參考文件。</dd>
-</dl>
diff --git a/files/zh-tw/mozilla/localization/localizing_with_pontoon/index.html b/files/zh-tw/mozilla/localization/localizing_with_pontoon/index.html
deleted file mode 100644
index 08461fecd6..0000000000
--- a/files/zh-tw/mozilla/localization/localizing_with_pontoon/index.html
+++ /dev/null
@@ -1,135 +0,0 @@
----
-title: 使用 Pontoon 來在地化
-slug: Mozilla/Localization/Localizing_with_Pontoon
-translation_of: Mozilla/Localization/Localizing_with_Pontoon
----
-<p><a href="https://pontoon.mozilla.org" title="https://pontoon.mozilla.org">Pontoon</a> 是一個基於web網頁的、所見即所得(WYSIWYG)的在地化(l10n即localization)工具。在Mozilla基金會,我們使用Pontoon本地化Mozilla網站和Firefox OS(火狐移動操作系統)的應用層(app)接口,就是Gaia。 Pontoon是一個非常簡單和直觀的,僅需要很少甚至沒有技術背景,就能在l10n本地化工作流程中,學會使用的工具。以下,我們將討論如何在本地化項目中使用Pontoon,從最初的註冊登錄到最終面對你的貢獻者(參與該項目的志願者或工作人員)。在這個過程中,我們將挑出Pontoon的一些貼心特性,那將使你十分有效率,並將使l10n本地化共享項目變得更容易。</p>
-
-<div class="note">
-<p><strong>你是位開發者嗎?</strong> 閱讀 <a href="/en-US/docs/Implementing_Pontoon_Mozilla">在你的網站上使用 Pontoon</a> 或學習如何在 <a href="https://github.com/mozilla/pontoon">GitHub</a> 上使用。</p>
-</div>
-
-<h2 id="第一步">第一步</h2>
-
-<p><a href="https://pontoon.mozilla.org" title="https://pontoon.mozilla.org">Pontoon 的首頁</a> is very easy to use. To begin localizing the project, click on the Persona icon and sign in. Next, simply select the project you want to work on and your locale from the dropdown menus. Pontoon will automatically open that locale's project for you to get started. Note that for our purposes here, we'll be using <a href="https://affiliates.mozilla.org/">Firefox Affiliates</a> website to demo Pontoon's functionality and workflow. And there it is, opened inside Pontoon:</p>
-
-<p><em><img alt="Browser app and workspace" src="https://mdn.mozillademos.org/files/8323/affiliates.png" style="height: 558px;"></em></p>
-
-<h3 id="主要工具列">主要工具列</h3>
-
-<p>如你所見,most of the interface is taken by the website being translated. Only the toolbar on top belongs to Pontoon, containing the following items (from left to right):</p>
-
-<p><img alt="Main toolbar" src="https://mdn.mozillademos.org/files/8325/toolbar.png"></p>
-
-<h4 id="字串列表">字串列表</h4>
-
-<p>Opens a sidebar with a list of all strings to localize.</p>
-
-<h4 id="Project_selector_(Affiliates)"><span id="cke_bm_939S" style="display: none;"> </span>Project selector (Affiliates)</h4>
-
-<p>Switches between projects to localize.</p>
-
-<h4 id="Resource_selector_(Homepage)"><span id="cke_bm_940S" style="display: none;"> </span>Resource selector (Homepage)</h4>
-
-<p>Switches between project resources to localize, like subpages or localization files. Hidden if no resources available for project.</p>
-
-<h4 id="sect1"><span id="cke_bm_941S" style="display: none;"> </span></h4>
-
-<dl>
-</dl>
-
-<h4 id="Locale_selector_(Slovenian)">Locale selector (Slovenian)</h4>
-
-<p>Switches between languages to localize.</p>
-
-<h4 id="Go">Go</h4>
-
-<p>Opens project-resource-locale selection.</p>
-
-<h4 id="Progress_indicator">Progress indicator</h4>
-
-<p>Displays your progress on the resource being localized. More details are available in the popup.</p>
-
-<dl>
-</dl>
-
-<h4 id="使用者清單"><span id="cke_bm_943S" style="display: none;"> </span>使用者清單</h4>
-
-<p>Allows for user-specific tasks, like commiting to repository, downloading files and signing out.</p>
-
-<h4 id="資訊清單">資訊清單</h4>
-
-<p>Gives important information, like the anticipated project timeline and a list of keyboard shortcuts.</p>
-
-<dl>
-</dl>
-
-<p>好了,我們現在是不是該來翻譯啦~<span id="cke_bm_608E" style="display: none;"> </span></p>
-
-<dl>
-</dl>
-
-<h2 id="翻譯字串">翻譯字串</h2>
-
-<p>當使用 Pontoon 來在地化時,你有多種選擇來翻譯你的字串,你可以直接修改內容、在內容外或是兩種混和。We'll start with looking at in-context translation.</p>
-
-<h3 id="內容中">內容中</h3>
-
-<p>Pontoon's in-context translation mode is what puts it above others. It opens a web page (or web app) and enables real-time editing of that page. Here's how you translate your first string:</p>
-
-<p><img alt="In-context localization" src="https://mdn.mozillademos.org/files/8331/in-context.png"></p>
-
-<ol>
- <li>Hover over the text you want to translate with your mouse.</li>
- <li>An edit button appears over that text. Click on it to enable the translate mode.</li>
- <li>Replace the original text with its translation into your language.</li>
- <li>Click the save button to save your translation.</li>
-</ol>
-
-<div>
-<h3 id="內容外">內容外</h3>
-
-<p>Some strings are impossible to translate in-context, e.g. the contents of the &lt;title&gt; tag in websites and strings with placeables or different plural forms. By clicking on the hamburger icon in the main toolbar, a list of all strings and available translations will open in the sidebar. You can also use the sidebar for out-of-context localization:</p>
-
-<p><img alt="Out-of-context localization: list" src="https://mdn.mozillademos.org/files/8337/out-of-context-1.png"> <img alt="Out-of-context localization: translate" src="https://mdn.mozillademos.org/files/8335/out-of-context-2.png"></p>
-
-<ol>
- <li>點擊你想要翻譯的字串。</li>
- <li>Translation panel with original string and its details (e.g. comments) opens.</li>
- <li>Translate the string in the translation area below.</li>
- <li>按下儲存按鈕來儲存你的翻譯。</li>
-</ol>
-
-<p>當你在內容外翻譯,成果將會直接在內容上呈現,if they could also be translated in-context.</p>
-
-<h3 id="翻譯小助手">翻譯小助手</h3>
-</div>
-
-<p>如你所見,suggestions from history, translation memory, machine translation and other locales are also available in the out-of-context translation panel. We call all of these translation helpers and here's how each of them will help you as you translate strings:</p>
-
-<p><img alt="Translation helpers: History" src="https://mdn.mozillademos.org/files/8339/helpers-history.png"> <img alt="Translation helpers: Machinery" src="https://mdn.mozillademos.org/files/8341/helpers-machinery.png"> <img alt="Translation helpers: Other locales" src="https://mdn.mozillademos.org/files/8343/helpers-locales.png"> <img alt="Translation helpers: Search" src="https://mdn.mozillademos.org/files/8345/helpers-menu.png"></p>
-
-<h4 id="歷史紀錄">歷史紀錄</h4>
-
-<p>Displays previously suggested translations, including from other users.</p>
-
-<h4 id="Machinery">Machinery</h4>
-
-<p>Displays matches from various services: internal translation memory, <a href="http://transvision.mozfr.org/">Mozilla Transvision</a>, <a href="https://amagama-live.translatehouse.org/">open source translation memory</a>, <a href="http://www.microsoft.com/Language/">Microsoft terminology</a> and <a href="http://www.bing.com/translator">machine translation</a>.</p>
-
-<h4 id="其他語言">其他語言</h4>
-
-<p>Displays matching translations from other locales.</p>
-
-<h4 id="搜尋">搜尋</h4>
-
-<p>Almost like machinery, but takes provided keyword as input parameter instead of the original string.</p>
-
-<p>By clicking a suggestion, it gets copied into translation area.</p>
-
-<dl>
-</dl>
-
-<h2 id="發布你的在地化">發布你的在地化</h2>
-
-<p>Suppose you now want to publish your l10n work by committing it to a repo. Pontoon lets you do that too! Actually, it does that for you by automatically syncing with repositories on hourly basis. You can now pat yourself on the back, do a little dance, go to sleep or do something else to celebrate your work!</p>
diff --git a/files/zh-tw/mozilla/mathml_project/index.html b/files/zh-tw/mozilla/mathml_project/index.html
deleted file mode 100644
index dea19cfe6f..0000000000
--- a/files/zh-tw/mozilla/mathml_project/index.html
+++ /dev/null
@@ -1,60 +0,0 @@
----
-title: Mozilla MathML Project
-slug: Mozilla/MathML_Project
-tags:
- - MathML
- - MathML Project
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/MathML_Project
----
-<p>The Mozilla MathML project is Mozilla's project to build and enhance <a href="/en-US/docs/Web/MathML" title="/en-US/docs/Web/MathML">MathML</a> support within Firefox and other Mozilla-based applications. For a quick overview, see the <a href="http://fred-wang.github.io/MozSummitMathML/index.html">slides for the innovation fairs at Mozilla Summit 2013</a>.</p>
-<h2 id="Updates">Updates</h2>
-<p><img alt="Mathzilla" class="internal default" height="150" src="https://mdn.mozillademos.org/files/6281/mathzilla.svg" style="float: right;" width="150"></p>
-<ul>
- <li><a href="/docs/Mozilla/MathML_Project/Status" title="Mozilla MathML Project/Status">Status of each tag</a></li>
- <li><a href="/docs/Mozilla/MathML_Project/MathML3Testsuite" title="Mozilla MathML Project/MathML3Testsuite">Result of the MathML 3 Testsuite</a></li>
- <li><a class="external" href="https://www.wg9s.com/mozilla/firefox/">Unofficial nightly builds with MathML patches applied</a> (maintained by Bill Gianopoulos)</li>
- <li><a href="/docs/Mozilla/MathML_Project/Updates" title="Mozilla_MathML_Project/Updates">More updates and archived content</a></li>
-</ul>
-<h2 id="Community">Community</h2>
-<ul>
- <li>View Mozilla forums... {{DiscussionList("dev-tech-mathml", "mozilla.dev.tech.mathml")}}</li>
- <li><a class="link-irc" href="irc://irc.mozilla.org/%23mathml" rel="external" title="irc://irc.mozilla.org/%23mathml">IRC channel</a></li>
- <li><a class="link-https" href="https://wiki.mozilla.org/MathML:Home_Page">Wiki used by contributors</a> - check out the latest developments and help us improving MathML in Mozilla.</li>
-</ul>
-<h2 id="Links">Links</h2>
-<ul>
- <li>Installing <a href="/docs/Mozilla/MathML_Project/Fonts" title="Mozilla MathML Project/Fonts">fonts for Mozilla's MathML engine</a></li>
- <li><a class="external" href="http://www.w3.org/TR/MathML3/">MathML Version 3.0</a> - W3C Recommendation, 21 October 2010</li>
- <li><a class="external" href="http://www.w3.org/Math/testsuite/"><abbr>W3C</abbr> <abbr>MathML</abbr> Test Suite</a> - Designed to check the implementation of each element one attribute (or built-in rendering behavior) at a time in a fairly thorough manner.</li>
- <li><a href="/docs/Web/MathML" title="MathML">MathML in Mozilla Developer Network</a></li>
-</ul>
-<h3 id="Sample_MathML_Documents">Sample <abbr>MathML</abbr> Documents</h3>
-<ul>
- <li><a href="/docs/Mozilla/MathML_Project/Screenshots" title="Mozilla MathML Project/Screenshots">Screenshots</a></li>
- <li><a href="/docs/Mozilla/MathML_Project/Start" title="Mozilla_MathML_Project/Start"><abbr>MathML</abbr> Start Page</a> - with translations in different languages ( <a href="/ar/docs/Mozilla_MathML_Project/Start" title="/ar/Mozilla_MathML_Project/Start">Arabic</a>, <a href="/zh-CN/docs/Mozilla_MathML_Project/Start" title="/zh-CN/Mozilla_MathML_Project/Start">Chinese</a>, <a href="/he/docs/Mozilla_MathML_Project/Start" title="/he/Mozilla_MathML_Project/Start">Hebrew</a>, <a href="/th/docs/Mozilla_MathML_Project/Start" title="/th/Mozilla_MathML_Project/Start">Thai</a>)</li>
- <li><a class="external" href="/docs/Mozilla/MathML_Project/Basics">MathML Basics</a> - Document tailored to display correctly with just the Symbol font that is pre-installed by default on most OS configurations.</li>
- <li><a class="external" href="/docs/Mozilla/MathML_Project/MathML_Torture_Test"><abbr>MathML</abbr> Torture Test</a> - Comparative testing of MathML rendering against TeX.</li>
- <li>Demo of some MathML tags: <a class="external" href="/docs/Mozilla/MathML_Project/mfrac">mfrac</a>, <a class="external" href="/docs/Mozilla/MathML_Project/mo">mo</a>, <a class="external" href="/docs/Mozilla/MathML_Project/mtable">mtable</a>, <a class="external" href="/docs/Mozilla/MathML_Project/mspace">mspace</a>, <a class="external" href="/docs/Mozilla/MathML_Project/mmultiscripts">mmultiscripts</a>, <a class="external" href="/docs/Mozilla/MathML_Project/roots">msqrt-mroot</a>.</li>
- <li><a class="external" href="/docs/Mozilla/MathML_Project/Extras">MathML Extras</a> - Technology demonstration of some interesting upshots from building natively upon the browser environment.</li>
- <li><a href="/docs/Mozilla/MathML_Project/Various" title="Mozilla_MathML_Project/Various">Various MathML Tests</a> - These pages were imported from <code>layout/mathml/tests/</code>.</li>
- <li><a class="external" href="http://golem.ph.utexas.edu/~distler/blog/archives/000104.html">Blog</a> with comments that include MathML.</li>
-</ul>
-<h3 id="Create_MathML_Documents">Create <abbr>MathML</abbr> Documents</h3>
-<ul>
- <li><a href="/docs/Web/MathML/Authoring" title="Mozilla MathML Project/Authoring">Authoring MathML</a></li>
- <li><a class="external" href="http://www.w3.org/Math/Software/mathml_software_cat_editors.html">Editors</a></li>
- <li><a class="external" href="http://www.w3.org/Math/Software/mathml_software_cat_converters.html">Converters</a></li>
- <li><a class="external" href="http://www.w3.org/Math/Software/mathml_software_cat_stylesheets.html">Stylesheets</a></li>
-</ul>
-<div class="originaldocinfo">
- <h2 id="Original_Document_Information" name="Original_Document_Information">Original Document Information</h2>
- <ul>
- <li>Author(s): Roger B. Sidje</li>
- <li>Other Contributors: Frédéric Wang</li>
- <li>Last Updated Date: April 4, 2010</li>
- <li>Copyright Information: Portions of this content are © 1999–2010 by individual mozilla.org contributors; content available under a Creative Commons license | <a class="external" href="http://www.mozilla.org/foundation/licensing/website-content.html">Details</a>.</li>
- </ul>
-</div>
-<p> </p>
diff --git a/files/zh-tw/mozilla/mathml_project/screenshots/index.html b/files/zh-tw/mozilla/mathml_project/screenshots/index.html
deleted file mode 100644
index 880c0ddd35..0000000000
--- a/files/zh-tw/mozilla/mathml_project/screenshots/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: MathML 快照
-slug: Mozilla/MathML_Project/Screenshots
-translation_of: Mozilla/MathML_Project/Screenshots
----
-<ul>
- <li><a href="https://developer.mozilla.org/docs/Mozilla/MathML_Project/Start">起始</a>的<a href="https://developer.mozilla.org/@api/deki/files/5690/=start.png" title="start.png">快照畫面</a></li>
- <li><a href="https://developer.mozilla.org/docs/Mozilla/MathML_Project/Basics">基礎</a>的<a href="https://developer.mozilla.org/@api/deki/files/5518/=basics.png">快照畫面</a></li>
- <li><a class="external" href="/docs/Mozilla/MathML_Project/mfrac" title="http://www.mozilla.org/projects/mathml/demo/mfrac.xhtml">mfrac</a>的<a href="https://developer.mozilla.org/@api/deki/files/5509/=demo-mfrac.png">快照畫面</a>。 此網頁同時顯示MathML如何整合網頁功能,例如:影像背景的透明度。</li>
- <li><a class="external" href="/docs/Mozilla/MathML_Project/mtable" title="http://www.mozilla.org/projects/mathml/demo/mtable.xhtml">mtable</a>的<a href="https://developer.mozilla.org/@api/deki/files/5512/=demo-mtable-1.png">快照畫面</a>,這些畫面展示二維數學公式的排版。</li>
- <li><a href="https://developer.mozilla.org/docs/Mozilla/MathML_Project/roots">根</a>與<a href="https://developer.mozilla.org/docs/Mozilla/MathML_Project/Various#Maxwell's_Equations">物理公式</a>(馬克斯公式及愛因斯坦磁場公式)的<a href="https://developer.mozilla.org/@api/deki/files/5508/=roots-maxwell-einstein.png">快照畫面</a>,這些畫面展現出利用mtable與彈性運算元進階佈局功能。</li>
- <li>你可以獲取關於<a href="https://developer.mozilla.org/@api/deki/files/5510/=view_mathml_source.png">數學公式</a>或<a href="https://developer.mozilla.org/@api/deki/files/5511/=view_selection_source.png">選取的算術式</a>的原始碼。這些都是你自己的選擇!</li>
- <li>一些關於MathML的<a href="https://developer.mozilla.org/@api/deki/files/4240/=mail_client_blog.png">網誌貼文</a>及<a href="https://developer.mozilla.org/@api/deki/files/5519/=mathmail.png">郵件</a>。</li>
-</ul>
diff --git a/files/zh-tw/mozilla/mathml_project/開頭/index.html b/files/zh-tw/mozilla/mathml_project/開頭/index.html
deleted file mode 100644
index 6572d9e913..0000000000
--- a/files/zh-tw/mozilla/mathml_project/開頭/index.html
+++ /dev/null
@@ -1,91 +0,0 @@
----
-title: 使用 MathML
-slug: Mozilla/MathML_Project/開頭
-tags:
- - MathML
-translation_of: Mozilla/MathML_Project/Start
----
-<h2 id="使用_MathML">使用 MathML</h2>
-<p>你有看到這頁面理那些精巧的數學算式嗎? 沒有嗎? 太糟糕了, 來<a href="https://developer.mozilla.org/@api/deki/files/5690/=start.png">這邊</a>看一下你錯過了什麼東西吧。 並快<a href="https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Project/">下載</a>支援這個功能的 Mozilla 板本來補救這哀傷的場面!</p>
-<p>還是你發現你看到的畫面根螢幕截圖不一樣呢? 這牆況通常是因為你少了某些關鍵的 <a href="https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Project/fonts/">MathML 字型</a>。</p>
-<p>現在準備萬全了, 你應該看得到這個行內等式的尖角符號: <math> <mrow> <mover> <mi>x</mi> <mo>^</mo> </mover> <mo>+</mo> <mover> <mrow><mi>x</mi><mo>⁢</mo><mi>y</mi></mrow> <mo>^</mo> </mover> <mo>+</mo> <mover> <mrow><mi>x</mi><mo>⁢</mo><mi>y</mi><mo>⁢</mo><mi>z</mi></mrow> <mo>^</mo> </mover> <mo>.</mo>  </mrow></math>旁邊這個則是小小的公式, <math> <mrow> <mo>det</mo> <mo lspace="0" rspace="0" symmetric="false">|</mo> <mfrac linethickness="0"> <mi>a</mi> <mi>c</mi> </mfrac> <mfrac linethickness="0"> <mi>b</mi> <mi>d</mi> </mfrac> <mo lspace="0" rspace="0" symmetric="false">|</mo> <mo>=</mo> <mi>a</mi> <mi>d</mi> <mo>-</mo> <mi>b</mi> <mi>c</mi> <mo>,</mo> </mrow></math>也可以被設定成這樣的顯示方式: <math display="block"> <mrow> <mo>det</mo> <mo>|</mo> <mtable> <mtr> <mtd> <mi>a</mi> </mtd> <mtd> <mi>b</mi> </mtd> </mtr> <mtr> <mtd> <mi>c</mi> </mtd> <mtd> <mi>d</mi> </mtd> </mtr> </mtable> <mo>|</mo> <mo>=</mo> <mi>a</mi> <mi>d</mi> <mo>-</mo> <mi>b</mi> <mi>c</mi> <mo>.</mo> </mrow> </math></p>
-<p>數學的排版非常的挑剔。 <a href="./">MathML in Mozilla</a> 正是著眼於實踐 <a href="http://www.w3.org/Math/">MathML 標準</a>
- <i>
- </i>
- 以能達到<em> 所標記即所得</em> 、或者說 <em>所製即所得</em>
- <i>
- </i>
- ,簡短點就是所謂的 "WYSIWYM"。 而這兩者的差異可以在下面的兩行算式表現出來!<math display="block"><msup><mrow><mo minsize="3" symmetric="false">(</mo> <mo>...</mo> <msup> <mrow> <mo minsize="2" symmetric="false">(</mo> <msup> <mrow> <mo symmetric="false">(</mo> <msub> <mi>a</mi> <mn>0</mn> </msub> <mo>+</mo> <msub> <mi>a</mi> <mn>1</mn> </msub> <mo symmetric="false">)</mo> </mrow> <msub> <mi>n</mi> <mn>1</mn> </msub> </msup> <mo>+</mo> <msub> <mi>a</mi> <mn>2</mn> </msub> <mo minsize="2" symmetric="false">)</mo> </mrow> <msub> <mi>n</mi> <mn>2</mn> </msub> </msup> <mo>+</mo> <mo>...</mo> <mo>+</mo> <msub> <mi>a</mi> <mi>p</mi> </msub> <mo minsize="3" symmetric="false">)</mo> </mrow> <msub> <mi>n</mi> <mi>p</mi> </msub> </msup> </math> <math display="block"> <msup> <mrow> <mo>(</mo> <mo>...</mo> <msup> <mrow> <mo>(</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>a</mi> <mn>0</mn> </msub> <mo>+</mo> <msub> <mi>a</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <msub> <mi>n</mi> <mn>1</mn> </msub> </msup> <mo>+</mo> <msub> <mi>a</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <msub> <mi>n</mi> <mn>2</mn> </msub> </msup> <mo>+</mo> <mo>...</mo> <mo>+</mo> <msub> <mi>a</mi> <mi>p</mi> </msub> <mo>)</mo> </mrow> <msub> <mi>n</mi> <mi>p</mi> </msub> </msup> </math></p>
-<p>而這粗體等式的根 <math><mstyle mathvariant="bold"><msup><mi>y</mi> <mn>3</mn> </msup> <mo>+</mo> <mi>p</mi> <mi>y</mi> <mo>+</mo> <mi>q</mi> <mo>=</mo> <mn>0</mn>  </mstyle></math>也用粗體呈現 <math display="block"> <mstyle mathvariant="bold"> <mi>y</mi> <mo>=</mo> <mroot> <mrow> <mo>-</mo> <mfrac> <mi>q</mi> <mn>2</mn> </mfrac> <mo>+</mo> <mroot> <mrow> <mfrac> <msup> <mi>q</mi> <mn>2</mn> </msup> <mn>4</mn> </mfrac> <mo>+</mo> <mfrac> <msup> <mi>p</mi> <mn>3</mn> </msup> <mn>27</mn> </mfrac> </mrow> <mn>2</mn> </mroot> </mrow> <mn>3</mn> </mroot> <mo>+</mo> <mroot> <mrow> <mo>-</mo> <mfrac> <mi>q</mi> <mn>2</mn> </mfrac> <mo>-</mo> <mroot> <mrow> <mfrac> <msup> <mi>q</mi> <mn>2</mn> </msup> <mn>4</mn> </mfrac> <mo>+</mo> <mfrac> <msup> <mi>p</mi> <mn>3</mn> </msup> <mn>27</mn> </mfrac> </mrow> <mn>2</mn> </mroot> </mrow> <mn>3</mn> </mroot> <mo>.</mo> </mstyle> </math></p>
-<p>而等式 <math><mrow><mi>a</mi> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo> <mi>b</mi> <mi>x</mi> <mo>+</mo> <mi>c</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo>  </mrow> </math>的根 在下面的黃色區域內點可以縮放它</p>
-<div style="display: none;">
- <h2 id="Zoomable_Math" name="Zoomable_Math">Zoomable Math</h2>
- <h3 id="HTML_Content">HTML Content</h3>
- <pre class="brush: html"> &lt;p&gt;
- &lt;math display="block"&gt;
- &lt;mstyle id="zoomableMath" mathbackground="yellow"&gt;
- &lt;mrow&gt;
- &lt;mi&gt;x&lt;/mi&gt;
- &lt;mo&gt;=&lt;/mo&gt;
- &lt;mfrac&gt;
- &lt;mrow&gt;
- &lt;mrow&gt;
- &lt;mo&gt;-&lt;/mo&gt;
- &lt;mi&gt;b&lt;/mi&gt;
- &lt;/mrow&gt;
- &lt;mo&gt;&amp;#xB1;&lt;/mo&gt;
- &lt;msqrt&gt;
- &lt;mrow&gt;
- &lt;msup&gt;
- &lt;mi&gt;b&lt;/mi&gt;
- &lt;mn&gt;2&lt;/mn&gt;
- &lt;/msup&gt;
- &lt;mo&gt;-&lt;/mo&gt;
- &lt;mrow&gt;
- &lt;mn&gt;4&lt;/mn&gt;
- &lt;mi&gt;a&lt;/mi&gt;
- &lt;mi&gt;c&lt;/mi&gt;
- &lt;/mrow&gt;
- &lt;/mrow&gt;
- &lt;/msqrt&gt;
- &lt;/mrow&gt;
- &lt;mrow&gt;
- &lt;mn&gt;2&lt;/mn&gt;
- &lt;mi&gt;a&lt;/mi&gt;
- &lt;/mrow&gt;
- &lt;/mfrac&gt;
- &lt;/mrow&gt;
- &lt;/mstyle&gt;
- &lt;/math&gt;
- &lt;/p&gt;
-
-</pre>
- <h3 id="JavaScript_Content">JavaScript Content</h3>
- <pre class="brush: js"> function zoomToggle()
- {
- if (this.hasAttribute("mathsize")) {
- this.removeAttribute("mathsize");
- } else {
- this.setAttribute("mathsize", "200%");
- }
- }
-
- function load()
- {
- document.getElementById("zoomableMath").
- addEventListener("click", zoomToggle, false);
- }
-
- window.addEventListener("load", load, false);</pre>
-</div>
-<p style="text-align: center;">{{ EmbedLiveSample('Zoomable_Math') }}</p>
-<p>還這邊這個有趣的筆記<math display="block"> <mrow><mo>{</mo> <mtable> <mtr> <mtd> <mrow> <msub> <mi>u</mi> <mi>t</mi> </msub> <mo>+</mo> <msub> <mrow> <mi>f</mi> <mo>(</mo> <mi>u</mi> <mo>)</mo> </mrow> <mi>x</mi> </msub> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>u</mi> <mo stretchy="false">(</mo> <mn>0</mn> <mo>,</mo> <mi>x</mi> <mo stretchy="false">)</mo> <mo>=</mo> <mrow> <mo>{</mo> <mtable> <mtr> <mtd> <mrow> <msup> <mi>u</mi> <mo>-</mo> </msup> </mrow> </mtd> <mtd> <mrow> <mtext>if </mtext> <mi>x</mi> <mo>&lt;</mo> <mn>0</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msup> <mi>u</mi> <mo>+</mo> </msup> </mrow> </mtd> <mtd> <mrow> <mtext>if </mtext> <mi>x</mi> <mo>&gt;</mo> <mn>0</mn> </mrow></mtd></mtr></mtable></mrow></mrow></mtd></mtr></mtable></mrow></math></p>
-<p>或是這個複雜的筆記 <math display="block"> <mrow> <msub> <mover> <mi>Ell</mi> <mo>^</mo> </mover> <mi>Y</mi> </msub> <mo stretchy="false">(</mo> <mi>Z</mi> <mo>;</mo> <mi>z</mi> <mo>,</mo> <mi>τ</mi> <mo stretchy="false">)</mo> <mo>:=</mo> <msub> <mo>∫</mo> <mi>Y</mi> </msub> <mo>(</mo> <munder> <mo>∏</mo> <mi>l</mi> </munder> <mfrac> <mrow> <mrow> <mo>(</mo> <mfrac> <msub> <mi>y</mi> <mi>l</mi> </msub> <mrow> <mn>2</mn> <mi>π</mi> <mi mathvariant="normal">i</mi> </mrow> </mfrac> <mo>)</mo> </mrow> <mrow> <mi>θ</mi> <mo>(</mo> <mfrac> <msub> <mi>y</mi> <mi>l</mi> </msub> <mrow> <mn>2</mn> <mi>π</mi> <mi mathvariant="normal">i</mi> </mrow> </mfrac> <mo>-</mo> <mi>z</mi> <mo>)</mo> </mrow> <msup> <mi>θ</mi> <mo>′</mo> </msup> <mo stretchy="false">(</mo> <mn>0</mn> <mo stretchy="false">)</mo> </mrow> <mrow> <mi>θ</mi> <mo stretchy="false">(</mo> <mo>-</mo> <mi>z</mi> <mo stretchy="false">)</mo> <mrow> <mi>θ</mi> <mo>(</mo> <mfrac> <msub> <mi>y</mi> <mi>l</mi> </msub> <mrow> <mn>2</mn> <mi>π</mi> <mi mathvariant="normal">i</mi> </mrow> </mfrac> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>)</mo> <mo>×</mo> <mo>(</mo> <munder> <mo>∏</mo> <mi>k</mi> </munder> <mfrac> <mrow> <mrow> <mi>θ</mi> <mo>(</mo> <mfrac> <msub> <mi>e</mi> <mi>k</mi> </msub> <mrow> <mn>2</mn> <mi>π</mi> <mi mathvariant="normal">i</mi> </mrow> </mfrac> <mo>-</mo> <mo stretchy="false">(</mo> <msub> <mi>α</mi> <mi>k</mi> </msub> <mo>+</mo> <mn>1</mn> <mo stretchy="false">)</mo> <mi>z</mi> <mo>)</mo> </mrow> <mi>θ</mi> <mo stretchy="false">(</mo> <mo>-</mo> <mi>z</mi> <mo stretchy="false">)</mo> </mrow> <mrow> <mrow> <mi>θ</mi> <mo>(</mo> <mfrac> <msub> <mi>e</mi> <mi>k</mi> </msub> <mrow> <mn>2</mn> <mi>π</mi> <mi mathvariant="normal">i</mi> </mrow> </mfrac> <mo>-</mo> <mi>z</mi> <mo>)</mo> </mrow> <mi>θ</mi> <mo stretchy="false">(</mo> <mo>-</mo> <mo stretchy="false">(</mo> <msub> <mi>α</mi> <mi>k</mi> </msub> <mo>+</mo> <mn>1</mn> <mo stretchy="false">)</mo> <mi>z</mi> <mo stretchy="false">)</mo> </mrow> </mfrac> <mo>)</mo> </mrow> </math> <math display="block"> <mrow> <mi>π</mi> <mo stretchy="false">(</mo> <mi>n</mi> <mo stretchy="false">)</mo> <mo>=</mo> <munderover> <mo>∑</mo> <mrow> <mi>m</mi> <mo>=</mo> <mn>2</mn> </mrow> <mi>n</mi> </munderover> <mrow> <mo>⌊</mo> <msup> <mrow> <mo>(</mo> <mrow> <munderover> <mo>∑</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>m</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <mrow> <mo minsize="1.5">⌊</mo> <mo>(</mo> <mi>m</mi> <mo>/</mo> <mi>k</mi> <mo>)</mo> <mo minsize="2">/</mo> <mo>⌈</mo> <mi>m</mi> <mo>/</mo> <mi>k</mi> <mo>⌉</mo> <mo minsize="1.5">⌋</mo> </mrow> </mrow> <mo>)</mo> </mrow> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <mo>⌋</mo> </mrow> </mrow> </math> <math display="block"> <mrow> <msub> <mrow> <mo>‖</mo> <mi>ϕ</mi> <mo>‖</mo> </mrow> <mrow> <msubsup> <mi>W</mi> <mi>s</mi> <mi>k</mi> </msubsup> <mo stretchy="false">(</mo> <msub> <mi>Ω</mi> <mi>g</mi> </msub> <mo stretchy="false">)</mo> </mrow> </msub> <mo>≝</mo> <msup> <mrow> <mo>(</mo> <munder> <mo>∑</mo> <mrow> <mo>|</mo> <mi>α</mi> <mo>|</mo> <mo>≦</mo> <mi>k</mi> </mrow> </munder> <msubsup> <mfenced close="‖" open="‖"> <mfrac> <mrow> <msup> <mo>∂</mo> <mi>α</mi> </msup> <mi>ϕ</mi> </mrow> <mrow> <mo>∂</mo> <msup> <mi>ξ</mi> <mi>α</mi> </msup> </mrow> </mfrac> </mfenced> <mrow> <msup> <mi>L</mi> <mi>s</mi> </msup> <mo stretchy="false">(</mo> <msub> <mi>Ω</mi> <mi>g</mi> </msub> <mo stretchy="false">)</mo> </mrow> <mi>s</mi> </msubsup> <mo>)</mo> </mrow> <mrow> <mn>1</mn> <mo>/</mo> <mi>s</mi> </mrow> </msup> </mrow> </math></p>
-<p>想要看更多的範例你可以點 <a href="./">MathML Project</a> 頁面的任一連結; 如果你有在編譯自己的版本,可以看一下這個資料夾
- <i>
- mozilla/layout/mathml/tests</i>
- 。</p>
-<p>所以你可以做些什麼呢? 你在 Mozilla 上使用時有沒有遇到任何 MathML 標準是沒正常運作的? 或者是一些煩人的東西你覺得需要改進? 或是你之前做的某些東西沒辦法正常運作了(像是 <em>迴歸</em> )? 如果有遇到這些狀況,快去 BugZilla 回報這些異常吧。BugZilla 世有辦法收錄這些東西的。而且,如果你遇到問題不回報,我們也沒辦法去修正啊?!</p>
-<p>如果你想要讓 Gecko 成為一個更精巧更完善的 MathML 繪製引擎,<a href="https://developer.mozilla.org/en-US/docs/get-involved.html">加入我們</a>。 你的回應可以以 網站上的 MathML 內容呈現、或者去 <a href="https://developer.mozilla.org/en-US/docs/quality/bug-writing-guidelines.html">BugZilla</a> 回報錯誤。或者,如果你能在在程式碼方面提供協助, 來 <a href="http://lxr.mozilla.org/seamonkey/source/layout/mathml/">檢查或改進目前的程式碼</a> , 或者是處理我們<a href="https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Project/update.html">待處理清單</a>的項目。</p>
-<div id="cke_pastebin" style="position: absolute; top: 1775.63px; width: 1px; height: 1px; overflow: hidden; left: -1000px;">
-  </div>
diff --git a/files/zh-tw/mozilla/performance/about_colon_memory/index.html b/files/zh-tw/mozilla/performance/about_colon_memory/index.html
deleted file mode 100644
index f9895899dd..0000000000
--- a/files/zh-tw/mozilla/performance/about_colon_memory/index.html
+++ /dev/null
@@ -1,188 +0,0 @@
----
-title: 'about:memory'
-slug: 'Mozilla/Performance/about:memory'
-translation_of: 'Mozilla/Performance/about:memory'
----
-<p>about:memory 在Firefox 裡是個特別分頁可讓你你看、存、讀、Firefox 的記憶體處理詳細測量出的差異。 此頁也讓你進行其他記憶體相關的操作例如觸發垃圾回收 (GC) 和循環回收 (CC)、轉存 GC &amp; CC 紀錄和轉存無效堆疊偵測 ( DMD) 報告。 此頁出現在所有版本且不須任何準備即可用它。</p>
-
-<h2 id="如何產生記憶體報告">如何產生記憶體報告</h2>
-
-<p>讓我們假設你想去量測 Firefox 的記憶體使用量。 或許你想自己去調查它、也或許某人要球你使用 about:memory 去產生"記憶體報告"以讓他們可以研究你碰到的問題。 跟著下列步驟走:</p>
-
-<ul>
- <li>在意的那刻 起(例如只要 Firefox's 記憶體用量偏高了) 在網址欄開新分頁且輸入 "about:memory" 並按下 "Enter".</li>
- <li>如果你正在用的交流管道可傳送檔案,例如 Bugzilla 或 email,按在 "Measure and save..." 按鈕。 將打開一個檔案交談窗讓你存記憶體報告成一個你指定的檔案。 (檔名將有 <code>.json.gz</code> 的副檔名) 你可以順便附加或上傳。接受者將能在他們的 Firefox 中看到 about:memory 中的內容。</li>
- <li>如你可用的交流管道只有文字可被傳送,例如在網站的意見條中,按在 "Measure..." 按鈕。 這將會造成 about:memory 中樹狀結構目錄文字產生。這個結構只有文字,所以你可以複製貼上部份或全部的文字到任何種類的文字欄(你不必進行擷圖)。這文字包含一些比 memory reports 檔較少的量測值,但通常已經足夠去診斷問題。不要重複地按下 "Measure..." ,因為這將造成 about:memory 記憶體用量提高,由於它釋放並產生大量的文件物件模型(DOM) 節點。</li>
-</ul>
-
-<p>注意在兩個例子中產生的資料含有私人敏感的細節例如你開在其他分頁的完整清單。如果你不想分享這些訊息,你可以選擇 "anonymize" 核取格,在按下 "Measure and save..." 或 "Measure..."之前。 這將造成私人敏感資料被剝掉,但也可能會造成其他人難以去研究記憶體用量。</p>
-
-<h2 id="從檔案讀取記憶體報告">從檔案讀取記憶體報告</h2>
-
-<p>最簡單的方法從檔案讀取記憶體報告就是用 "Load..." 按鈕。 你也可以用 "Load and diff..." 按鈕去獲得在兩個記憶體報告檔中的差異。</p>
-
-<p>單一記憶體報告檔也可以自動被讀取,當附加一個檔案查詢字串,例如:</p>
-
-<pre>about:memory?file=/home/username/reports.json.gz
-</pre>
-
-<p>這是從其他Firefox裝置系統讀取記憶體報告檔最有用的。</p>
-
-<p>記憶體報告被儲存到壓縮的格式 (gzipped JSON)。 這些檔案可以被直接讀或解壓縮後讀入。</p>
-
-<h2 id="解釋記憶體報告">解釋記憶體報告</h2>
-
-<p>幾乎在 about:memory 中你看到東西都有工具提示的解釋。停留在任何按鈕將看到它作用的描述。停留在任何文字量測值上將看到它意義的描述。</p>
-
-<h3 id="量測基本"><span class="mw-headline" id="Basics">量測基本</span></h3>
-
-<p>大多數量測使用位元組為他們的單位,但某些是百分比計算。</p>
-
-<p>多數量測值表示在樹狀目錄結構中。例如:</p>
-
-<pre> 585 (100.0%) -- preference-service
- └──585 (100.0%) -- referent
- ├──493 (84.27%) ── strong
- └───92 (15.73%) -- weak
- ├──92 (15.73%) ── alive
- └───0 (00.00%) ── dead
-</pre>
-
-<p>枝葉節點表示實際量測值:每個內部節點值是子節點的總和。</p>
-
-<p>樹狀目錄的使用允許量測值分成進一步的目錄、次目錄、次次目錄…….如果需要可到任意深度。一個目錄中所有的量測值不會重疊。</p>
-
-<p>樹狀可以用斜線 '/' 作為分隔符號被描寫。 例如, <code>preference/referent/weak/dead</code> 表示上列中到最後枝葉節點的路徑。</p>
-
-<p>次目錄按它可以被縮起或展開。如果你發現任何特別的樹狀目錄,這可以幫你馬上縮起主根下所有分枝,然後慢慢展開感興趣的。</p>
-
-<h3 id="報告區間_Sections"><span class="mw-headline" id="Sections">報告區間 Sections</span></h3>
-
-<p>記憶體報告依照每個預處理原則、每個區間一個程序被顯示,在每個程序的量測值中,還有更多小區間。</p>
-
-<h4 id="Explicit_Allocations">Explicit Allocations</h4>
-
-<p>這個區間包含一個單一樹狀目錄,叫做 "explicit",量測所有經由表層呼叫(explicit calls)去堆疊配置函數和非堆疊配置函數(例如 <code>mmap</code> and <code>VirtualAlloc</code>)的記憶體。</p>
-
-<p>這裡是瀏覽器區間的例子,分頁打開了 cnn.com、 techcrunch.com、 和 arstechnica.com。不同的次目錄被展開,其他的因展示緣故被縮起。</p>
-
-<pre>191.89 MB (100.0%) -- explicit
-├───63.15 MB (32.91%) -- window-objects
-│ ├──24.57 MB (12.80%) -- top(http://edition.cnn.com/, id=8)
-│ │ ├──20.18 MB (10.52%) -- active
-│ │ │ ├──10.57 MB (05.51%) -- window(http://edition.cnn.com/)
-│ │ │ │ ├───4.55 MB (02.37%) ++ js-compartment(http://edition.cnn.com/)
-│ │ │ │ ├───2.60 MB (01.36%) ++ layout
-│ │ │ │ ├───1.94 MB (01.01%) ── style-sheets
-│ │ │ │ └───1.48 MB (00.77%) -- (2 tiny)
-│ │ │ │ ├──1.43 MB (00.75%) ++ dom
-│ │ │ │ └──0.05 MB (00.02%) ── property-tables
-│ │ │ └───9.61 MB (05.01%) ++ (18 tiny)
-│ │ └───4.39 MB (02.29%) -- js-zone(0x7f69425b5800)
-│ ├──15.75 MB (08.21%) ++ top(http://techcrunch.com/, id=20)
-│ ├──12.85 MB (06.69%) ++ top(http://arstechnica.com/, id=14)
-│ ├───6.40 MB (03.33%) ++ top(chrome://browser/content/browser.xul, id=3)
-│ └───3.59 MB (01.87%) ++ (4 tiny)
-├───45.74 MB (23.84%) ++ js-non-window
-├───33.73 MB (17.58%) ── heap-unclassified
-├───22.51 MB (11.73%) ++ heap-overhead
-├────6.62 MB (03.45%) ++ images
-├────5.82 MB (03.03%) ++ workers/workers(chrome)
-├────5.36 MB (02.80%) ++ (16 tiny)
-├────4.07 MB (02.12%) ++ storage
-├────2.74 MB (01.43%) ++ startup-cache
-└────2.16 MB (01.12%) ++ xpconnect</pre>
-
-<p>某些專家才需要瞭解這裡所有的細節,但有很多東西值得解釋。</p>
-
-<ul>
- <li>這個 "explicit" 值在樹狀圖的根表示所有記憶體經由explicit call 去配置函數。</li>
- <li> "window-objects" 次目錄表示所有 JavaScript 視窗物件, 包括瀏覽器分頁和使用者界面視窗。 例如, "top(http://edition.cnn.com/, id=8)" 次目錄表示分頁打開到 cnn.com,且 "top(chrome://browser/content/browser.xul, id=3)" 表示主瀏覽器 UI 視窗。</li>
- <li>在每個視窗的有次目錄關於 JavaScript ("js-compartment(...)" 和 "js-zone(...)")、 layout、 style-sheets、 the DOM, and other things.</li>
- <li>很清楚的分頁一 cnn.com 用更多記憶體於分頁二 techcrunch.com ,二又用更多記憶體於分頁三 arstechnica.com 。</li>
- <li>次目錄有個名字叫 "(2 tiny)" 是人工節點預設允許不重要的次目錄縮起來。如果在測量前你將額外資訊 "verbose" 核取盒勾起, 所有目錄將完全展開並且沒有人工節點被插入。</li>
- <li> "js-non-window" 次目錄表示 JavaScript 記憶體用量不從視窗來而來自瀏覽器核心。</li>
- <li> "heap-unclassified" 值表示堆疊配置的記憶體( heap-allocated memory) 它是不被任何記憶體記錄列量測的。通常是 "explicit" 的 10--20% 。 如果它偏高,也表示該多加個記憶體紀錄列。無效堆疊偵測 (<a href="/en-US/docs/Mozilla/Performance/DMD" title="Performance/MemShrink/DMD">DMD)</a> 可被用來決定哪些記憶體報告列該被添加。</li>
- <li>有其他量測值有其他內容例如 images 和 workers,和瀏覽器次系統像啟動快取 Startup cache 和 XPConnect.</li>
-</ul>
-
-<p>某些附加元件 add-ons 的記憶體用量有識別性, 像下列例子所示:</p>
-
-<pre>├───40,214,384 B (04.17%) -- add-ons
-│ ├──21,184,320 B (02.20%) ++ {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}/js-non-window/zones/zone(0x100496800)/compartment([System Principal], jar:file:///Users/njn/Library/Application%20Support/Firefox/Profiles/puna0zr8.new/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/bootstrap.js (from: resource://gre/modules/addons/XPIProvider.jsm:4307))
-│ ├──11,583,312 B (01.20%) ++ jid1-xUfzOsOFlzSOXg@jetpack/js-non-window/zones/zone(0x100496800)
-│ ├───5,574,608 B (00.58%) -- {59c81df5-4b7a-477b-912d-4e0fdf64e5f2}
-│ │ ├──5,529,280 B (00.57%) -- window-objects
-│ │ │ ├──4,175,584 B (00.43%) ++ top(chrome://chatzilla/content/chatzilla.xul, id=4293)
-│ │ │ └──1,353,696 B (00.14%) ++ top(chrome://chatzilla/content/output-window.html, id=4298)
-│ │ └─────45,328 B (00.00%) ++ js-non-window/zones/zone(0x100496800)/compartment([System Principal], file:///Users/njn/Library/Application%20Support/Firefox/Profiles/puna0zr8.new/extensions/%7B59c81df5-4b7a-477b-912d-4e0fdf64e5f2%7D/components/chatzilla-service.js)
-│ └───1,872,144 B (00.19%) ++ treestyletab@piro.sakura.ne.jp/js-non-window/zones/zone(0x100496800)</pre>
-
-<p>更多細節值得解釋如下:</p>
-
-<ul>
- <li>某些附加元件以名子被識別,像 Tree Style Tab。 其他的僅用16進位識別字。 你可以去看 about:support 裡哪個添入列特別識別字屬於那類。例如, <code>59c81df5-4b7a-477b-912d-4e0fdf64e5f2</code> 屬於 Chatzilla 。</li>
- <li>所有 JavaScript 記憶體用量由附加元件來的被量測並顯示在次目錄中。</li>
- <li>附加元件使用不同視窗,例如 Chatzilla,這些視窗的記憶體用量將顯示在不同次目錄。</li>
- <li>自附加元件使用 XUL overlays覆蓋的,如 AdBlock Plus, 這些覆蓋的記憶體使用量將不顯示在這個次目錄中; 它將反而在 non-add-on 次目錄且將不像由附加元件所造成的那般是可識別的。</li>
-</ul>
-
-<h4 id="其他量測值">其他量測值</h4>
-
-<p>這個區間包含多目錄,包括許多在 "explicit" 目錄中橫跨的量測值。 例如, 在 "explicit"目錄所有的 DOM 和 layout 量測值是被打散成一個又一個視窗, 但在 "Other Measurements" 這些量測值是整合為由整個瀏覽器來的總和, 如下例所示:</p>
-
-<pre>26.77 MB (100.0%) -- window-objects
-├──14.59 MB (54.52%) -- layout
-│ ├───6.22 MB (23.24%) ── style-sets
-│ ├───4.00 MB (14.95%) ── pres-shell
-│ ├───1.79 MB (06.68%) ── frames
-│ ├───0.89 MB (03.33%) ── style-contexts
-│ ├───0.62 MB (02.33%) ── rule-nodes
-│ ├───0.56 MB (02.10%) ── pres-contexts
-│ ├───0.47 MB (01.75%) ── line-boxes
-│ └───0.04 MB (00.14%) ── text-runs
-├───6.53 MB (24.39%) ── style-sheets
-├───5.59 MB (20.89%) -- dom
-│ ├──3.39 MB (12.66%) ── element-nodes
-│ ├──1.56 MB (05.84%) ── text-nodes
-│ ├──0.54 MB (02.03%) ── other
-│ └──0.10 MB (00.36%) ++ (4 tiny)
-└───0.06 MB (00.21%) ── property-tables</pre>
-
-<p>在這區間的某些目錄量測那些在 "explicit" 目錄中不是橫跨目錄的量測值,例如在上上個例子中的這個 "preference-service" 。</p>
-
-<p>最後, 在這區間結尾是獨立的量測值, 如下例所示:</p>
-
-<pre> 0.00 MB ── canvas-2d-pixels
- 5.38 MB ── gfx-surface-xlib
- 0.00 MB ── gfx-textures
- 0.00 MB ── gfx-tiles-waste
- 0 ── ghost-windows
- 109.22 MB ── heap-allocated
- 164 ── heap-chunks
- 1.00 MB ── heap-chunksize
- 114.51 MB ── heap-committed
- 164.00 MB ── heap-mapped
- 4.84% ── heap-overhead-ratio
- 1 ── host-object-urls
- 0.00 MB ── imagelib-surface-cache
- 5.27 MB ── js-main-runtime-temporary-peak
- 0 ── page-faults-hard
- 203,349 ── page-faults-soft
- 274.99 MB ── resident
- 251.47 MB ── resident-unique
-1,103.64 MB ── vsize</pre>
-
-<p>某些量測值標示如下:</p>
-
-<ul>
- <li>"resident" 常駐記憶體. 實體記憶體用量。 如你想要單一量測值去總計記憶體用量, 這也許是最好的選擇。</li>
- <li>"vsize". 虛擬記憶體用量。 這通常高於任一個其他量測值 (特別在 Mac 上)。 唯有它是問題在 32 位元平台例如 Win32。 也有 "vsize-max-contiguous" (在所有平台上不量測的且在此例中不顯示), 它指出可用虛擬記憶體空間中最大的一塊。 如果這數值很低, 或許不久之後記憶體配置將失敗由於缺乏虛擬位址空間。</li>
- <li>許多繪圖顯示相關量測值 ("gfx-*")。 這些值在平台上是佔大量的。 顯示相關通常是高記憶體用量的來源, 所以這些量測職能幫助偵測這些案例。</li>
-</ul>
-
-<h4 id="系統_System">系統 System</h4>
-
-<p>這區間只顯示在Firefox OS。 它包含全裝置從操作系統所測得值。在其之中, 這些區間有助於精確瞭解裝置的記憶體如何被使用。</p>
-
-<p>......翻譯完雖然瞭解不少,卻僅知哪些資訊可以給改善者參考,要解決使用者記憶體的問題,還是建議各位設計師可以整合One Tab之類的軟體,限制記憶體使用例如最大800MB,如果超過了,依使用者習慣分為100個分頁中有20個維持開啟活動、剩下的逐步變成例如完整保存的網頁檔之類,平時留個分頁籤名字只是看看而已,點到了才載入,就不會讓人難忍受了,也不會吃太多記憶體就依照個人使用狀況自行分配就好,畢竟閒置的除了影像外,很多只是在播放廣告,一點感想。</p>
diff --git a/files/zh-tw/mozilla/performance/index.html b/files/zh-tw/mozilla/performance/index.html
deleted file mode 100644
index f8261ab133..0000000000
--- a/files/zh-tw/mozilla/performance/index.html
+++ /dev/null
@@ -1,130 +0,0 @@
----
-title: Performance
-slug: Mozilla/Performance
-tags:
- - NeedsTranslation
- - Performance
- - TopicStub
-translation_of: Mozilla/Performance
----
-<p>被連接到此的這篇文章將幫助你改進效能,不論你是開發 Mozilla 核心碼或附加元件。</p>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h3 id="Documentation">Documentation</h3>
-
- <dl>
- <dt><a href="/en/Performance/Reporting_a_Performance_Problem" title="en/Performance/Reporting_a_Performance_Problem">回報性能問題 Rorting a Performance Problem</a></dt>
- <dd>對使用者友善的指導以報告性能問題。不需要開發環境。</dd>
- <dt><a href="/en/Extensions/Performance_best_practices_in_extensions" title="en/Extensions/Performance best practices in extensions">性能最好的實踐在擴充元件中</a></dt>
- <dd>給擴充元件開發者性能"最好的實踐"指引。</dd>
- <dt><a href="/en/Performance/Measuring_add-on_startup_performance" title="en/Measuring Add-on Startup Performance">測量附加元件啟動效能</a></dt>
- <dd>給附加元件開發者指引如何設定測試環境。</dd>
- <dt><a href="/en/XUL_School/Appendix_A:_Add-on_Performance" title="en/XUL School/Appendix A: Add-on Performance">XUL School: 附加元件效能</a></dt>
- <dd>給附加元件開發者提示去幫他們避免損害應用效能。</dd>
- <dt><a href="/en/Performance/GPU_performance" title="en/GPU performance">GPU 效能</a></dt>
- <dd>當使用GPU時給研究和改進效能的可靠建議</dd>
- </dl>
-
- <p><span class="alllinks"><a class="internal" href="/Special:Tags?tag=Performance" title="Special:Tags?tag=Performance">查看所有頁面以 "Performance" 標籤的...</a></span></p>
-
- <h3 id="記憶體研究和漏洞偵測工具">記憶體研究和漏洞偵測工具</h3>
-
- <dl>
- <dt><a href="/en-US/docs/Mozilla/Performance/about:memory">about:memory</a></dt>
- <dd>about:memory 是最輕巧使用工具給量測記憶體用量使用在 Mozilla 程式碼,且是最好出發地。它也讓你進行其他記憶體相關的操作像觸發垃圾回收 (GC) 和循環回收 (CC)、轉存 GC &amp; CC 紀錄和轉存無效堆疊偵測 ( DMD) 報告。 about:memory 是建立在 Firefox's <a href="/en-US/docs/Mozilla/Performance/Memory_reporting">memory reporting</a> 構造上.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/DMD">DMD</a></dt>
- <dd>無效堆疊偵測 (DMD) 是個可識別在about:memory中的量測值問題點,而且可以作各式各樣的一般堆疊研究。</dd>
- <dt><a href="https://areweslimyet.com/">areweslimyet.com</a></dt>
- <dd>areweslimyet.com (又名 AWSY) 是記憶體用和回歸偵測系統。</dd>
- <dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance/BloatView">BloatView</a></dt>
- <dd>BloatView 在配置和引用計數時列印按類別統計資料,且依類別提供記憶體中洩漏的分解總數目。它常用為 Mozilla持續整合測試的一部分。</dd>
- <dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Refcount_tracing_and_balancing">引用計數追蹤與平衡 </a></dt>
- <dd>引用計數追蹤與平衡是個手段要追蹤由引用計數不正確的使用造成的洩漏。 他們遲緩又不那麼容易使用,且因此大多數適合專家級開發者使用。</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/GC_and_CC_logs">GC and CC logs</a></dt>
- <dd>觸發垃圾回收 (GC) 和循環回收 (CC)紀錄可被產生與分析以不同方式。特別是,他們能幫助瞭解為何特定勿建一直保持存在記憶體。</dd>
- <dt><a href="/en-US/docs/Mozilla/Testing/Valgrind">Valgrind</a></dt>
- <dd><a class="external text" href="http://valgrind.org/" rel="nofollow">Valgrind</a> 是個即時偵測種種記憶體相關的問題含洩漏的工具。 Valgrind 常作為Mozilla's持續整合測試的 <a class="external text" href="/en-US/docs/Valgrind_test_job" rel="nofollow">部份</a>  ,雖然Valgrind的遲緩讓應用範圍受限。</dd>
- <dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Testing/Firefox_and_Address_Sanitizer#LeakSanitizer">LeakSanitizer</a></dt>
- <dd><span class="external text">LeakSanitizer</span> (又叫 LSAN) 相似於 Valgrind。 但它跑得快一些因為它使用靜態來源碼架構。LSAN常作為Mozilla's持續整合測試的一部分,雖然多數測試執行時它也是 AddressSanitizer (又叫 ASAN) 測試工作的一部分。</dd>
- <dt><a href="http://developer.apple.com/documentation/Performance/Conceptual/ManagingMemory/Articles/FindingLeaks.html">Apple tools</a></dt>
- <dd>Apple provides <span class="external text">some tools</span> for Mac OS X that report similar problems to those reported by LSAN and Valgrind. The "leaks" tool is not recommended for use with SpiderMonkey or Firefox, because it gets confused by tagged pointers and thinks objects have leaked when they have not (see <a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=390944" rel="nofollow">bug 390944</a>).</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/Leak_Gauge">Leak Gauge</a></dt>
- <dd>Leak Gauge is a tool that can be used to detect certain kinds of leaks in Gecko, including those involving documents, window objects, and docshells.</dd>
- <dt><a href="http://dxr.mozilla.org/mozilla-central/source/memory/replace/logalloc/README">LogAlloc</a></dt>
- <dd>LogAlloc is a tool that dumps a log of memory allocations in Gecko. That log can then be replayed against Firefox's default memory allocator independently or through another replace-malloc library, allowing the testing of other allocators under the exact same workload.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/Memory_Profiler">Memory Profiler</a></dt>
- <dd>The memory profiler samples allocation events and provides different views to analyze the allocation characteristic.</dd>
- </dl>
-
- <p>See also the documentation on <a href="/en-US/docs/Mozilla/Performance/Leak-hunting_strategies_and_tips">Leak-hunting strategies and tips.</a></p>
- </td>
- <td>
- <h3 id="Profiling_and_performance_tools">Profiling and performance tools</h3>
-
- <dl>
- <dt><a href="https://developer.mozilla.org/en-US/docs/Tools/Performance" title="en/Performance/Profiling with the Built-in Profiler">Profiling with the Developer Tools Profiler</a></dt>
- <dd>The profiler built into the developer tools has a high-level waterfall, detailed call tree, allocations and GC profiling, and flame graphs. It is available on all platforms and release channels, and also supports remote profiling b2g and Fennec.</dd>
- </dl>
-
- <dl>
- <dt><a href="/en/Performance/Profiling_with_the_Built-in_Profiler" title="en/Performance/Profiling with the Built-in Profiler">Profiling with the Gecko Profiler Addon</a> {{ gecko_minversion_inline("16.0") }}</dt>
- <dd>The Gecko Profiler Addon is a good tool to start with.</dd>
- <dt><a href="/en/Performance/Profiling_with_Instruments" title="en/Performance/Profiling with Instruments">Profiling with Instruments</a></dt>
- <dd>How to use Apple's Instruments tool to profile Mozilla code.</dd>
- <dt><a href="/en/Performance/Profiling_with_Xperf" title="en/Performance/Profiling with Xperf">Profiling with Xperf</a></dt>
- <dd>How to use Microsoft's Xperf tool to profile Mozilla code.</dd>
- <dt><a href="/en-US/docs/Performance/Profiling_with_Concurrency_Visualizer" title="en/Performance/Profiling with Concurrency Visualizer">Profiling with Concurrency Visualizer</a></dt>
- <dd>How to use Visual Studio's Concurrency Visualizer tool to profile Mozilla code.</dd>
- <dt><a href="/en/Performance/Profiling_with_Zoom" title="en/Performance/Profiling with Zoom">Profiling with Zoom</a></dt>
- <dd>Zoom is a profiler for Linux done by the people who made Shark</dd>
- <dt><a href="/en/Performance/Measuring_performance_using_the_PerfMeasurement.jsm_code_module" title="en/Performance/Measuring performance using the PerfMeasurement.jsm code module">Measuring performance using the PerfMeasurement.jsm code module</a> {{ gecko_minversion_inline("2.0") }}</dt>
- <dd>Using <a href="/en/JavaScript_code_modules/PerfMeasurement.jsm" title="en/JavaScript code modules/PerfMeasurement.jsm"><code>PerfMeasurement.jsm</code></a> to measure performance data in your JavaScript code.</dd>
- <dt><a href="/en-US/docs/Performance/Adding_a_new_Telemetry_probe" title="https://developer.mozilla.org/en-US/docs/Performance/Adding_a_new_Telemetry_probe">Adding a new Telemetry probe</a></dt>
- <dd>Information on how to add a new measurement to the Telemetry performance-reporting system</dd>
- <dt><a href="/en/Performance/Profiling_JavaScript_with_Shark" title="en/Performance/Profiling JavaScript with Shark">Profiling JavaScript with Shark</a> {{ gecko_minversion_inline("1.9") }}</dt>
- <dd>How to use the Mac OS X Shark profiler to profile JavaScript code in Firefox 3.5 or later.</dd>
- <dt><a href="/en/Performance/Profiling_with_Shark" title="en/Performance/Profiling with Shark">Profiling with Shark</a></dt>
- <dd>How to use Apple's Shark tool to profile Mozilla code.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/Investigating_CSS_Performance">Investigating CSS Performance</a></dt>
- <dd>How to figure out why restyle is taking so long</dd>
- </dl>
-
- <h3 id="Power_profiling">Power profiling</h3>
-
- <dl>
- <dt><a href="/en-US/docs/Mozilla/Performance/Power_profiling_overview">Power profiling overview</a></dt>
- <dd>This page provides an overview of relevant information, including details about hardware, what can be measured, and recommended approaches. It should be the starting point for anybody new to power profiling.</dd>
- <dt><code><a href="/en-US/docs/Mozilla/Performance/tools_power_rapl">tools/power/rapl</a></code> (Mac, Linux)</dt>
- <dd><code>tools/power/rapl</code> is a command-line utility in the Mozilla codebase that uses the Intel RAPL interface to gather direct power estimates for the package, cores, GPU and memory.</dd>
- <dt><code><a href="/en-US/docs/Mozilla/Performance/powermetrics">powermetrics</a></code> (Mac-only)</dt>
- <dd><code>powermetrics</code> is a command-line utility that gathers and displays a wide range of global and per-process measurements, including CPU usage, GPU usage, and various wakeups frequencies.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/TimerFirings_logging">TimerFirings logging</a> (All platforms)</dt>
- <dd>TimerFirings logging is a built-in logging mechanism that prints data on every time fired.</dd>
- <dt><code><a href="/en-US/docs/Mozilla/Performance/dtrace">dtrace</a></code> (Mac-only)</dt>
- <dd><code>dtrace</code> is a powerful kernel instrumentation tool. One of its many features is the ability to instrument wakeups in a high-context fashion.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/Activity_Monitor_and_top">Activity Monitor, Battery Status Menu and <code>top</code></a> (Mac-only)</dt>
- <dd>The battery status menu, Activity Monitor and <code>top</code> are three related Mac tools that have major flaws but often consulted by users, and so are worth understanding.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/Intel_Power_Gadget">Intel Power Gadget</a> (Windows, Mac, Linux)</dt>
- <dd>Intel Power Gadget provides real-time graphs for package and processor RAPL estimates. It also provides an API through which those estimates can be obtained.</dd>
- <dt><code><a href="/en-US/docs/Mozilla/Performance/perf">perf</a></code> (Linux-only)</dt>
- <dd><code>perf</code> is a powerful command-line utility that can measure many different things, including energy estimates and high-context measurements of things such as wakeups.</dd>
- <dt><code><a href="/en-US/docs/Mozilla/Performance/turbostat">turbostat</a></code> (Linux-only)</dt>
- <dd><code>turbostat</code> is a command-line utility that gathers and displays various power-related measurements, with a focus on per-CPU measurements such as frequencies and C-states.</dd>
- <dt><code><a href="https://01.org/powertop">powertop</a></code> (Linux-only)</dt>
- <dd><code>powertop</code> is an interactive command-line utility that gathers and displays various power-related measurements.</dd>
- </dl>
-
- <h3 id="Related_Topics">Related Topics</h3>
-
- <dl>
- <dd><a href="/en/JavaScript" title="en/JavaScript">JavaScript</a>, <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a>, <a href="/En/Developer_Guide" title="en/Developing_Mozilla">Developing Mozilla</a>, <a href="/en/Extensions" title="en/Extensions">Extensions</a>, <a href="/en/Addons" title="en/Addons">Addons</a></dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p> </p>
diff --git a/files/zh-tw/mozilla/preferences/index.html b/files/zh-tw/mozilla/preferences/index.html
deleted file mode 100644
index 1169ecabf1..0000000000
--- a/files/zh-tw/mozilla/preferences/index.html
+++ /dev/null
@@ -1,48 +0,0 @@
----
-title: Preferences
-slug: Mozilla/Preferences
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Preferences
----
-<p>The preference system makes it possible to store data for Mozilla applications using a key/value pairing system. These articles provide information about how to use the preference system.</p>
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 class="Documentation" id="Documentation" name="Documentation">Documentation</h2>
- <dl>
- <dt><a href="/en-US/docs/Preferences/Preferences_system" title="Preferences/Preferences system">Preferences system</a></dt>
- <dd>An introduction to using the preference system in Mozilla.</dd>
- <dt><a href="/en-US/docs/XUL_School/Handling_Preferences" title="XUL School/Handling Preferences">XUL School: Handling preferences</a></dt>
- <dd>The XUL School tutorial chapter on preferences.</dd>
- <dt><a href="/en-US/docs/Preferences/Preference_reference" title="Preferences/Preference_reference">Mozilla preference reference</a></dt>
- <dd>A reference guide to all Mozilla preferences; currently a work in progress.</dd>
- <dt><a href="/en-US/docs/Preferences/A_brief_guide_to_Mozilla_preferences" title="Preferences/A brief guide to Mozilla preferences">A brief guide to Mozilla preferences</a></dt>
- <dd>An introductory guide to where preferences are stored and other useful information about the core preference system.</dd>
- <dt><a href="/en-US/docs/Preferences/Using_preferences_from_application_code" title="Preferences/Using preferences from application code">Using preferences from application code</a> {{gecko_minversion_inline("6.0")}}</dt>
- <dd>Firefox 6 introduced static functions for accessing preferences efficiently from within application code. This API is not available for add-ons, but if you're working on a Gecko application, this API is the preferred way to access preferences.</dd>
- <dt><a href="/en-US/docs/Preferences/Mozilla_networking_preferences" title="Preferences/Mozilla networking preferences">Mozilla networking preferences</a></dt>
- <dd>A guide to key networking-related preferences.</dd>
- <dt><a href="/en-US/docs/Preferences/Mozilla_preferences_for_uber-geeks" title="Preferences/Mozilla preferences for uber-geeks">Mozilla preferences for uber-geeks</a></dt>
- <dd>A guide to preferences that only truly elite geeks should play with.</dd>
- </dl>
- <p><span class="alllinks"><a href="/en-US/docs/tag/Preferences" title="tag/Preferences">View all pages tagged with "Preferences"...</a></span></p>
- </td>
- <td>
- <h2 class="Community" id="Examples" name="Examples">Examples</h2>
- <dl>
- <dt><a href="/en-US/docs/Code_snippets/Preferences" title="Code snippets/Preferences">Code snippets</a></dt>
- <dd>Preference-related code snippets.</dd>
- <dt><a href="/en-US/docs/Adding_preferences_to_an_extension" title="Adding preferences to an extension">Adding preferences to an extension</a></dt>
- <dd>How to add preferences to an existing extension.</dd>
- </dl>
- <h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">Related Topics</h2>
- <ul>
- <li><a href="/en-US/docs/XUL" title="XUL">XUL</a>, <a href="/en-US/docs/JavaScript" title="JavaScript">JavaScript</a>, <a href="/en-US/docs/XPCOM" title="XPCOM">XPCOM</a>, <a href="/en-US/docs/Extensions" title="Extensions">Extensions</a>, <a href="/en-US/docs/Developer_Guide" title="Developing_Mozilla">Developing Mozilla</a></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
diff --git a/files/zh-tw/mozilla/preferences/preferences_system/index.html b/files/zh-tw/mozilla/preferences/preferences_system/index.html
deleted file mode 100644
index 965cd97480..0000000000
--- a/files/zh-tw/mozilla/preferences/preferences_system/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
----
-title: Preferences system
-slug: Mozilla/Preferences/Preferences_system
-tags:
- - NeedsTranslation
- - Preferences system
- - TopicStub
- - XUL
-translation_of: Mozilla/Preferences/Preferences_system
----
-<p>This document describes Toolkit's preferences system. Using this system it is possible to create preferences windows that display and operate appropriately on various platforms (Windows, MacOS X and GNOME).</p>
-
-<p>The system is implemented through a few <a href="/en/XUL" title="en/XUL">XUL</a> elements and attributes. Reference information about them is available below:</p>
-<div class="moreinfo"> <p><strong><a href="/en-US/docs/Preferences_System">Preferences System</a> documentation:</strong></p> <ul> <li>Introduction: <a href="/en-US/docs/Preferences_System/Getting_Started">Getting Started</a> | <a href="/en-US/docs/Preferences_System/Examples">Examples</a> | <a href="/en-US/docs/Preferences_System/Troubleshooting">Troubleshooting</a></li> <li>Reference: <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/prefwindow" title="prefwindow">prefwindow</a></code> | <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/prefpane" title="prefpane">prefpane</a></code> | <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/preferences" title="preferences">preferences</a></code> | <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/preference" title="preference">preference</a></code> | <a href="/en-US/docs/Preferences_System/New_attributes">XUL attributes</a></li> </ul></div>
-<h3 id="Use">Use</h3>
-<p>Code for a typical preferences window may look like this:</p>
-<pre>&lt;prefwindow id="appPreferences"
- xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"&gt;
- &lt;prefpane id="pane1" label="&amp;pane1.title;"&gt;
- &lt;preferences&gt;
- &lt;preference id="pref1" name="pref.name" type="bool"/&gt;
- &lt;/preferences&gt;
-
- .. UI elements that refer to the preferences above, e.g.:
- &lt;checkbox id="check1" preference="pref1"
- label="&amp;check1.label;" accesskey="&amp;check1.accesskey;"/&gt;
- &lt;/prefpane&gt;
-
- &lt;prefpane id="pane2" label="&amp;pane2.title;" src="chrome://uri/to/pane.xul"/&gt;
-&lt;/prefwindow&gt;
-</pre>
-<p>Pane content can be specified inline or an external chrome URI supplied for pane content to be loaded in via a dynamic overlay. You should be careful to read the <a class="external" href="http://en.wikipedia.org/wiki/Human_interface_guidelines" title="http://en.wikipedia.org/wiki/Human_interface_guidelines">HIGs</a> for the platforms you are targeting and use the XUL preprocessor if necessary to set different window titles as appropriate. You should also be careful to specify the width of the window (in em) as appropriate using the preprocessor for each targeted platform, as well as the height (in em) for platforms where the window size does not change as the selected panel is changed (e.g. Windows).</p>
-<h3 id="Usage_in_XULRunner_applications" name="Usage_in_XULRunner_applications">Usage in XULRunner applications</h3>
-<p>When calling openDialog() to open a preferences dialog, "toolbar" should be included in the features string.  Not using "toolbar" will cause the preferences dialog to only display one preference pane.</p>
-<p>Example:</p>
-<pre class="eval">var features = "chrome,titlebar,toolbar,centerscreen,modal";
-window.openDialog(url, "Preferences", features);
-</pre>
-<h3 id="Bugzilla">Bugzilla</h3>
-<p>The component for bugs in the Preferences bindings (but not in Firefox/Thunderbird Options UI) is Toolkit:Preferences (<a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Toolkit">file a bug</a> <a class="link-https" href="https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&amp;product=Toolkit&amp;component=Preferences&amp;resolution=---&amp;chfieldto=Now">list open bugs</a>)</p>
diff --git a/files/zh-tw/mozilla/preferences/preferences_system/new_attributes/index.html b/files/zh-tw/mozilla/preferences/preferences_system/new_attributes/index.html
deleted file mode 100644
index f583b29b26..0000000000
--- a/files/zh-tw/mozilla/preferences/preferences_system/new_attributes/index.html
+++ /dev/null
@@ -1,55 +0,0 @@
----
-title: Preference XUL Attributes
-slug: Mozilla/Preferences/Preferences_system/New_attributes
-translation_of: Mozilla/Preferences/Preferences_system/New_attributes
----
-<p> </p>
-<p><code><a href="/en-US/docs/XUL/prefwindow">&lt;prefwindow&gt;</a></code> 裡的 Widgets 可能有下述屬性 (除此以外,尚有標準屬性).</p>
-<h3 id="preference" name="preference">preference</h3>
-<p>Specifies id of the linked <code><a href="/en-US/docs/XUL/preference">&lt;preference&gt;</a></code> element. preference 和 widget 兩者的 <code>value</code> 將保持同步.</p>
-<p>如下例,當 pane 被載入時, textbox 從名稱 extensions.example.mypref 的 preference 來自動初始化它的 <code>value</code> ;反過來說,當使用者改變 textbox 的 value 時,<code>&lt;preference&gt;</code>元素的 value 會同步更新,並將在適當的時候儲存至 preferences system.</p>
-<pre class="eval">&lt;preference id="my_pref" name="extensions.example.mypref" type="unichar"/&gt;
-&lt;textbox preference="my_pref"/&gt;
-</pre>
-<h3 id="preference-editable" name="preference-editable">preference-editable</h3>
-<p>By default, the <code><a href="/en-US/docs/XUL/preference">&lt;preference&gt;</a></code> element will automatically modify the value of a few standard widgets: checkbox, colorpicker, radiogroup, textbox, listitem, listbox, and menulist.</p>
-<p>If you wish it to update the value of an element with different local name, for example your own XBL widget, you need to set the <code>preference-editable="true"</code> attribute on it.</p>
-<p>For your widget to modify the <code>&lt;preference&gt;</code>'s value, you need to make sure a <code>change</code>, <code>command</code>, or <code>input</code> event is fired after the widget's value changes.</p>
-<p><span class="comment">bug # or any testcases ? Note: this does not currently work on the tree widget. It may not work on anything so far (the API says it is to be available in version 1.8).</span></p>
-<h3 id="onsyncfrompreference.2Fonsynctopreference" name="onsyncfrompreference.2Fonsynctopreference">onsyncfrompreference/onsynctopreference</h3>
-<p>Often you will have UI whose construction does not map easily to a given preference type. 例如,你可能有一個 checkbox,當一個整數值是 3 時它被打勾,是 2 時不被打勾。為了初始化這個 UI 元素,你不能依賴預設的 initialization routine,因為這兩個數值對 checkbox 元素來說是無意義的. 你需要寫轉換函數來轉換 preference value 成 UI 元素可用的初始值,並且也轉換 UI 元素的 value 成某些格式來儲存至 preferences file. 這就是 onsyncfrompreference/onsynctopreference 的作用.</p>
-<p><code>onsyncfrompreference</code> 被呼叫,當一個元素從 preferences 被初始化。 明確地說, 當一個 preference 元素的 value 被載入, 所有使用那個 preference 的元素將使他們的 <span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: normal;">onsyncfrompreference </span><span style="line-height: 1.5;">handler 被呼叫.</span></p>
-<div class="warning">
- Be careful when writing <span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: normal;">onsyncfrompreference </span><span style="line-height: 1.5;">handlers.  </span><span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: normal;">&lt;preference&gt; </span><span style="line-height: 1.5;">elements defined after the preference<em> <strong>element</strong></em>  being dealt with will not yet have their </span><span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: normal;">value</span><span style="line-height: 1.5;"> set, so referring to them from the handler will lead to a null result. Reorder the </span><span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: normal;">&lt;preference&gt; </span><span style="line-height: 1.5;">elements or directly fetch the preference value via </span><span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: normal;">Services.prefs</span></div>
-<p><span style="line-height: 1.5;">If you supply an implementation of this event, your implementation will be invoked during initialization and you can return the value with which to initialize the UI element with, or </span><code style="font-size: 14px;">undefined</code><span style="line-height: 1.5;"> to tell the preferences system to initialize the UI element with the default value (i.e. to attempt to initialize with the preference value). In the above example, you might write the checkbox like this:</span></p>
-<pre>&lt;checkbox preference="foo.bar" onsyncfrompreference="return onsyncfrompreference();"/&gt;
-
-.. script:
-function onsyncfrompreference()
-{
- var preference = document.getElementById("foo.bar");
- // .value === undefined means the preference is set to the default value
- var actualValue = preference.value !== undefined ?
- preference.value : preference.defaultValue;
- // actualValue may be |null| here if the pref didn't have the default value.
- return preference.value == 3;
-
- // If foo.bar was boolean and we wanted to use its value to initialize
- // the checkbox, we could still implement this method if we wanted to
- // perform any other initialization actions at this time.
-}
-</pre>
-<p><code>onsynctopreference</code> is called when preferences are being written - the preferences system asks each element to translate its current state into a value suitable for writing to the specified preference. You can return a special value or <code>undefined</code> to tell the preferences system to use its standard means for obtaining the value. In the above example:</p>
-<pre>&lt;checkbox preference="foo.bar" onsynctopreference="return onsynctopreference();"/&gt;
-.. script:
-function onsynctopreference()
-{
- var checkbox = document.getElementById("checkbox");
- return checkbox.checked ? 3 : 2;
-}
-
-// If foo.bar was boolean and we wanted to use its value to write to
-// preferences, we could still implement this method if we wanted to
-// perform any other initialization actions at this time.
-</pre>
-<div class="moreinfo"> <p><strong><a href="/en-US/docs/Preferences_System">Preferences System</a> documentation:</strong></p> <ul> <li>Introduction: <a href="/en-US/docs/Preferences_System/Getting_Started">Getting Started</a> | <a href="/en-US/docs/Preferences_System/Examples">Examples</a> | <a href="/en-US/docs/Preferences_System/Troubleshooting">Troubleshooting</a></li> <li>Reference: <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/prefwindow" title="prefwindow">prefwindow</a></code> | <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/prefpane" title="prefpane">prefpane</a></code> | <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/preferences" title="preferences">preferences</a></code> | <code><a href="/zh-TW/docs/Mozilla/Tech/XUL/preference" title="preference">preference</a></code> | <a href="/en-US/docs/Preferences_System/New_attributes">XUL attributes</a></li> </ul></div>
diff --git a/files/zh-tw/mozilla/projects/index.html b/files/zh-tw/mozilla/projects/index.html
deleted file mode 100644
index 7e832a9616..0000000000
--- a/files/zh-tw/mozilla/projects/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Projects
-slug: Mozilla/Projects
-tags:
- - Landing
- - Mozilla
- - NeedsContent
- - NeedsTranslation
- - Projects
- - TopicStub
-translation_of: Mozilla/Projects
----
-<p>Below you'll find links to documentation about various Mozilla projects; these are often parts of Firefox or other products, but may also be used in other projects as well.</p>
-<p>{{ LandingPageListSubpages() }}</p>
diff --git a/files/zh-tw/mozilla/projects/nss/getting_started_with_nss/index.html b/files/zh-tw/mozilla/projects/nss/getting_started_with_nss/index.html
deleted file mode 100644
index 83eb55baba..0000000000
--- a/files/zh-tw/mozilla/projects/nss/getting_started_with_nss/index.html
+++ /dev/null
@@ -1,58 +0,0 @@
----
-title: Getting Started With NSS
-slug: Mozilla/Projects/NSS/Getting_started_with_NSS
-translation_of: Mozilla/Projects/NSS/Getting_started_with_NSS
----
-<h2 id="如何參與NSS">如何參與NSS</h2>
-
-<p>網絡安全服務(NSS)是Mozilla軟件使用的加密算法和安全網絡協議的基礎庫。<br>
- <br>
- 您想參與並幫助我們改善Mozilla Firefox和其他使用NSS的應用程序的核心安全性嗎?我們期待著您的貢獻!<br>
- <br>
- 我們有大量任務等待您關注,我們很樂意協助您確定與您的興趣或技能相匹配的領域。您可以在<a href="/en-US/docs/Mozilla/QA/Getting_Started_with_IRC" title="Mozilla IRC">Mozilla IRC</a>的<a href="irc://irc.mozilla.org/#nss" title="irc://irc.mozilla.org/nss">#nss</a>頻道中找到我們,也可以在<a href="https://lists.mozilla.org/listinfo/dev-tech-crypto/" title="https://lists.mozilla.org/listinfo/dev-tech-crypto/">mozilla.dev.tech.crypto</a>新聞組中提問。</p>
-
-<p>NSS庫及其支持的命令行工具使用C編程語言編寫。它的構建系統和自動化測試基於makefile和bash腳本。</p>
-
-<p>隨著時間的流逝,已經產生了許多描述NSS各個方面的文檔。您可以從以下內容開始:</p>
-
-<ul>
- <li>當前的<a href="/en-US/docs/NSS" title="/ zh-CN / docs / NSS">主要NSS文檔頁面</a>,從中可以鏈接到其他文檔。</li>
- <li>一個<a href="/en-US/docs/Overview_of_NSS" title="/ zh-CN / docs / Overview_of_NSS">總體概述</a>使用NSS和它提供的功能的應用程序。</li>
- <li>高水平<a href="/en-US/docs/An_overview_of_NSS_Internals" title="/ zh-CN / docs / An_overview_of_NSS_Internals">介紹NSS的內部</a>。</li>
- <li>了解有關獲取<a href="/en-US/docs/NSS_Sources_Building_Testing" title="/ en-US / docs / NSS_Sources_Building_Testing">NSS來源,構建和測試的信息。</a></li>
- <li>歸檔的mozilla.org網站上的<a href="https://www-archive.mozilla.org/projects/security/pki/nss/">舊文檔</a>。</li>
-</ul>
-
-<p>(不幸的是,NSS項目目前沒有技術撰稿人,因此我們的文檔沒有我們想要的那樣井井有條。您可以通過更好的組織方式來做出貢獻。)</p>
-
-<h2 id="NSS示例代碼">NSS示例代碼</h2>
-
-<p>由NSS開發人員維護的命令行工具是開始學習如何編寫NSS應用程序的好地方。您可以在子目錄mozilla / security / nss / cmd中找到它們</p>
-
-<p>或看看一些基本的<a href="/docs/Mozilla/Projects/NSS/NSS_Sample_Code">NSS示例代碼</a>。</p>
-
-<p>目前正在開發和審查一組新的樣本,請參閱<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=490238">創建新的NSS樣本</a>。</p>
-
-<p>歡迎您通過以下方式下載示例:hg clone https://hg.mozilla.org/projects/nss; cd nss; hg更新SAMPLES_BRANCH</p>
-
-<h2 id="如何貢獻">如何貢獻</h2>
-
-<p>...(此部分仍在建設中,但是有很多貢獻的機會)</p>
-
-<p>如果您沒有,請先在<a href="https://bugzilla.mozilla.org/">bugzilla.mozilla.org上</a>打開一個bugzilla帳戶。</p>
-
-<p>NSS ::庫組件可解決您要處理的問題。我們維護了一個<a href="https://bugzilla.mozilla.org/buglist.cgi?keywords=good-first-bug%2C%20&amp;keywords_type=allwords&amp;classification=Components&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;component=Libraries&amp;product=NSS">標記為“ good-first-bug”</a>的<a href="https://bugzilla.mozilla.org/buglist.cgi?keywords=good-first-bug%2C%20&amp;keywords_type=allwords&amp;classification=Components&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;component=Libraries&amp;product=NSS">NSS錯誤</a>列表<a href="https://bugzilla.mozilla.org/buglist.cgi?keywords=good-first-bug%2C%20&amp;keywords_type=allwords&amp;classification=Components&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;component=Libraries&amp;product=NSS">,您可以查看這些錯誤</a>。</p>
-
-<h3 id="創建補丁">創建補丁</h3>
-
-<p>請參閱有關<a href="/en-US/docs/NSS_Sources_Building_Testing" title="/ en-US / docs / NSS_Sources_Building_Testing">NSS來源,構建和測試的部分,</a>以開始製作補丁。當您對此感到滿意時,就需要進行代碼審查。</p>
-
-<h3 id="代碼審查">代碼審查</h3>
-
-<p><a href="https://phabricator.services.mozilla.com">http://phabricator.services.mozilla.com/</a>是我們的代碼審查工具,它使用您的Bugzilla帳戶。使用我們的<a href="https://moz-conduit.readthedocs.io/en/latest/phabricator-user.html">Phabricator用戶說明上傳補丁進行審核</a>。</p>
-
-<p><a href="https://github.com/mozilla/nss-tools/blob/master/nss-code-review-checklist.yaml">Github上的清單形式列出了</a>一些在代碼審查期間將要評估的項目<a href="https://github.com/mozilla/nss-tools/blob/master/nss-code-review-checklist.yaml">。</a></p>
-
-<p>通過審查後,您的補丁程序可以由NSS小組的成員登陸。您可以在<a href="/en-US/docs/Mozilla/QA/Getting_Started_with_IRC" title="Mozilla IRC">Mozilla IRC</a>的<a href="irc://irc.mozilla.org/#nss" title="irc://irc.mozilla.org/nss">#nss</a>頻道中找到我們。</p>
-
-<p>請注意,我們不會發布未經審查和測試的代碼。代碼僅在具有測試的情況下才有效,而測試僅在它們屬於自動化的一部分時才有效。</p>
diff --git a/files/zh-tw/mozilla/projects/nss/index.html b/files/zh-tw/mozilla/projects/nss/index.html
deleted file mode 100644
index 186df02c73..0000000000
--- a/files/zh-tw/mozilla/projects/nss/index.html
+++ /dev/null
@@ -1,180 +0,0 @@
----
-title: Network Security Services
-slug: Mozilla/Projects/NSS
-tags:
- - JSS
- - NSS
- - NeedsMigration
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Projects/NSS
----
-<p><strong>Network Security Services</strong> (<strong>NSS</strong>) is a set of libraries designed to support cross-platform development of security-enabled client and server applications. Applications built with NSS can support SSL v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security standards.</p>
-
-<p>For detailed information on standards supported, see <a href="/en-US/docs/Overview_of_NSS" title="Overview_of_NSS">Overview of NSS</a>. For a list of frequently asked questions, see the <a href="/en-US/docs/NSS_FAQ" title="NSS_FAQ">FAQ</a>.</p>
-
-<p>NSS is available under the Mozilla Public License. For information on downloading NSS releases as tar files, see <a href="https://developer.mozilla.org/en-US/docs/NSS_Sources_Building_Testing">Download PKI Source</a>.</p>
-
-<p>If you're a developer and would like to contribute to NSS, you might want to read the documents <a href="/en-US/docs/An_overview_of_NSS_Internals" title="/en-US/docs/An_overview_of_NSS_Internals">highlevel overview of internal details of NSS</a> and <a href="/en-US/docs/Getting_Started_With_NSS" title="/en-US/docs/Getting_Started_With_NSS">getting started with NSS</a>.</p>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 class="Documentation" id="Documentation" name="Documentation">Documentation</h2>
-
- <h3 id="Background_Information">Background Information</h3>
-
- <dl>
- <dt><a href="/en-US/docs/Overview_of_NSS">Overview of NSS</a></dt>
- <dd>Provides a brief summary of NSS and its capabilities.</dd>
- <dt><a href="/en-US/docs/NSS_FAQ">NSS FAQ</a></dt>
- <dd>Answers basic questions about NSS.</dd>
- <dt><a href="/en-US/docs/Introduction_to_Public-Key_Cryptography">Introduction to Public-Key Cryptography</a></dt>
- <dd>Explains the basic concepts of public-key cryptography that underlie NSS.</dd>
- <dt><a href="/en-US/docs/Introduction_to_SSL">Introduction to SSL</a></dt>
- <dd>Introduces the SSL protocol, including information about cryptographic ciphers supported by SSL and the steps involved in the SSL handshake.</dd>
- </dl>
-
- <h3 id="Getting_Started">Getting Started</h3>
-
- <dl>
- <dt><a href="/en-US/docs/NSS/NSS_Releases" title="NSS_releases">NSS Releases</a></dt>
- <dd>This page contains information about the current and past releases of NSS.</dd>
- <dt><a href="/en-US/docs/NSS_Sources_Building_Testing">Get the source code and Build it</a></dt>
- <dd>Instructions on how to build NSS on the different supported platforms.</dd>
- <dt><a href="/en-US/docs/Mozilla/Developer_guide/Source_Code/Mercurial">Get Mozilla Source Code Using Mercurial</a></dt>
- <dd>Information about with working with Mercurial.</dd>
- <dt><a href="/en-US/docs/Mozilla/Developer_guide/Source_Code/CVS">Get Mozilla Source Code Using CVS (deprecated)</a></dt>
- <dd>Old deprecated CVS documentation.</dd>
- </dl>
-
- <h3 id="NSS_APIs">NSS APIs</h3>
-
- <dl>
- <dt><a href="/en-US/docs/Introduction_to_Network_Security_Services">Introduction to Network Security Services</a></dt>
- <dd>Provides an overview of the NSS libraries and what you need to know to use them.</dd>
- <dt><a href="NSS/SSL_functions">NSS SSL Public Functions</a></dt>
- <dd>Summarizes the SSL APIs exported by the NSS shared libraries.</dd>
- <dt><a href="/en-US/docs/NSS_reference">NSS SSL Reference</a></dt>
- <dd>API used to invoke SSL operations.</dd>
- <dt><a href="NSS/NSS_API_GUIDELINES">NSS API Guidelines</a></dt>
- <dd>Explains how the libraries and code are organized, and guidelines for developing code (naming conventions, error handling, thread safety, etc.)</dd>
- <dt><a href="NSS/nss_tech_notes">NSS Technical Notes</a></dt>
- <dd>Links to NSS technical notes, which provide latest information about new NSS features and supplementary documentation for advanced topics in programming with NSS.</dd>
- </dl>
-
- <h3 id="Tools_testing_and_other_technical_details">Tools, testing, and other technical details</h3>
-
- <dl>
- <dt><a href="/en-US/docs/Mozilla/Projects/NSS/Building">Build Instructions for NSS</a></dt>
- <dd>Describe how to check out and build NSS releases.</dd>
- </dl>
-
- <dl>
- <dt><a href="/en-US/docs/Mozilla/Projects/NSS/NSS_Developer_Tutorial">NSS Developer Tutorial</a></dt>
- <dd>How to make changes in NSS. Coding style, maintaining ABI compatibility.</dd>
- </dl>
-
- <dl>
- <dt><a href="NSS/Tools">NSS Tools</a></dt>
- <dd>Tools for developing, debugging, and managing applications that use NSS.</dd>
- <dt><a href="NSS/NSS_Sample_Code">Sample Code</a></dt>
- <dd>Demonstrates how NSS can be used for cryptographic operations, certificate handling, SSL, etc.</dd>
- <dt><a href="NSS/NSS_Third-Party_Code">Third-Party Code</a></dt>
- <dd>A list of third-party code included in the NSS library.</dd>
- <dt><a href="https://www-archive.mozilla.org/projects/security/pki/nss/testnss_32.html">NSS 3.2 Test Suite</a></dt>
- <dd><strong>Archived version.</strong> Describes how to run the standard NSS tests.</dd>
- <dt><a href="https://www-archive.mozilla.org/projects/security/pki/nss/performance_reports.html">NSS Performance Reports</a></dt>
- <dd><strong>Archived version.</strong> Links to performance reports for NSS 3.2 and later releases.</dd>
- <dt><a href="https://www-archive.mozilla.org/projects/security/pki/nss/nss-3.11/nss-3.11-algorithms.html">Encryption Technologies Available in NSS 3.11</a></dt>
- <dd><strong>Archived version.</strong> Lists the cryptographic algorithms used by NSS 3.11.</dd>
- <dt><a href="https://www-archive.mozilla.org/projects/security/pki/nss/loadable_certs.html">NSS 3.1 Loadable Root Certificates</a></dt>
- <dd><strong>Archived version.</strong> Describes the scheme for loading root CA certificates.</dd>
- <dt><a href="https://www-archive.mozilla.org/projects/security/pki/nss/db_formats.html">cert7.db</a></dt>
- <dd><strong>Archived version.</strong> General format of the cert7.db database.</dd>
- </dl>
-
- <h3 id="PKCS_11_information">PKCS #11 information</h3>
-
- <ul>
- <li><a href="/en-US/docs/PKCS11" title="PKCS11">Documentation on PKCS #11 modules</a></li>
- <li><a href="/en-US/docs/PKCS11_Implement">Implementing PKCS #11 for NSS</a></li>
- <li><a href="/en-US/docs/PKCS11_Module_Specs" title="PKCS11_Module_Specs">The strings NSS uses to load PKCS #11 modules</a></li>
- <li><a href="/en-US/docs/PKCS11_FAQ">PKCS #11 FAQ</a></li>
- <li><a href="/en-US/docs/PKCS11_Jar_Install">Using the JAR Installation Manager to Install a PKCS #11 Cryptographic Module</a></li>
- <li><a href="https://www-archive.mozilla.org/projects/security/pki/pkcs11/">PKCS #11 Conformance Testing - Archived version</a></li>
- </ul>
-
- <dl>
- </dl>
-
- <h3 id="CA_certificates_pre-loaded_into_NSS">CA certificates pre-loaded into NSS</h3>
-
- <ul>
- <li><a href="https://www.mozilla.org/projects/security/certs/policy/">Mozilla CA certificate policy</a></li>
- <li><a href="https://wiki.mozilla.org/CA/Included_Certificates">List of pre-loaded CA certificates</a>
- <ul>
- <li>Consumers of this list must consider the trust bit setting for each included root certificate. <a href="https://www.imperialviolet.org/2012/01/30/mozillaroots.html">More Information</a>, <a href="https://github.com/agl/extract-nss-root-certs">Extracting roots and their trust bits</a></li>
- </ul>
- </li>
- </ul>
-
- <dl>
- </dl>
-
- <h3 id="NSS_is_built_on_top_of_Netscape_Portable_Runtime_NSPR">NSS is built on top of Netscape Portable Runtime (NSPR)</h3>
-
- <dl>
- <dt><a href="NSPR">Netscape Portable Runtime</a></dt>
- <dd>NSPR project page.</dd>
- <dt><a href="/en-US/docs/Mozilla/Projects/NSPR/Reference">NSPR Reference</a></dt>
- <dd>NSPR API documentation.</dd>
- </dl>
-
- <h3 id="Additional_Information">Additional Information</h3>
-
- <ul>
- <li><a href="/en-US/docs/JavaScript_crypto" title="JavaScript_crypto">Using the window.crypto object from JavaScript</a></li>
- <li><a href="/en-US/docs/HTTP_Delegation" title="HTTP_Delegation">Delegation of HTTP download for OCSP</a></li>
- <li><a href="/en-US/docs/TLS_Cipher_Suite_Discovery" title="TLS_Cipher_Suite_Discovery">TLS Cipher Suite Discovery</a></li>
- <li><a href="/en-US/docs/NSS_Certificate_Download_Specification" title="NSS_Certificate_Download_Specification">NSS Certificate Download Specification</a></li>
- <li><a href="/en-US/docs/NSS/FIPS_Mode_-_an_explanation" title="FIPS Mode - an explanation">FIPS Mode - an explanation</a></li>
- <li><a href="/en-US/docs/NSS_Key_Log_Format" title="NSS Key Log Format">Format of key log files</a></li>
- <li>View <a href="/en-US/docs/tag/NSS" title="/en-US/docs/tag/NSS">all NSS-related articles on MDN</a></li>
- </ul>
-
- <h3 id="Planning">Planning</h3>
-
- <p>Information on NSS planning can be found at <a class="external" href="https://wiki.mozilla.org/NSS">wiki.mozilla.org</a>, including:</p>
-
- <ul>
- <li><a class="external" href="https://wiki.mozilla.org/FIPS_Validation">FIPS Validation</a></li>
- <li><a class="external" href="https://wiki.mozilla.org/NSS:Roadmap">NSS Roadmap page</a></li>
- <li><a href="https://fedoraproject.org/wiki/User:Mitr/NSS:DeveloperFriendliness" title="https://fedoraproject.org/wiki/User:Mitr/NSS:DeveloperFriendliness">NSS Improvement Project</a></li>
- </ul>
- </td>
- <td>
- <h2 class="Community" id="Community" name="Community">Community</h2>
-
- <ul>
- <li>View Mozilla Security forums...</li>
- </ul>
-
- <p>{{ DiscussionList("dev-security", "mozilla.dev.security") }}</p>
-
- <ul>
- <li>View Mozilla Cryptography forums...</li>
- </ul>
-
- <p>{{ DiscussionList("dev-tech-crypto", "mozilla.dev.tech.crypto") }}</p>
-
- <h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">Related Topics</h2>
-
- <ul>
- <li><a href="/en-US/docs/Security" title="Security">Security</a></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
diff --git a/files/zh-tw/mozilla/projects/rhino/index.html b/files/zh-tw/mozilla/projects/rhino/index.html
deleted file mode 100644
index 9167cbfaac..0000000000
--- a/files/zh-tw/mozilla/projects/rhino/index.html
+++ /dev/null
@@ -1,27 +0,0 @@
----
-title: Rhino
-slug: Mozilla/Projects/Rhino
-tags:
- - JavaScript
- - Mozilla
- - NeedsTranslation
- - NeedsUpdate
- - Rhino
- - TopicStub
-translation_of: Mozilla/Projects/Rhino
----
-<p><img alt="Image:rhino.jpg" class="internal" src="/@api/deki/files/832/=Rhino.jpg"></p>
-
-<p><span class="seoSummary"><strong>Rhino</strong> is an open-source implementation of <a href="/en/JavaScript" title="en/JavaScript">JavaScript</a> written entirely in Java. It is typically embedded into Java applications to provide scripting to end users. It is embedded in J2SE 6 as the default Java scripting engine.</span></p>
-
-<h4 id="Rhino_downloads" name="Rhino_downloads">Rhino downloads</h4>
-
-<p>How to <a class="internal" href="/en/RhinoDownload" title="en/RhinoDownload">get source and binaries</a>. </p>
-
-<h4 id="Rhino_documentation" name="Rhino_documentation">Rhino documentation</h4>
-
-<p><a href="/en/Rhino_documentation" title="en/Rhino_documentation">Information on Rhino</a> for script writers and embedders.</p>
-
-<h4 id="Rhino_help" name="Rhino_help">Rhino help</h4>
-
-<p><a href="/en/Rhino/Community" title="en/Rhino/Community">Some resources</a> if you get stuck.</p>
diff --git a/files/zh-tw/mozilla/projects/rhino/license/index.html b/files/zh-tw/mozilla/projects/rhino/license/index.html
deleted file mode 100644
index 951430039e..0000000000
--- a/files/zh-tw/mozilla/projects/rhino/license/index.html
+++ /dev/null
@@ -1,47 +0,0 @@
----
-title: Rhino license
-slug: Mozilla/Projects/Rhino/License
-translation_of: Mozilla/Projects/Rhino/License
----
-<p><font><font>Rhino可在開源許可下使用。</font></font></p>
-
-<h2 id="MPL.2FGPL_License" name="MPL.2FGPL_License"><font><font>MPL / GPL許可</font></font></h2>
-
-<p><font><font>Rhino的大部分源代碼都是在</font></font><a class="external" href="http://www.mozilla.org/MPL/"><font><font>MPL 1.1 / GPL 2.0</font></font></a><font><font>許可下提供的。</font></font></p>
-
-<h2 id="License_for_portions_of_the_Rhino_debugger" name="License_for_portions_of_the_Rhino_debugger"><font><font>部分Rhino調試器的許可證</font></font></h2>
-
-<p><font><font>此外,一些文件(目前是toolsrc / org / mozilla / javascript / tools / debugger / treetable /的內容)在以下許可下可用:</font></font></p>
-
-<pre><font><font> *版權所有1997,1998 Sun Microsystems,Inc。保留所有權利。</font></font><font><font>
- *</font></font><font><font>
- *重新分發和使用源和二進制形式,有或沒有</font></font><font><font>
- *修改,如果滿足以下條件,則允許</font></font><font><font>
- *符合:</font></font><font><font>
- *</font></font><font><font>
- * - 源代碼的重新分發必須保留上述版權</font></font><font><font>
- *通知,此條件清單和以下免責聲明。</font></font><font><font>
- *</font></font><font><font>
- * - 二進制形式的再分發必須複製上述版權</font></font><font><font>
- *通知,此條件清單和以下免責聲明</font></font><font><font>
- *隨分發提供的文件和/或其他材料。</font></font><font><font>
- *</font></font><font><font>
- * - Sun Microsystems的名稱和名稱</font></font><font><font>
- *貢獻者可用於支持或推廣衍生產品</font></font><font><font>
- *未經事先書面許可,不得使用本軟件。</font></font><font><font>
- *</font></font><font><font>
- *本軟件由版權所有者和貢獻者“提供</font></font><font><font>
- *“是”以及任何明示或暗示的擔保,包括但不限於,</font></font><font><font>
- *對適銷性和特定適用性的暗示保證</font></font><font><font>
- *目的不承擔任何責任。</font><font>在任何情況下都不應該是版權所有者或</font></font><font><font>
- *貢獻者對任何直接,間接,偶然,特殊的,</font></font><font><font>
- *示範性或後續性損害(包括但不限於,</font></font><font><font>
- *購買替代商品或服務; </font><font>丟失使用,數據或</font></font><font><font>
- *利潤; </font><font>或商業中斷)然而,導致和任何理論</font></font><font><font>
- *責任,無論是合同,嚴格責任還是侵權(包括</font></font><font><font>
- *疏忽或以其他方式)以任何方式使用此產品</font></font><font><font>
- *軟件,即使被告知此類損害的可能性。</font></font>
-</pre>
-
-<hr>
-<p><a href="/User:Norrisboyd" title="用戶:Norrisboyd"><font><font>Norrisboyd</font></font></a><font><font> 2008年4月14日06:16(PDT)</font></font></p>
diff --git a/files/zh-tw/mozilla/qa/bug_writing_guidelines/index.html b/files/zh-tw/mozilla/qa/bug_writing_guidelines/index.html
deleted file mode 100644
index 57d1cc41db..0000000000
--- a/files/zh-tw/mozilla/qa/bug_writing_guidelines/index.html
+++ /dev/null
@@ -1,246 +0,0 @@
----
-title: Bug writing guidelines
-slug: Mozilla/QA/Bug_writing_guidelines
-tags:
- - 錯誤回報
-translation_of: Mozilla/QA/Bug_writing_guidelines
----
-<div class="note">
-<p><strong>If you need help with Mozilla software (for example with Firefox, Seamonkey or Thunderbird), use one of the available <a href="http://www.mozilla.org/support/">support options</a>.</strong> Do not edit this page!</p>
-</div>
-
-<p><span class="seoSummary">This page assumes you'd like to contribute to the Mozilla project by collecting enough information to enter a useful bug report in Bugzilla, the Mozilla bug tracking system.</span> Thank you!</p>
-
-<p>If you're new to reporting bugs, you may want to try getting help from the more experienced contributors. See the Community section on the <a href="/en-US/docs/QA">QA</a> page for pointers. If you're going to report a Firefox bug, you can also get assistance in the <span style="font-family: monospace;">#firefox</span> channel on <a href="irc://irc.mozilla.org/firefox">irc.mozilla.org</a>. For other projects (e.g., Thunderbird, SeaMonkey)  you can find the appropriate channel on <a href="https://wiki.mozilla.org/IRC">IRC</a>.</p>
-
-<h2 id="如何回報錯誤">如何回報錯誤</h2>
-
-<h3 id="每次回報一個錯誤">每次回報一個錯誤</h3>
-
-<p>如此一來能夠有效率地處理每個錯誤。</p>
-
-<h3 id="其他需要您注意的事項">其他需要您注意的事項</h3>
-
-<ol>
- <li>釐清如何 <strong>重現您遇到的錯誤</strong>:
-
- <ul>
- <li>如果能夠 <a href="#Writing_precise_steps_to_reproduce">完整描述重現錯誤過程</a> —太棒了! — 您將提供有收穫的錯誤回報。</li>
- <li>有時能夠重現問題,但不確定是用什麼特定的方法,則您需要提供有幫助的<a href="#specific-types">額外資訊。</a></li>
- <li>如果無法重現問題,回報該問題可能沒有太大的幫助,除非在發現錯誤時,您有獨特的發現。</li>
- </ul>
- </li>
- <li>檢查軟體是否已更新至最新版本。建議先測試開發中版本來確認錯誤是不是早就修正(例如:<a href="http://www.mozilla.com/en-US/firefox/channel/">Firefox Beta, Aurora</a>, 或是走在科技前端的 <a class="link-https" href="https://nightly.mozilla.org/">Nightly</a>)</li>
- <li>When reporting a Firefox bug, first check if you can reproduce the bug in a <a href="https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles">new Firefox profile</a>. If the bug only happens in your existing profile, try to figure out what <a href="https://support.mozilla.org/en-US/kb/troubleshoot-extensions-themes-to-fix-problems">settings, extensions</a>, or <a href="https://support.mozilla.org/en-US/kb/profiles-where-firefox-stores-user-data">files in your profile</a> are needed to reproduce the bug.
- <ul>
- <li>If the bug seems egregious (i.e. obviously affecting a large portion of users), there's probably something unusual about your setup that's a necessary part of the steps to reproduce the bug. You have much better chances of figuring it out than a developer who does not have access to your system.</li>
- <li>If the bug falls into one of <a href="#specific-types">specific types of bugs listed in a section below</a>, it may still be useful even if you can't reproduce it in a new Firefox profile.</li>
- </ul>
- </li>
- <li>Open the <a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?format=guided">Enter a new bug</a> form, which will guide you through most of the bug reporting process:
- <ul>
- <li>Create a Bugzilla account if you don't have one already, select the product having the bug.</li>
- <li>Enter a <strong>clear unique summary</strong> as <a href="#Writing_a_clear_summary">described below</a>; check if the bug has already been reported (if you want to be more thorough, there's an advanced guide on <a href="/en-US/docs/Screening_duplicate_bugs">screening duplicate bugs</a>).</li>
- <li>Provide <strong>precise steps to reproduce</strong>, <strong>expected results</strong> and <strong>actual results</strong> as <a href="#Writing_precise_steps_to_reproduce">described in the following section</a>.</li>
- <li>Provide additional information (also <a href="#Providing_additional_information">described below</a>), especially if you can't reproduce the bug in a new profile; and/or by reporting a <strong>crash</strong>, <strong>memory usage</strong>, <strong>performance</strong>, <strong>regression</strong> bug; or if the problem is with a specific web site.</li>
- </ul>
- </li>
- <li>如果遇到多個錯誤時,請分開一個一個回報。</li>
-</ol>
-
-<h2 id="簡短明確描述問題">簡短明確描述問題</h2>
-
-<p>您會怎麼用大概十幾個字描述問題? 開發者會先看到這一部分文字。</p>
-
-<p>好的錯誤回報會快速且清楚說明錯誤。這是用來解釋問題的來龍去脈,請不要給予針對問題的建議。</p>
-
-<ul>
- <li>好: "在複製檔案時按取消會讓檔案管理員當掉"</li>
- <li>不夠好: "當掉了"</li>
-</ul>
-
-<ul>
- <li>好: "Down-arrow scrolling doesn't work in &lt;textarea&gt; styled with overflow:hidden"</li>
- <li>不夠好: "瀏覽器應該要可以正常顯示我的網站"</li>
-</ul>
-
-<h2 id="描述可以重現問題的詳細的步驟">描述可以重現問題的詳細的步驟</h2>
-
-<p>How can a developer reproduce the bug on his or her own computer?</p>
-
-<p>Steps to reproduce are the <strong>most important part of any bug report</strong>. If a developer is able to reproduce the bug, the bug is very likely to be fixed. If the steps are unclear, it might not even be possible to know whether the bug has been fixed.</p>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th>在問題回報裡應該寫些什麼 ?</th>
- <th>好的例子(描述細節)</th>
- <th>
- <p>不好的例子(敘述籠統)</p>
- </th>
- </tr>
- <tr>
- <td>
- <p>說說你能不能控制卡 bug 的時機。</p>
-
- <p>可以故意卡、偶爾遇到、不能控制。</p>
- </td>
- <td>照著下面的步驟做問題就出現了:</td>
- <td> </td>
- </tr>
- <tr>
- <td>
- <p>描述如何命令 Firefox 做你想做的事。</p>
- </td>
- <td>
- <p>1. 點桌面捷徑打開 Firefox<br>
- 2. 按下 Cmd+N (Windows 系統按 Ctrl+N )來打開新的視窗。</p>
-
- <p>3. 把 <a class="link-https" href="https://mail.google.com/" rel="freelink">https://mail.google.com/</a> 複製貼上到網址列然後按Enter。</p>
- </td>
- <td>在新視窗打開Gmail</td>
- </tr>
- <tr>
- <td>
- <p>照著步驟做後,清楚地描述<strong>你看到的 (實際) 結果</strong> 和 <strong>預期結果。</strong> 請將這兩項分開來寫。</p>
- </td>
- <td><strong>預期結果</strong>: 我的收件匣正常顯示。<br>
- <strong>實際結果</strong>: 我的收件匣顯示 '您的瀏覽器不支援 Cookies (錯誤 -91)'。</td>
- <td>
- <p> </p>
-
- <p>"網頁跑不出來"</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="提供額外的資訊">提供額外的資訊</h2>
-
-<p>The following information is requested for most bug reports. You can save time by providing this information below the Expected results. If you need to attach multiple files, you can do so after submitting the report.</p>
-
-<h3 id="For_specific_types_of_bugs"><a name="specific-types">For specific types of bugs</a></h3>
-
-<p>If you are reporting a <strong>crash bug</strong>, please <a href="/en-US/docs/How_to_get_a_stacktrace_for_a_bug_report">include a Breakpad ID or attach stack trace</a>, and include the crash signature in the bug summary as well as in the <strong>Crash Signature</strong> field.</p>
-
-<p>If you are reporting a <strong>memory use or leak bug</strong>, please <a href="/en-US/docs/Mozilla/Performance/about:memory">attach the output of about:memory</a>. Ideally, find steps to reproduce an increase in what is shown in about:memory (even after clicking the "Minimize memory usage" button at the bottom). If you have trouble finding steps to reproduce, try the Firefox Support page titled <a href="https://support.mozilla.org/en-US/kb/firefox-uses-too-much-memory-ram">Firefox Uses Too Much Memory (Ram) - How to Fix</a>. If you are a C++ developer, <a class="link-https" href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance">more precise tools are available</a>.</p>
-
-<p>If you are reporting a <strong>bug about slowness or high CPU usage</strong>, please <a href="/en-US/docs/Mozilla/Performance/Reporting_a_Performance_Problem">provide a link to the performance profile in the bug</a>.</p>
-
-<p>If you are reporting a <strong>hang</strong> (beachball on OS X or "not responding" on Windows), please follow the instructions in <a href="/en-US/docs/How_to_Report_a_Hung_Firefox">How to Report a Hung Firefox</a>.</p>
-
-<p>If you are reporting a bug involving a <strong>Flash hang</strong>, please visit <a href="https://wiki.mozilla.org/Flash/Hang_Debugging">https://wiki.mozilla.org/Flash/Hang_Debugging</a> to learn how to provide useful information for developers.</p>
-
-<p>If you are reporting a <strong>bug involving a specific web page</strong>, please try to make a <a href="/en-US/docs/Reducing_testcases">reduced testcase</a> and attach it to the bug report. If you don't have time or expertise, please report the issue to <a href="https://webcompat.com/">webcompat.com</a> instead, where our volunteers will do this for you.</p>
-
-<p>If the bug was <strong>recently introduced</strong>, finding a <a href="http://mozilla.github.io/mozregression/quickstart.html">regression window</a> can help identify the cause of the bug.</p>
-
-<p><a href="http://www.chiark.greenend.org.uk/~sgtatham/bugs.html#intermittent">What if my bug seems "random" or "intermittent"?</a></p>
-
-<h3 id="For_most_Firefox_bugs">For most Firefox bugs</h3>
-
-<p>You should provide the following information for most Firefox bugs.</p>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th>What should you include in a bug report?</th>
- <th>Example</th>
- </tr>
- <tr>
- <td>Indicate if the problem can be reproduced using a <a href="https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles">new Firefox profile</a> and any changes you need to make in order to reproduce.</td>
- <td>The problem can be reproduced in a new profile, but only if Preferences -&gt; Privacy &amp; Security -&gt; Tracking Protection is selected.</td>
- </tr>
- <tr>
- <td>If you can only reproduce with an existing profile try to figure out what <a href="https://support.mozilla.org/en-US/kb/troubleshoot-extensions-themes-to-fix-problems">settings, extensions</a>, or <a href="https://support.mozilla.org/en-US/kb/profiles-where-firefox-stores-user-data">files in your profile</a> are needed to reproduce the bug. If you skip the step, <a href="https://support.mozilla.org/en-US/kb/use-troubleshooting-information-page-fix-firefox">save the troubleshooting information from about:support</a> to a file and attach it to the bug report.</td>
- <td>I can't reproduce in a new profile, about:support information from the offending profile is attached.</td>
- </tr>
- <tr>
- <td>
- <p>Indicate if the problem can be reproduced using the <a href="https://nightly.mozilla.org/">latest Nightly build</a>. Include the <strong>Build ID</strong> from <a href="https://support.mozilla.org/en-US/kb/use-troubleshooting-information-page-fix-firefox">about:support</a>.</p>
-
- <p>If possible, test using the new Firefox profile you created. If you need to test the Nightly build with your regular profile, you might want to <a href="https://support.mozilla.org/en-US/kb/back-and-restore-information-firefox-profiles">back up the profile</a> first, since the pre-release build may corrupt your data.</p>
- </td>
- <td>The problem can be reproduced on the latest Nightly (Build ID 20170416100136).</td>
- </tr>
- </tbody>
-</table>
-
-<p> </p>
-
-<div class="originaldocinfo">
-<h2 id="Original_document_information">Original document information</h2>
-
-<ul>
- <li>Author(s): Jesse Ruderman, Gervase Markham</li>
- <li>Other Contributors: Eli Goldberg, Claudius Gayle, Jan Leger, Felix Miata, Peter Mock, Chris Pratt, Chris Yeh, and others.</li>
-</ul>
-</div>
-
-<p> </p>
-
-<hr>
-<h2 id="Advanced">Advanced</h2>
-
-<h3 id="Finding_the_correct_product_and_component" name="Finding_the_correct_product_and_component"><strong style="font-weight: bold;">Finding the correct product and component</strong></h3>
-
-<p>You will be asked to categorize your bug into a "product" and a "component" within that product, in order to direct your report to the correct developers.</p>
-
-<p>If you're using Firefox, the bug is most likely in "Firefox", "Toolkit", or "Core".</p>
-
-<ul>
- <li><a class="link-https" href="https://bugzilla.mozilla.org/describecomponents.cgi?product=Firefox">List of components in the "Firefox" product</a> - Most parts of Firefox that you interact with directly</li>
- <li><a class="link-https" href="https://bugzilla.mozilla.org/describecomponents.cgi?product=Toolkit">List of components in the "Toolkit" product</a> - Interface widgets and some frontend features</li>
- <li><a class="link-https" href="https://bugzilla.mozilla.org/describecomponents.cgi?product=Core">List of components in the "Core" product</a> - Web page rendering, networking, etc.</li>
-</ul>
-
-<p>When in doubt, search for similar bugs and see which component they are in.</p>
-
-<p>If none of the components seem appropriate, look for a "General" component in the most appropriate product.</p>
-
-<h3 id="General_Outline_of_a_Bug_Report">General Outline of a Bug Report</h3>
-
-<div class="note">
-<p>Most of the following article has been merged into this page from QMO: How to write a proper bug</p>
-</div>
-
-<ul>
- <li><strong>Summary</strong>: How would you describe the bug in less than 60 characters? It should quickly and uniquely identify a bug report as well as explain the problem, not your suggested solution. Good: "Canceling a File Copy dialog crashes File Manager" Bad: "Software crashes" Bad: "Browser should work with my web site"</li>
- <li><strong>Component</strong>: In which sub-part of the software does it exist? This field is a requirement to submit any bug report. Click the word "Component" to see a description of each component. If none seems appropriate, highlight the "General" component.</li>
- <li><a name="version"> </a><strong>Version</strong>: select the earliest Version with what the problem can be reproduced:
- <ul>
- <li>Developers will use that information to narrow down the commit what introduced a regression</li>
- <li>QA staff needs that information to distinguish bugs with similar symptoms, but different roots.
- <ul>
- <li>Bugs that definitively appeared in different <em>Product</em> <em>Versions</em> probably will have different roots</li>
- <li>But Bugs that started with the same <em>Product</em> <em>Version</em> probably are DUPLICATEs</li>
- </ul>
- </li>
- <li><em>Trunk</em> does not allow any useful query. We have <em>Trunk</em> version bugs from beginning of the project until today, no common characteristics at all what can be tagged with this version. Avoid Trunk, replace it by precise information with what version the problem appeared if you can.</li>
- </ul>
- </li>
- <li><strong>OS</strong>: On which operating system (OS) did you find it? (E.g. Linux, Windows, and Mac.) Example: "<em>If you know the bug happens on more than one type of operating system, choose "All". If your OS isn't listed, choose Other".</em></li>
- <li><strong>Description</strong>: The details of your problem report, including:
- <ul>
- <li><u>Overview</u>: This is a larger detailed restatement of the summary. An example would be: <em>"Drag-selecting any page crashes Mac builds in the NSGetFactory function"</em>.</li>
- <li><u>Build Id</u>: To find this either go to the "about:support" page via the location bar or, if you have MozQA's <a href="https://addons.mozilla.org/en-US/firefox/addon/nightly-tester-tools/">Nightly Tester Tools</a> extension, then go to Tools | Nightly Tester Tools and select the option that contains the output of the build Id. It should look something like this: <em>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Firefox/38.0 ID:20150330004006 CSet: 9e57e9776571"</em>.</li>
- <li><u>Additional Builds and Platforms</u>: Whether or not the bug takes place on other platforms (or browsers, if applicable). It should look something like this: <em>"Doesn't Occur On Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Firefox/38.0 ID:20150330004006 CSet: 9e57e9776571"</em>.</li>
- </ul>
- </li>
- <li><strong>Steps to Reproduce</strong>: Minimized, easy-to-follow steps that will trigger the bug. If they're necessary, make sure to include any special setup steps. A good example of this would look like the following:<br>
- 1) View any web page. (I used the default sample page, http://www.google.com/).<br>
- 2) Drag-select the page. Specifically, while holding down the mouse button, drag the mouse pointer downwards from any point in the browser's content region to the bottom of the browser's content region.</li>
- <li><strong>Actual Results</strong>: What the application did after performing the above steps. An example would be: <em>The application crashed.</em></li>
- <li><strong>Expected Results</strong>: What the application should have done, were the bug not present. An example would be: <em>The window should scroll downwards. Scrolled content should be selected. Or, at least, the application should not crash.</em></li>
-</ul>
-
-<p> </p>
-
-<div class="originaldocinfo">
-<h4 id="Original_document_information_2">Original document information</h4>
-
-<ul>
- <li>Author(s): Aakash Desai</li>
- <li>Date last modified: June 3, 2013 at 2:41 am PST</li>
-</ul>
-</div>
diff --git a/files/zh-tw/mozilla/qa/index.html b/files/zh-tw/mozilla/qa/index.html
deleted file mode 100644
index 99a8a38dd2..0000000000
--- a/files/zh-tw/mozilla/qa/index.html
+++ /dev/null
@@ -1,251 +0,0 @@
----
-title: 'QA: Quality assurance at Mozilla'
-slug: Mozilla/QA
-tags:
- - Landing
- - NeedsTranslation
- - QA
- - Testing
- - TopicStub
-translation_of: Mozilla/QA
----
-<p>The Mozilla Quality Assurance (QA) team drives software quality assurance activities across Mozilla and plays a key role in releasing a diverse range of software products on schedule. Within each project in Mozilla, we work to explore new features, write and execute tests, uncover and file bugs, build and maintain tools, collect and analyze metrics, and support the release world-class products that promote the open Web.</p>
-
-<p><span class="seoSummary">Here you'll find articles and tools to help you gear up to join the QA team testing Firefox to ensure that each release is as good as it can be.</span></p>
-
-<h2 id="Get_started">Get started</h2>
-
-<ul class="card-grid">
- <li><span>How can I help test?</span>
-
- <p>There are lots of ways for you to become a <a href="/en-US/docs/Mozilla/QA/How_can_I_help_test_">community contributor</a> to the Mozilla quality team.</p>
- </li>
- <li><span>Bugs</span>
- <p>All Mozilla projects use <a href="https://bugzilla.mozilla.org/">Bugzilla</a> to track bugs. Learn how to <a href="/en-US/docs/Mozilla/QA/Bug_writing_guidelines" title="/en-US/docs/Mozilla/QA/Bug_writing_guidelines">report a bug</a> and get familiar with <a href="/en-US/docs/What_to_do_and_what_not_to_do_in_Bugzilla">what to do in Bugzilla</a>.</p>
- </li>
- <li><span>Events</span>
- <p>Get involved in our weekly <a href="/en-US/docs/Mozilla/QA/Bug_Verification_Day">Bug Verification Day</a> or <a href="/en-US/docs/Mozilla/QA/Bug_Triage_Day">Bug Triage Day</a>. You may even <a href="/en-US/docs/Mozilla/QA/Organizing_a_Testday">organize a testday</a> for your local community!</p>
- </li>
- <li><span>IRC</span>
- <p><a href="/en-US/docs/Mozilla/QA/Getting_Started_with_IRC">Get started with IRC</a>, the primary form of communication for members of the Mozilla community.</p>
- </li>
-</ul>
-
-<h2 id="Bugs">Bugs</h2>
-
-<div class="row topicpage-table">
-<div class="section">
-<h3 id="Reporting_bugs">Reporting bugs</h3>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Bugzilla">Bugzilla</a></dt>
- <dd>All Mozilla projects use <a href="https://bugzilla.mozilla.org/">Bugzilla</a> to track bugs. You will need to <a href="https://bugzilla.mozilla.org/createaccount.cgi">create an account with Bugzilla</a> in order to report bugs and triage them.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Bug_writing_guidelines" title="/en-US/docs/Mozilla/QA/Bug_writing_guidelines">Bug writing guidelines</a></dt>
- <dd>The more effectively a bug is reported, the more likely that an engineer will actually fix it. By following these guidelines, you can help ensure that your bugs stay at the top of the Mozilla engineers' heap, and get fixed.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/A_Bugs_Life" title="/en-US/docs/Mozilla/QA/A_Bugs_Life">A Bug's Life</a></dt>
- <dd>This tutorial will give an overview of what happens in the states that a bug will go through as well as how it will go from one to the next within its total life. It also explains the meaning of flags/keywords used in QA.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Filing_Crash_Bugs">Filing Crash Bugs</a></dt>
- <dd>This document lists guidelines and tips on how to file bug reports for crashes in a way that helps in debugging and fixing the reported issue.</dd>
-</dl>
-</div>
-
-<div class="section">
-<h3 id="Triaging_bugs">Triaging bugs</h3>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Confirming_unconfirmed_bugs" title="en-US/docs/Confirming unconfirmed bugs">Confirming unconfirmed bugs</a></dt>
- <dd>Identify useful bug reports and close the rest.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Triaging_Bugs_for_Firefox" title="/en-US/docs/Mozilla/QA/Triaging_Bugs_for_Firefox">Triaging Bugs for Firefox</a></dt>
- <dd>Information about the entire bug triaging process – from processing incoming bugs to narrowing down the steps to reproducing bugs.</dd>
- <dt><a href="/en-US/docs/Screening_duplicate_bugs">Screening duplicate bugs</a></dt>
- <dd>Help get bugs fixed faster by screening incoming reports for duplicates.</dd>
- <dt><a href="/en-US/docs/What_to_do_and_what_not_to_do_in_Bugzilla">General Guidelines</a></dt>
- <dd>What to do and what not to do in Bugzilla.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Manual_testing">Manual testing</h2>
-
-<div class="row topicpage-table">
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Test_Case_Writing_Primer">Manual Test Case Writing Primer</a></dt>
- <dd>How to write proper manual test cases</dd>
-</dl>
-</div>
-
-<div class="section">
-<dl>
- <dt><a href="https://testrail.stage.mozaws.net/">TestRail</a></dt>
- <dd>Mozilla QA's manual test cases reside in TestRail. You will need an LDAP account in order to login and execute test cases. Learn more on the <a href="https://wiki.mozilla.org/TestEngineering/Testrail">TestRail wiki page</a>.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Automated_testing">Automated testing</h2>
-
-<div class="row topicpage-table">
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Automated_testing" title="/en-US/docs/Mozilla/QA/Automated_testing">Automated testing at Mozilla</a></dt>
- <dd>Documentation about creating and using automated tests for Mozilla code.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Running_automated_tests">Running automated tests</a></dt>
- <dd>
- <p>This page lists the steps required to run Mozilla's automated test suites.</p>
- </dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Developing_tests" title="en-US/docs/Developing_Tests">Developing tests</a></dt>
- <dd>Ensure that future changes to Mozilla don't break things that currently work correctly.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Avoiding_intermittent_oranges" title="en-US/docs/QA/Avoiding intermittent oranges">Avoiding intermittent test failures</a></dt>
- <dd>Suggestions for ways to make your tests more reliable, thereby helping to avoid random, intermittent test failures.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Test_Verification">Test Verification</a></dt>
- <dd>When a changeset adds a new test, or modifies an existing test, the test verification (TV) test suite performs additional testing to help find intermittent failures in the modified test as quickly as possible.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Mozharness_FAQ">Mozharness FAQ</a></dt>
- <dd>Answers to common questions about Mozharness.</dd>
-</dl>
-</div>
-
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Robocop" title="/en-US/docs/Mozilla/QA/Robocop">Robocop</a></dt>
- <dd>Robocop is the automated testing system used for Firefox for Android. Learn its <a href="/en-US/docs/Mozilla/QA/Robocop/Code_style_guidelines">code style guidelines</a></dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Marionette">Marionette</a></dt>
- <dd>Get started with Marionette UI testing.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/web-platform-tests">web-platform-tests</a></dt>
- <dd>Learn how to use the industry standard, cross-browser, cross-platform <a href="http://testthewebforward.org/docs/">Web runtime testing system</a> from the <a href="https://www.w3.org/">W3C</a> used by Mozilla and others to ensure browser interoperability.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/external-media-tests">External Media Tests</a></dt>
- <dd>Get started testing HTML5-based video elements using VideoPuppeteer, a <a href="/en-US/docs/Mozilla/QA/Marionette">Marionette</a>- -based test suite used to test sites like YouTube and Netflix.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Chrome_tests">Chrome tests</a></dt>
- <dd>A chrome test is basically a <a href="https://developer.mozilla.org/en-US/docs/Mochitest" title="en/Mochitest">Mochitest</a> running with chrome privileges.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Firefox_QE">Firefox QE</h2>
-
-<div class="row topicpage-table">
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Triaging_Bugs_for_Firefox" title="/en-US/docs/Mozilla/QA/Triaging_Bugs_for_Firefox">Triaging Bugs for Firefox</a></dt>
- <dd>Information about the entire bug triaging process – from processing incoming bugs to narrowing down the steps to reproduce a bug.</dd>
-</dl>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Tips_and_Tricks">Tips and Tricks</a></dt>
- <dd>These tips and tricks will make your life easier when you are testing.</dd>
-</dl>
-<a href="/en-US/docs/Downloading_Nightly_or_Trunk_Builds">Downloading Nightly or Trunk Builds</a>
-
-<dl>
- <dd>Every 24 hours, a "nightly" build is created that testers all over the world download and test, reporting as they go along on any bugs that hit them. </dd>
-</dl>
-</div>
-
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Command_Line_Options">Command Line Options</a></dt>
- <dd>Command line options are used to specify various startup options for Firefox.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/Reporting_a_Performance_Problem">Reporting a Performance Problem</a></dt>
- <dd>This article will guide you in reporting a performance problem using the <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Profiling_with_the_Built-in_Profiler">Gecko Profiler extension</a>.</dd>
- <dt><a href="/en-US/docs/Mozilla/Projects/Crash_reporting">Crash reporting</a></dt>
- <dd>Firefox ships with an open-source crash reporting system.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Firefox_for_Android">Firefox for Android</h2>
-
-<div class="row topicpage-table">
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Mobile_Firefox">Mobile Firefox</a></dt>
- <dd>Firefox for Android is the mobile version of Firefox with a native Android look and feel.</dd>
- <dt><a href="/en-US/Firefox_for_Android/Compatibility_Testing">Compatibility Testing</a></dt>
- <dd>Help us identify websites that do not work well in Firefox by reporting the specific issues that you find in your investigation.</dd>
-</dl>
-</div>
-
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Fennec_Android:_Logging_with_the_Android_Debug_and_Logcat">Logging with the Android Debug Bridge and Logcat</a></dt>
- <dd>This article will provide a walkthrough in downloading and setting up an environment to which one can gain access to and view Android system logs.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Firefox_Mobile:_Enabling_the_Error_Console">Enabling the Error Console</a></dt>
- <dd>See the Mozilla Hacks article on <a class="external external-icon" href="https://hacks.mozilla.org/2012/08/remote-debugging-on-firefox-for-android/">Remote Debugging on Firefox for Android</a> for web content. If you need to debug the Firefox browser itself use Android's <a class="external external-icon" href="http://developer.android.com/tools/help/logcat.html">adb logcat</a>.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Firefox_OS">Firefox OS</h2>
-
-<div class="row topicpage-table">
-<div class="section">
-<h3 id="Manual_testing_2">Manual testing</h3>
-
-<dl>
- <dt><a href="/en-US/Firefox_OS/Simulator_vs_Emulator_vs_Device">Simulator vs Emulator vs Device</a></dt>
- <dd>These are three basic options when it comes to getting a Firefox OS environment in order to work on, or developing for, Firefox OS.</dd>
- <dt><a href="/en-US/Firefox_OS/Debugging">Debugging</a></dt>
- <dd>Discover the different tools at your disposal to debug your Firefox OS code.</dd>
- <dt><a href="/en-US/Firefox_OS/Developing_Firefox_OS/Filing_bugs_against_Firefox_OS">Reporting Bugs</a></dt>
- <dd>This article provides a guide to filing bugs against the Firefox OS project, including Gaia and B2G.</dd>
-</dl>
-</div>
-
-<div class="section">
-<h3 id="Platform_(Gecko)">Platform (Gecko)</h3>
-
-<dl>
- <dt><a href="/en-US/Firefox_OS/Platform/Automated_testing">Automated Testing</a></dt>
- <dd>Learn various aspects of testing Firefox OS, including running different tests, automation, and result reporting and tracking.</dd>
- <dt><a href="/en-US/Firefox_OS/Platform/Automated_testing/Gaia_performance_tests">Gaia Performance Tests</a></dt>
- <dd>This article provides information about running performance tests on Gaia, as well as how to create new tests.</dd>
- <dt><a href="/en-US/Firefox_OS/Platform/Feature_support_chart">Feature Support Chart</a></dt>
- <dd>There are several different builds of Firefox OS you can download or build for yourself, and there are some differences between the types of features available on each device.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Web_QA">Web QA</h2>
-
-<div class="row topicpage-table">
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Reducing_testcases" title="en-US/docs/Reducing testcases">Reducing testcases</a></dt>
- <dd>Improve bug reports by turning broken web pages into simple testcases, which can help developers understand the bug and can also be used for creating automated tests.</dd>
- <dt><a href="/en-US/docs/Mozilla/QA/Managing_Web_QA_XFails">Managing XFails</a></dt>
- <dd>One of the ongoing tasks of the Web QA department is managing xfails. This document will explain what xfails are, and describe the steps one can take to investigate and update them.</dd>
-</dl>
-</div>
-
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/QA/Running_Web_QA_automated_tests">Running Automated Tests</a></dt>
- <dd>So you’re interested in contributing to Mozilla Web QA automation projects but don’t know where to start? This doc will help you get up and running a set of tests locally.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Glossary">Glossary</h2>
-
-<div class="section">
-<dl>
- <dt><a href="/en-US/docs/Glossary/Smoke_Test">Smoke Test</a></dt>
- <dd></dd>
-</dl>
-</div>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a href="https://lists.mozilla.org/listinfo/dev-quality">Mailing list</a></li>
- <li><a href="https://quality.mozilla.org/">Blog</a></li>
- <li><a href="/en-US/docs/tag/QA" title="en-US/docs/tag/QA">View all documents tagged QA</a></li>
- <li><a href="/en-US/docs/tag/QA:Tools" title="en-US/docs/tag/QA:Tools">View all documents tagged QA:Tools</a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/rust/index.html b/files/zh-tw/mozilla/rust/index.html
deleted file mode 100644
index 28f46deb33..0000000000
--- a/files/zh-tw/mozilla/rust/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
----
-title: Rust 程式語言
-slug: Mozilla/Rust
-translation_of: Mozilla/Rust
----
-<p><img alt="Rust logo" src="https://www.rust-lang.org/logos/rust-logo-blk.svg" style="float: left; height: 150px; width: 150;"><a href="https://www.rust-lang.org/">Rust</a> 是個由 Mozilla 及社區志願者所建立的開源系統程式語言,旨在幫助開發者建立快速安全,並充分使用當代多核心處理器強大功能的程式。它會阻止記憶體區段錯誤(segmentation fault)並確保執行緒(thread)安全、並使用簡單明瞭的語法。</p>
-
-<p>另外,Rust 提供了 zero-cost abstractions, move semantics, guaranteed memory safety, threads with no data races, trait-based generics, pattern matching, type inference, and efficient C bindings, with a minimum runtime size.</p>
-
-<p>要學習 Rust,可以透過:</p>
-
-<ul>
- <li>觀看下面的影片,仔細觀察 Rust 提供的功能與優勢。</li>
- <li>閱讀網路上的電子書 <em><a href="https://doc.rust-lang.org/book/">The Rust Programming Language</a></em>。</li>
- <li>下載 Rust 編譯器、看看範例、學習你可以、希望在 <a href="https://www.rust-lang.org/">Rust 官方網站</a> 學到的一切。</li>
-</ul>
-
-<h2 id="Rust_and_the_future_of_systems_programming">Rust and the future of systems programming</h2>
-
-<p>{{EmbedYouTube("8EPsnf_ZYU0")}}</p>
-
-<h2 id="Unlocking_the_power_of_parallelism_with_Rust">Unlocking the power of parallelism with Rust</h2>
-
-<p>{{EmbedYouTube("cNeIOt8ZdAY")}}</p>
-
-<h2 id="Rust_for_web_developers">Rust for web developers</h2>
-
-<p>{{EmbedYouTube("FfoXFnzZbBM")}}</p>
-
-<h2 id="Safe_systems_programming_with_Rust">Safe systems programming with Rust</h2>
-
-<p>{{EmbedYouTube("P3sfNGtpuxc")}}</p>
-
-<h2 id="Growing_the_Rust_community">Growing the Rust community</h2>
-
-<p>{{EmbedYouTube("duv0tuPAnO0")}}</p>
-
-<h2 id="Putting_Rust_into_production_at_Mozilla">Putting Rust into production at Mozilla</h2>
-
-<p>{{EmbedYouTube("2RhbYpgVpg0")}}</p>
diff --git a/files/zh-tw/mozilla/tech/index.html b/files/zh-tw/mozilla/tech/index.html
deleted file mode 100644
index f9682e62e1..0000000000
--- a/files/zh-tw/mozilla/tech/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Mozilla technologies
-slug: Mozilla/Tech
-tags:
- - Landing
- - Mozilla
- - NeedsTranslation
- - Reference
- - TopicStub
- - XUL
-translation_of: Mozilla/Tech
----
-<p>Mozilla has several technologies used as components of its projects. These are documented here. (flesh out this text).</p>
-<p>{{LandingPageListSubpages}}</p>
diff --git a/files/zh-tw/mozilla/tech/xpcom/reference/index.html b/files/zh-tw/mozilla/tech/xpcom/reference/index.html
deleted file mode 100644
index 29d07953d6..0000000000
--- a/files/zh-tw/mozilla/tech/xpcom/reference/index.html
+++ /dev/null
@@ -1,27 +0,0 @@
----
-title: XPCOM reference
-slug: Mozilla/Tech/XPCOM/Reference
-tags:
- - Add-ons
- - Extensions
- - Landing
- - Mozilla
- - NeedsTranslation
- - Reference
- - TopicStub
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference
----
-<p>This reference describes the interfaces and functions provided by the <a href="/en-US/docs/Mozilla/Tech/XPCOM">XPCOM</a> library. In addition, it details the various helper classes and functions, as well as the components, provided by the <a href="/en-US/docs/Mozilla/Tech/XPCOM/Glue">XPCOM glue</a> library. The contents herein are oriented primarily toward extension developers and people embedding XPCOM in other projects.</p>
-
-<div class="warning">
-<p><strong>WebExtensions are becoming the new standard for creating add-ons. </strong>Eventually support for XPCOM add-ons will be deprecated, so you should begin to investigate porting your add-ons to use the <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions">WebExtensions</a> API, and <a href="https://mzl.la/webext-feature-needed">report any missing functionality</a> so we can be sure to address your concerns. Work is ongoing on WebExtension capabilities, so your input will help prioritize and plan the work. To learn more about the kinds of changes that will be needed, see <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_XUL_XPCOM_extensions">Comparison with XUL/XPCOM extensions</a>. In addition, any binaries you use will then need to be converted for use with the WebExtensions <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_messaging">native messaging</a> API, or compiled using <a href="https://webassembly.github.io/">WebAssembly</a> or <a href="/en-US/docs/Mozilla/Projects/Emscripten">Emscripten</a>.</p>
-</div>
-
-<div class="note">
-<p>If you're working on a module in the Mozilla codebase that's compiled with the <code>MOZILLA_INTERNAL_API</code> flag set, some of these APIs -- the string functions and classes in particular -- are not the ones you should be using. See the <a href="/en-US/docs/Mozilla/Tech/XPCOM/Guide/Internal_strings">XPCOM internal string guide</a> for documentation of the internal string API used within the Mozilla codebase.</p>
-</div>
-
-<p>{{LandingPageListSubpages}}</p>
-
-<p>Many XPCOM pages return an <code><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Core_functions/nsresult">nsresult</a></code>. Prior to Gecko 19 {{geckoRelease(19)}}, this was an integer that simply returned an error code. It is now a strongly typed <code>enum</code> when XPCOM is built using a C++11 compiler. This causes compile-time errors to occur when improper values are returned as nsresult values, thereby making it easier to catch many bugs.</p>
diff --git a/files/zh-tw/mozilla/tech/xpcom/reference/interface/index.html b/files/zh-tw/mozilla/tech/xpcom/reference/interface/index.html
deleted file mode 100644
index d098cf8402..0000000000
--- a/files/zh-tw/mozilla/tech/xpcom/reference/interface/index.html
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: XPCOM Interface Reference
-slug: Mozilla/Tech/XPCOM/Reference/Interface
-tags:
- - NeedsTranslation
- - TopicStub
- - XPCOM
- - XPCOM Interface Reference
-translation_of: Mozilla/Tech/XPCOM/Reference/Interface
----
-<p><span class="seoSummary">This is a reference to the XPCOM interfaces provided by the Mozilla platform.</span></p>
-
-<div class="cols-3">{{tree('','1')}}</div>
-
-<h2 id="See_also" name="See_also">See also</h2>
-
-<ul>
- <li><a href="/en-US/docs/XPCOM_Interface_Reference_group" title="XPCOM_Interface_Reference_group">Interfaces grouped by function</a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/tech/xpcom/reference/interface/nsicontentpolicy/index.html b/files/zh-tw/mozilla/tech/xpcom/reference/interface/nsicontentpolicy/index.html
deleted file mode 100644
index 6ed47b6c80..0000000000
--- a/files/zh-tw/mozilla/tech/xpcom/reference/interface/nsicontentpolicy/index.html
+++ /dev/null
@@ -1,491 +0,0 @@
----
-title: nsIContentPolicy
-slug: Mozilla/Tech/XPCOM/Reference/Interface/nsIContentPolicy
-translation_of: Archive/Mozilla/nsIContentPolicy
----
-<p><font><font>{{IFSummaryStart(“DOM /鹼/ nsIContentPolicy.idl”,“編寫腳本”)}}接口用於實現內容策略的機制。</font><font>這個接口的實現可以被用來控制各種類型的外的線的內容,或者某些類型的內聯內容的處理的負荷。{{IFSummaryEnd(“nsIContentPolicyBase”,42,“1.0”)}}</font></font></p>
-
-<p><font><font>可以觀察到,正在通過實施{{接口(“nsIContentPolicy”)}}加載到瀏覽器中的內容。</font><font>如果你正在開發一個內容感知的插件(攔截廣告或改變內容的外觀,例如)該接口是非常有用的,或者如果你想停止或允許用戶瀏覽的網址。</font></font></p>
-
-<p><font><font>{{WarningStart()}}不要阻塞調用者在你的實施方式{{manch(“shouldLoad”)}}或{{manch(“為ShouldProcess”)}}(例如,通過啟動一個對話框,以提示用戶東西)。“){{WarningEnd()}}</font></font></p>
-
-<div class="note">
-<p><strong><font><font>注:</font></font></strong><font><font>在現實中,很多這種接口在{{接口(“nsIContentPolicyBase”)}}接口定義,但現在,直到有人有時間來拆東西記錄在這裡。</font></font></p>
-</div>
-
-<h2 id="Method_overview" name="Method_overview"><font><font><font><font>方法概述</font></font></font></font></h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <td><code>short <a href="#shouldLoad()">shouldLoad</a>(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeTypeGuess, in nsISupports aExtra, in nsIPrincipal aRequestPrincipal);</code></td>
- </tr>
- <tr>
- <td><code>short <a href="#shouldProcess()">shouldProcess</a>(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeType, in nsISupports aExtra, in nsIPrincipal aRequestPrincipal);</code></td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Constants" name="Constants"><font><font><font><font>常量</font></font></font></font></h2>
-
-<h3 id="內容類型"><font><font>內容類型</font></font></h3>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <td class="header"><font><font>不變</font></font></td>
- <td class="header"><font><font><font><font>值</font></font></font></font></td>
- <td class="header"><font><font><font><font>描述</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_OTHER</code></td>
- <td><code>1</code></td>
- <td><font><font>指示內容,其類型是未知的,或者是不感興趣的一個有限的使用情況之外。</font><font>在一般情況下,你應該盡量不要使用這種類型的,除非沒有其他人是合適的。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_SCRIPT</code></td>
- <td><code>2</code></td>
- <td><font><font>表示的可執行</font></font><code>script</code><font><font>(例如JavaScript)。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_IMAGE</code></td>
- <td><code>3</code></td>
- <td><font><font><font><font>指示</font></font></font></font><code>image</code><font><font><font><font>(例如,{{HTMLElement的(“IMG”)}}的元素)。</font></font></font><font><font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_STYLESHEET</code></td>
- <td><code>4</code></td>
- <td><font><font>指示</font></font><code>stylesheet</code><font><font>(例如,{{HTMLElement的(“風格”)}}的元素)。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_OBJECT</code></td>
- <td><code>5</code></td>
- <td><font><font>代表一個普通</font></font><code>object</code><font><font>(插件,處理內容通常這一類下降)。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_DOCUMENT</code></td>
- <td><code>6</code></td>
- <td><font><font>表示DOM {{domxref(“文件”)}}在頂層(即,直接在瀏覽器標籤)。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_SUBDOCUMENT</code></td>
- <td><code>7</code></td>
- <td>
- <p><font><font>表示包含在另一個一{{domxref(“文件”)}} </font></font><code>document</code><font><font>(</font><font>例如,{{HTMLElement的(“IFRAME”)}}和{{HTMLElement的(“幀”)}}的元素)。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></p>
-
- <div class="note">
- <p><strong><font><font>注:</font></font></strong><font><font>壁虎使用</font></font><code>TYPE_INTERNAL_FRAME</code><font><font>,並</font></font><code>TYPE_INTERNAL_IFRAME</code><font><font>以內部辨別其差異。</font><font>這些類型映射到</font></font><code>TYPE_SUBDOCUMENT</code><font><font>被傳遞到內容政策實施前,不應外壁虎代碼中使用。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_REFRESH</code></td>
- <td><code>8</code></td>
- <td>
- <p><font><font>指示定時刷新。</font></font></p>
-
- <p><font><font>{{manch(“shouldLoad”)}}將永遠不會得到這個,因為它並不代表內容被加載(通過刷新觸發的實際負載將通過{{manch(“shouldLoad”)}}如預期)。</font></font></p>
- <font><font>{{manch(“為ShouldProcess”)}}將收到此為,例如{{HTMLElement的(“元”)}}刷新元件和HTTP刷新頭。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_XBL</code></td>
- <td><code>9</code></td>
- <td><font><font>指示XBL綁定請求,觸發或者通過{{cssxref(“ - MOZ結合”)}} CSS屬性或{{domxref(“Document.addBinding()”)}}方法。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_PING</code></td>
- <td><code>10</code></td>
- <td><font><font>表示通過在{{HTML元素(“A”)}}使用元素{{htmlattrxref(“平”,“一”)}}屬性的點擊觸發的平。</font><font>{{gecko_minversion_inline(“1.9”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_XMLHTTPREQUEST</code></td>
- <td><code>11</code></td>
- <td><font><font>表示{{domxref(“XMLHttpRequest的”)}}。</font><font>也用於{{domxref(“Document.load()”)}} {{gecko_minversion_inline(“1.9”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_OBJECT_SUBREQUEST</code></td>
- <td><code>12</code></td>
- <td><font><font>表示由一個插件的請求。</font><font>{{gecko_minversion_inline(“1.9”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_DTD</code></td>
- <td><code>13</code></td>
- <td><font><font>表示通過XML加載的DTD </font></font><code>document</code><font><font>。</font><font>{{gecko_minversion_inline(“1.9”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_FONT</code></td>
- <td><code>14</code></td>
- <td><font><font>指示經由{{cssxref(“@字體面”)}}規則加載的字體。</font><font>{{gecko_minversion_inline(“1.9.1”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_MEDIA</code></td>
- <td><code>15</code></td>
- <td><font><font>表示視頻或音頻負載。</font><font>{{gecko_minversion_inline(“1.9.1”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_WEBSOCKET</code></td>
- <td><code>16</code></td>
- <td><font><font><font><font>表示</font></font></font></font><a href="/en-US/docs/Web/API/WebSocket_API"><font><font><font><font>的WebSocket的</font></font></font></font></a><font><font><font><font>負荷。</font></font></font><font><font><font>{{gecko_minversion_inline(“11”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_CSP_REPORT</code></td>
- <td><code>17</code></td>
- <td><font><font>表示一個</font></font><a href="/en-US/docs/Web/Security/CSP"><font><font>內容安全策略</font></font></a><font><font>報告。</font><font>{{gecko_minversion_inline(“20”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_XSLT</code></td>
- <td><code>18</code></td>
- <td><font><font>表示一個樣式表轉換。</font><font>{{gecko_minversion_inline(“27”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_BEACON</code></td>
- <td><code>19</code></td>
- <td><font><font>表示信標後。</font><font>{{gecko_minversion_inline(“30”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_FETCH</code></td>
- <td><font><font><font><font>20</font></font></font></font></td>
- <td><font><font>指示通過發起的負載的{{domxref(“GlobalFetch.fetch()”)}}方法,其可作為在全球都{{domxref(“窗口”)}}和{{domxref(“工人”)} }上下文。</font><font>{{gecko_minversion_inline(36)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_IMAGESET</code></td>
- <td><font><font><font><font>21</font></font></font></font></td>
- <td><font><font>指示要加載的{{HTML元素(“IMG”)}}(與該{{htmlattrxref(“srcset”,“IMG”)}}屬性或{{HTMLElement的(“圖片”)}}。{{gecko_minversion_inline(請求36)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_WEB_MANIFEST</code></td>
- <td><font><font><font><font>22</font></font></font></font></td>
- <td><font><font>指示要加載一個Web清單的請求。</font><font>{{gecko_minversion_inline(41)}}</font></font></td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_SCRIPT</code></td>
- <td><font><font><font><font>23</font></font></font></font></td>
- <td>
- <p><font><font>用於表示使用{{HTMLElement的(“腳本”)}}元素加載的腳本的內部常數。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font>重要說明:</font></font></strong><font><font>此類型映射到</font></font><code>TYPE_SCRIPT</code><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_WORKER</code></td>
- <td><font><font><font><font>24</font></font></font></font></td>
- <td>
- <p><font><font>用於表示通過專用工人加載的腳本的內部常數。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_SCRIPT</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_SHARED_WORKER</code></td>
- <td><font><font><font><font>25</font></font></font></font></td>
- <td>
- <p><font><font>用於表示通過共享工人加載的腳本的內部常數。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_SCRIPT</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_EMBED</code></td>
- <td><font><font><font><font>26</font></font></font></font></td>
- <td>
- <p><font><font>內部常量用於表示從{{HTML元素(“嵌入”)}}元素加載的內容。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_OBJECT</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_OBJECT</code></td>
- <td><font><font><font><font>27</font></font></font></font></td>
- <td>
- <p><font><font>內部常量用於表示從{{HTMLElement的(“對象”)}}元素加載的內容。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_OBJECT</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_FRAME</code></td>
- <td><font><font><font><font>28</font></font></font></font></td>
- <td>
- <p><font><font>內部常量用於表示從{{HTML元素(“幀”)}}元素加載的內容。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_SUBDOCUMENT</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_IFRAME</code></td>
- <td><font><font><font><font>29</font></font></font></font></td>
- <td>
- <p><font><font>內部常量用於表示從{{HTML元素(“IFRAME”)}}元素加載的內容。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_SUBDOCUMENT</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_AUDIO</code></td>
- <td><font><font><font><font>30</font></font></font></font></td>
- <td>
- <p><font><font>內部常量用於表示從{{HTML元素(“音頻”)}}元素加載的內容。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_MEDIA</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_VIDEO</code></td>
- <td><font><font><font><font>31</font></font></font></font></td>
- <td>
- <p><font><font>內部常量用於表示從{{HTML元素(“視頻”)}}元素加載的內容。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_MEDIA</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>TYPE_INTERNAL_TRACK</code></td>
- <td><font><font><font><font>32</font></font></font></font></td>
- <td>
- <p><font><font>內部常量用於表示從{{HTML元素(“軌道”)}}元素加載的內容。</font><font>{{gecko_minversion_inline(41)}}</font></font></p>
-
- <div class="warning">
- <p><strong><font><font><font><font>重要說明:</font></font></font></font></strong><font><font><font><font>此類型映射到</font></font></font></font><code>TYPE_MEDIA</code><font><font><font><font>傳遞給內容政策實施之前,不宜在室外的Gecko內核代碼中使用。</font></font></font></font></p>
- </div>
- </td>
- </tr>
- <tr>
- <td><code>REJECT_REQUEST</code></td>
- <td><code>-1</code></td>
- <td><font><font>從{{manch(“shouldLoad”)}}或{{manch(“為ShouldProcess”)}}返回如果負載或處理請求是基於所述請求的細節拒絕。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>REJECT_TYPE</code></td>
- <td><code>-2</code></td>
- <td>
- <p><font><font>從{{manch(“shouldLoad”)}}或{{manch(“為ShouldProcess”)}}返回如果負載/過程僅僅基於(上述標誌)它的類型拒絕。</font></font></p>
- <font><font>{{注(“這甩只適用於該服務器上的當前請求,而不是同一類型的未來需求。”)}} {{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>REJECT_SERVER</code></td>
- <td><code>-3</code></td>
- <td>
- <p><font><font>從{{manch(“shouldLoad”)}}或{{manch(“為ShouldProcess”)}}如果負載/過程是基於在服務器上拒絕它託管在或從請求(返回</font></font><code>aContentLocation</code><font><font>或</font></font><code>aRequestOrigin</code><font><font>),例如,如果塊的</font></font><code>IMAGE</code><font><font>,因為它是從goatse.cx服務(即使你不一定阻止</font></font><code>other</code><font><font>從該服務器/域類型)。</font></font></p>
- <font><font><font><font>{{注(“這甩只適用於該服務器上的當前請求,而不是同一類型的未來需求。”)}} {{gecko_minversion_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>REJECT_OTHER</code></td>
- <td><code>-4</code></td>
- <td>
- <p><font><font>從{{manch(“shouldLoad”)}}或返回{{manch(“為ShouldProcess”)}}如果負載/過程是基於一些拒絕</font></font><code>other</code><font><font>標準。</font><font>Mozilla的呼叫者會處理這個喜歡</font></font><code>REJECT_REQUEST</code><font><font>; </font><font>第三方實現者,例如,用這個來指導自己的來電諮詢額外參數的更多細節。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></p>
-
- <p><font><font>{{注(“這甩只適用於該服務器上的當前請求,而不是同一類型的未來需求。”)}}</font></font></p>
- </td>
- </tr>
- <tr>
- <td><code>ACCEPT</code></td>
- <td><code>1</code></td>
- <td><font><font>從{{manch(“shouldLoad”)}}或{{manch(“為ShouldProcess”)}}如果負載或處理請求不被拒絕返回。</font><font>{{gecko_minversion_inline(“1.8”)}}</font></font></td>
- </tr>
- <tr>
- <td><code>OTHER</code></td>
- <td><code>0</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>SCRIPT</code></td>
- <td><code>1</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>IMAGE</code></td>
- <td><code>2</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>STYLESHEET</code></td>
- <td><code>3</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>OBJECT</code></td>
- <td><code>4</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>SUBDOCUMENT</code></td>
- <td><code>5</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>CONTROL_TAG</code></td>
- <td><code>6</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>RAW_URL</code></td>
- <td><code>7</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- <tr>
- <td><code>DOCUMENT</code></td>
- <td><code>8</code></td>
- <td><font><font><font><font>{{obsolete_inline(“1.8”)}}</font></font></font></font></td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Methods" name="Methods"><font><font><font><font>方法</font></font></font></font></h2>
-
-<h3 id="shouldLoad()" name="shouldLoad()"><font><font><font><font>shouldLoad()</font></font></font></font></h3>
-
-<p><font><font>打電話讓自己的內容政策的執行決定在給定位置的資源是否應該被加載。</font><font>這種方法是通過加載指定aContentLocation的資源,以確定是否要開始加載所請求的資源之前調用。</font></font></p>
-
-<p class="note"><code>shouldLoad()</code><font><font>可以稱為同時所涉及的文檔的DOM和佈局是不一致的狀態。</font><font>這意味著,該方法的實施者</font></font><strong><font><font>不得</font></font></strong><font><font>做任何以下內容:</font></font></p>
-
-<ol>
- <li class="note"><font><font>以任何方式修改DOM中(例如,設置屬性是一個沒有沒有)。</font></font></li>
- <li class="note"><font><font>查詢依賴於佈局(例如,任何DOM屬性</font></font><code>offset*</code><font><font>屬性)。</font></font></li>
- <li class="note"><font><font>查詢依賴於任何風格的DOM屬性(例如,計算方式)。</font></font></li>
- <li class="note"><font><font>查詢依賴於DOM的當前狀態的“上下文”節點(例如,節點列表的長度)之外的任何DOM屬性。</font></font></li>
- <li class="note"><font><font>[JavaScript實現僅]不使用XPCNativeWrapper(顯式或隱式地)的任何對象上的任何類型的訪問屬性。</font><font>由於各種DOM0的事情,這會導致項目4。</font></font></li>
-</ol>
-
-<p class="note"><font><font>如果你在做這些事情</font></font><code>shouldLoad()</code><font><font>的實現,期望不可預知的行為,可能包括死機,沒有顯示出來的內容,內容顯示了一倍,等等。如果你不需要做任何的事情上面,做他們關閉超時或事件。</font></font></p>
-
-<div class="note"><strong><font><font>注</font></font></strong><font><font>:當多個內容策略用於(例如,通過幾個擴展),如果其中一人拒絕的請求,該政策的其餘部分不叫。</font><font>參考:</font></font><a class="external" href="http://mxr.mozilla.org/mozilla-central/source/content/base/src/nsContentPolicy.cpp#146" title="http://mxr.mozilla.org/mozilla-central/source/content/base/src/nsContentPolicy.cpp#146"><font><font>http://mxr.mozilla.org/mozilla-central/source/content/base/src/nsContentPolicy.cpp#146</font></font></a><font><font>。</font></font></div>
-
-<div class="note"><strong><font><font>注</font></font></strong><font><font>:內容政策在上述情況下的順序取決於安裝的優先級。</font></font></div>
-
-<pre class="eval"><font><font>短shouldLoad(</font></font><font><font>
- 在無符號長aContentType,</font></font><font><font>
- 在nsIURI aContentLocation,</font></font><font><font>
- 在nsIURI aRequestOrigin,</font></font><font><font>
- 在nsISupports aContext,</font></font><font><font>
- 在ACString aMimeTypeGuess,</font></font><font><font>
- 在nsISupports aExtra,</font></font><font><font>
- 在nsIPrincipal aRequestPrincipal</font></font><font><font>
-);</font></font>
-</pre>
-
-<h6 id="Parameters" name="Parameters"><font><font>參數</font></font></h6>
-
-<dl>
- <dt><code>aContentType</code></dt>
- <dd><font><font>的類型的內容進行測試。</font><font>這將是一個一個{{ANCH(“內容類型”)}}在上面列出。</font></font></dd>
- <dt><code>aContentLocation</code></dt>
- <dd><font><font>的內容的URI被檢查; </font><font>一定不能</font></font><code>null</code><font><font>。</font></font></dd>
- <dt><code>aRequestOrigin</code><font><font><font><font> {optional_inline}}</font></font></font></font></dt>
- <dd><font><font>啟動此加載請求的資源的位置; </font><font>可</font></font><code>null</code><font><font>如果不適用。</font></font></dd>
- <dt><code>aContext</code><font><font><font><font> {optional_inline}}</font></font></font></font></dt>
- <dd><font><font>的{{接口(“nsIDOMNode”)}}或{{接口(“nsIDOMWindow”)}}發起請求,或一些可以</font></font><code>QueryInterface()</code><font><font>向其中的一個; </font><font>可</font></font><code>null</code><font><font>如果不適用。</font></font></dd>
- <dt><font><font>{{音符(“aContext是當用戶使用的上下文菜單中的新選項卡/窗口或CMD / CTRL +打開鏈接的新選項卡/窗口點擊鏈接(即,aContext不是該鏈路是在拉片在這些情況下)。“)}}</font></font></dt>
- <dt> </dt>
- <dt> </dt>
- <dt><code>aMimeTypeGuess</code></dt>
- <dd><font><font>可選的。</font><font>用於所請求的內容的MIME類型猜測,基於可用於請求發起(例如,信息</font></font><code>OBJECT</code><font><font>的類型屬性); </font><font>不能可靠地反映實際的MIME類型所請求的內容。</font></font></dd>
- <dt><code>aExtra</code></dt>
- <dd><font><font>一個可選的參數,直通非壁虎呼叫者額外的數據傳遞給被調用者。</font></font></dd>
-</dl>
-
-<dl>
- <dt><code style="font-size: 14px;">aRequestPrincipal</code></dt>
- <dd><font><font>可選的。</font><font>定義了導致負載的主體。</font><font>這僅適用於可選</font></font><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=803765#c9"><font><font>的非壁虎</font></font></a><font><font>代碼:所有的壁虎代碼應該設置此參數。</font><font>對於導航事件,這是導致該加載頁面的主體。</font></font></dd>
-</dl>
-
-<h6 id="Return_value" name="Return_value"><font><font><font><font>返回值</font></font></font></font></h6>
-
-<p><code>ACCEPT</code><font><font><font><font> 要么 </font></font></font></font><code>REJECT_*</code></p>
-
-<h3 id="shouldProcess()" name="shouldProcess()"><font><font>為ShouldProcess()</font></font></h3>
-
-<p><font><font>如果資源被處理?</font><font>{{manch(“為ShouldProcess”)}}將被調用一次傳遞給它的所有資料已被確定有關資源,資源的一部分已經被加載後一般。</font><font>“處理”是指通過處理應用程序。</font><font>例如,為ShouldProcess可以用來允許來自服務器的響應根據MIME類型的響應的處理或忽略。</font></font></p>
-
-<p><font><font>{{NoteStart()}} {{manch(“為ShouldProcess”)}}可以被稱為當DOM和佈局</font></font><code>document</code><font><font>涉及處於不一致的狀態。</font><font>查看{{manch(“shouldLoad”)}}筆記,看看這是什麼意思了這種方法的實現者。{{NoteEnd()}}</font></font></p>
-
-<pre class="eval"><font><font>短為ShouldProcess(</font></font><font><font>
- 在無符號長aContentType,</font></font><font><font>
- 在nsIURI aContentLocation,</font></font><font><font>
- 在nsIURI aRequestOrigin,</font></font><font><font>
- 在nsISupports aContext,</font></font><font><font>
- 在ACString aMimeType,</font></font><font><font>
- 在nsISupports aExtra,</font></font><font><font>
- 在nsIPrincipal aRequestPrincipal</font></font><font><font>
-);</font></font>
-</pre>
-
-<h6 id="Parameters" name="Parameters"><font><font><font><font>參數</font></font></font></font></h6>
-
-<dl>
- <dt><code>aContentType</code></dt>
- <dd><font><font>的類型的內容進行測試。</font><font>這將是TYPE_ *常量之一。</font></font></dd>
- <dt><code>aContentLocation</code></dt>
- <dd><font><font>可選的。</font><font>被請求的資源的位置:可能是,例如,一個重定向後的URI資源。</font></font></dd>
- <dt><code>aRequestOrigin</code></dt>
- <dd><font><font>可選的。</font><font>啟動此加載請求的資源的位置; </font><font>可</font></font><code>null</code><font><font>如果不適用。</font></font></dd>
- <dt><code>aContext</code></dt>
- <dd><font><font>可選的。</font><font>的{{接口(“nsIDOMNode”)}}或發起請求{{接口(“nsIDOMWindow”)}},或一些可以查詢接口的那些中的一個; </font><font>可</font></font><code>null</code><font><font>如果不適用。</font></font></dd>
- <dt><code>aMimeType</code></dt>
- <dd><font><font>MIME類型所請求的資源(例如,圖像/ PNG)的,所報告的網絡庫,如果可用的話(可以是空的,如果不適合的類型,例如,</font></font><code>TYPE_REFRESH</code><font><font>)。</font></font></dd>
- <dt><code>aExtra</code></dt>
- <dd><font><font><font><font>一個可選的參數,直通非壁虎呼叫者額外的數據傳遞給被調用者。</font></font></font></font></dd>
-</dl>
-
-<dl>
- <dt><code style="font-size: 14px;">aRequestPrincipal</code></dt>
- <dd><font><font>可選的。</font><font>提出請求的主體。</font></font></dd>
-</dl>
-
-<h6 id="Return_value" name="Return_value"><font><font><font><font>返回值</font></font></font></font></h6>
-
-<p><code>ACCEPT</code><font><font><font><font> 要么 </font></font></font></font><code>REJECT_*</code></p>
-
-<h2 id="Example" name="Example"><font><font><font><font>例</font></font></font></font></h2>
-
-<p><font><font>您可以通過包括容易實現這個接口</font></font><code>nsIContentPolicy.h</code><font><font>的頭文件和實現</font></font><code>public nsIContentPolicy</code><font><font>到類,如下所示:</font></font></p>
-
-<pre class="brush: cpp"><font><font>//將這個變成你的頭文件</font></font>
-<font><font>
-#包括“_path_to_sdk /包括/內容/ nsIContentPolicy.h”</font></font>
-<font><font>
-MyClass類:公共nsISupports,公共nsIContentPolicy {</font></font><font><font>
- ...</font></font><font><font>
- NS_DECL_NSICONTENTPOLICY</font></font><font><font>
- ...</font></font><font><font>
-}</font></font>
-<font><font>
-//這到您的實現文件 </font></font><font><font>
-NS_IMPL_ISUPPORTSn(MyClass的,nsISupports,nsIContentPolicy,...)</font></font>
-</pre>
-
-<p><font><font>{{NoteStart()}}之前,你能接受的通知,你必須註冊你的插件{{接口(“nsICategoryManager”)}}。</font><font>見下面的例子。{{NoteEnd()}}</font></font></p>
-
-<pre class="brush: cpp"><font><font><font><font>字符*以前= nsnull; </font></font></font></font>
-<font><font><font><font>
-nsCOMPtr的的&lt;nsICategoryManager&gt; catman; </font></font></font></font>
-<font><font><font><font>
-servman-&gt; GetServiceByContractID(NS_CATEGORYMANAGER_CONTRACTID,</font></font></font></font><font><font><font><font>
-NS_GET_IID(nsICategoryManager)</font></font></font></font><font><font><font><font>
-getter_AddRefs(catman)); </font></font></font></font>
-<font><font><font><font>
-RV = catman-&gt; AddCategoryEntry(“內容的策略”,</font></font></font></font><font><font><font><font>
-COMPONENT_CLASSNAME,</font></font></font></font><font><font><font><font>
-COMPONENT_CONTRACTID,</font></font></font></font><font><font><font><font>
-PR_TRUE, </font></font></font></font><font><font><font><font>
-PR_TRUE,</font><font>&</font></font></font></font><font><font><font><font>
-以前);</font></font></font></font></pre>
-
-<p><font><font>JavaScript開發人員也可以</font></font><a href="/en/XUL_School/Intercepting_Page_Loads#Content_Policy" title="EN / XUL學校/攔截頁面加載#內容策略"><font><font>實現XPCOM組件</font></font></a><font><font>擴展</font></font><code>nsIContentPolicy</code><font><font>。</font></font></p>
diff --git a/files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/howto/index.html b/files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/howto/index.html
deleted file mode 100644
index fafd0dffa0..0000000000
--- a/files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/howto/index.html
+++ /dev/null
@@ -1,199 +0,0 @@
----
-title: 'Autoconfig: How to create a configuration file'
-slug: Mozilla/Thunderbird/Autoconfiguration/FileFormat/HowTo
-translation_of: Mozilla/Thunderbird/Autoconfiguration/FileFormat/HowTo
----
-<h2 id="Definition">Definition</h2>
-<h2 id="Authoritative_definition"><a class="link-https" href="https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat" title="https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat">Authoritative definition</a></h2>
-<h2 id="Example">Example</h2>
-<h2 id="Real-world_example"><a class="link-https" href="https://live.mozillamessaging.com/autoconfig/v1.1/freenet.de" title="https://live.mozillamessaging.com/autoconfig/v1.1/freenet.de">Real-world example</a></h2>
-<h2 id="sect1"> </h2>
-<h2 id="&lt;xml_version1.0_encodingUTF-8>">&lt;?xml version="1.0" encoding="UTF-8"?&gt;</h2>
-<h2 id="&lt;clientConfig_version1.1>_&lt;emailProvider_idfreenet.de>_&lt;domain>freenet.de&lt;domain>_&lt;displayName>Freenet_Mail&lt;displayName>_&lt;displayShortName>Freenet&lt;displayShortName>_&lt;incomingServer_typeimap>_&lt;hostname>imap.freenet.de&lt;hostname>_&lt;port>993&lt;port>_&lt;socketType>SSL&lt;socketType>_&lt;authentication>password-encrypted&lt;authentication>_&lt;username>EMAILADDRESS&lt;username>_&lt;incomingServer>_&lt;incomingServer_typeimap>_&lt;hostname>imap.freenet.de&lt;hostname>_&lt;port>143&lt;port>_&lt;socketType>STARTTLS&lt;socketType>_&lt;authentication>password-encrypted&lt;authentication>_&lt;username>EMAILADDRESS&lt;username>_&lt;incomingServer>_&lt;incomingServer_typepop3>_&lt;hostname>pop.freenet.de&lt;hostname>_&lt;port>995&lt;port>_&lt;socketType>SSL&lt;socketType>_&lt;authentication>password-cleartext&lt;authentication>_&lt;username>EMAILADDRESS&lt;username>_&lt;incomingServer>_&lt;incomingServer_typepop3>_&lt;hostname>pop.freenet.de&lt;hostname>_&lt;port>110&lt;port>_&lt;socketType>STARTTLS&lt;socketType>_&lt;authentication>password-cleartext&lt;authentication>_&lt;username>EMAILADDRESS&lt;username>_&lt;incomingServer>_&lt;outgoingServer_typesmtp>_&lt;hostname>smtp.freenet.de&lt;hostname>_&lt;port>465&lt;port>_&lt;socketType>SSL&lt;socketType>_&lt;authentication>password-encrypted&lt;authentication>_&lt;username>EMAILADDRESS&lt;username>_&lt;outgoingServer>_&lt;outgoingServer_typesmtp>_&lt;hostname>smtp.freenet.de&lt;hostname>_&lt;port>587&lt;port>_&lt;socketType>STARTTLS&lt;socketType>_&lt;authentication>password-encrypted&lt;authentication>_&lt;username>EMAILADDRESS&lt;username>_&lt;outgoingServer>_&lt;documentation_urlhttpkundenservice.freenet.dehilfeemailprogrammeconfigindex.html>_&lt;descr_langde>Allgemeine_Beschreibung_der_Einstellungen&lt;descr>_&lt;descr_langen>Generic_settings_page&lt;descr>_&lt;documentation>_&lt;documentation_urlhttpkundenservice.freenet.dehilfeemailprogrammeconfigthunderbirdimap-thunderbirdimapindex.html>_&lt;descr_langde>TB_2.0_IMAP-Einstellungen&lt;descr>_&lt;descr_langen>TB_2.0_IMAP_settings&lt;descr>_&lt;documentation>_&lt;emailProvider>_&lt;clientConfig>">&lt;<span class="start-tag">clientConfig</span><span class="attribute-name"> version</span>=<span class="attribute-value">"1.1"</span>&gt;<br>
-   &lt;<span class="start-tag">emailProvider</span><span class="attribute-name"> id</span>=<span class="attribute-value">"freenet.de"</span>&gt;<br>
-     &lt;<span class="start-tag">domain</span>&gt;freenet.de&lt;/<span class="end-tag">domain</span>&gt;<br>
-     &lt;<span class="start-tag">displayName</span>&gt;Freenet Mail&lt;/<span class="end-tag">displayName</span>&gt;<br>
-     &lt;<span class="start-tag">displayShortName</span>&gt;Freenet&lt;/<span class="end-tag">displayShortName</span>&gt;<br>
-     &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"imap"</span>&gt;<br>
-       &lt;<span class="start-tag">hostname</span>&gt;imap.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;<br>
-       &lt;<span class="start-tag">port</span>&gt;993&lt;/<span class="end-tag">port</span>&gt;<br>
-       &lt;<span class="start-tag">socketType</span>&gt;SSL&lt;/<span class="end-tag">socketType</span>&gt;<br>
-       &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;<br>
-       &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;<br>
-     &lt;/<span class="end-tag">incomingServer</span>&gt;<br>
-     &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"imap"</span>&gt;<br>
-       &lt;<span class="start-tag">hostname</span>&gt;imap.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;<br>
-       &lt;<span class="start-tag">port</span>&gt;143&lt;/<span class="end-tag">port</span>&gt;<br>
-       &lt;<span class="start-tag">socketType</span>&gt;STARTTLS&lt;/<span class="end-tag">socketType</span>&gt;<br>
-       &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;<br>
-       &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;<br>
-     &lt;/<span class="end-tag">incomingServer</span>&gt;<br>
-     &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"pop3"</span>&gt;<br>
-       &lt;<span class="start-tag">hostname</span>&gt;pop.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;<br>
-       &lt;<span class="start-tag">port</span>&gt;995&lt;/<span class="end-tag">port</span>&gt;<br>
-       &lt;<span class="start-tag">socketType</span>&gt;SSL&lt;/<span class="end-tag">socketType</span>&gt;<br>
-       &lt;<span class="start-tag">authentication</span>&gt;password-cleartext&lt;/<span class="end-tag">authentication</span>&gt;<br>
-       &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;<br>
-     &lt;/<span class="end-tag">incomingServer</span>&gt;<br>
-     &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"pop3"</span>&gt;<br>
-       &lt;<span class="start-tag">hostname</span>&gt;pop.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;<br>
-       &lt;<span class="start-tag">port</span>&gt;110&lt;/<span class="end-tag">port</span>&gt;<br>
-       &lt;<span class="start-tag">socketType</span>&gt;STARTTLS&lt;/<span class="end-tag">socketType</span>&gt;<br>
-       &lt;<span class="start-tag">authentication</span>&gt;password-cleartext&lt;/<span class="end-tag">authentication</span>&gt;<br>
-       &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;<br>
-     &lt;/<span class="end-tag">incomingServer</span>&gt;<br>
-     &lt;<span class="start-tag">outgoingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"smtp"</span>&gt;<br>
-       &lt;<span class="start-tag">hostname</span>&gt;smtp.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;<br>
-       &lt;<span class="start-tag">port</span>&gt;465&lt;/<span class="end-tag">port</span>&gt;<br>
-       &lt;<span class="start-tag">socketType</span>&gt;SSL&lt;/<span class="end-tag">socketType</span>&gt;<br>
-       &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;<br>
-       &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;<br>
-     &lt;/<span class="end-tag">outgoingServer</span>&gt;<br>
-     &lt;<span class="start-tag">outgoingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"smtp"</span>&gt;<br>
-       &lt;<span class="start-tag">hostname</span>&gt;smtp.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;<br>
-       &lt;<span class="start-tag">port</span>&gt;587&lt;/<span class="end-tag">port</span>&gt;<br>
-       &lt;<span class="start-tag">socketType</span>&gt;STARTTLS&lt;/<span class="end-tag">socketType</span>&gt;<br>
-       &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;<br>
-       &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;<br>
-     &lt;/<span class="end-tag">outgoingServer</span>&gt;<br>
-     &lt;<span class="start-tag">documentation</span><span class="attribute-name"> url</span>=<span class="attribute-value">"http://kundenservice.freenet.de/hilfe/email/programme/config/index.html"</span>&gt;<br>
-       &lt;<span class="start-tag">descr</span><span class="attribute-name"> lang</span>=<span class="attribute-value">"de"</span>&gt;Allgemeine Beschreibung der Einstellungen&lt;/<span class="end-tag">descr</span>&gt;<br>
-       &lt;<span class="start-tag">descr</span><span class="attribute-name"> lang</span>=<span class="attribute-value">"en"</span>&gt;Generic settings page&lt;/<span class="end-tag">descr</span>&gt;<br>
-     &lt;/<span class="end-tag">documentation</span>&gt;<br>
-     &lt;<span class="start-tag">documentation</span><span class="attribute-name"> url</span>=<span class="attribute-value">"http://kundenservice.freenet.de/hilfe/email/programme/config/thunderbird/imap-thunderbird/imap/index.html"</span>&gt;<br>
-       &lt;<span class="start-tag">descr</span><span class="attribute-name"> lang</span>=<span class="attribute-value">"de"</span>&gt;TB 2.0 IMAP-Einstellungen&lt;/<span class="end-tag">descr</span>&gt;<br>
-       &lt;<span class="start-tag">descr</span><span class="attribute-name"> lang</span>=<span class="attribute-value">"en"</span>&gt;TB 2.0 IMAP settings&lt;/<span class="end-tag">descr</span>&gt;<br>
-     &lt;/<span class="end-tag">documentation</span>&gt;<br>
-   &lt;/<span class="end-tag">emailProvider</span>&gt;<br>
- &lt;/<span class="end-tag">clientConfig</span>&gt;</h2>
-<h2 id="How_to_probe_mail_servers">How to probe mail servers</h2>
-<h2 id="To_determine_a_server's_capabilities_you_can_contact_the_server_directly_and_talk_the_POPIMAPSMTP_protocol_manually_(assuming_you_already_know_the_hostname)._For_non-SSL_use_netcat_-v_hostname_port_(preferred)_or_telnet_hostname_port_as_client.">To determine a server's capabilities, you can contact the server directly and talk the POP/IMAP/SMTP protocol manually (assuming you already know the hostname).<br>
- For non-SSL, use <strong><code>netcat -v <em>hostname</em> <em>port</em></code></strong> (preferred) or <code>telnet <em>hostname</em> <em>port</em></code> as "client".</h2>
-<ul>
- <li>
- <h2 id="POP3_port_110_when_you_see_OK_WEB.DE_POP3-Server_or_similar_enter_CAPA_hit_return.">POP3, port 110: when you see <code>+OK WEB.DE POP3-Server</code> or similar, enter <code><strong>CAPA</strong></code>, hit return.</h2>
- </li>
- <li>
- <h2 id="IMAP_port_143_when_you_see_*_OK_mwinf2j04_IMAP4_server_ready_or_similar_enter_1_CAPABILITY_hit_return.">IMAP, port 143: when you see <code>* OK mwinf2j04 IMAP4 server ready</code> or similar, enter <code><strong>1 CAPABILITY</strong></code>, hit return.</h2>
- </li>
- <li>
- <h2 id="SMTP_port_587_or_25_when_you_see_220_mail.gmx.net_GMX_Mailservices_ESMTP_or_similar_enter_EHLO_example.net_hit_return.">SMTP, port 587 or 25: when you see <code>220 mail.gmx.net GMX Mailservices ESMTP</code> or similar, enter <code><strong>EHLO example.net</strong></code>, hit return.</h2>
- </li>
-</ul>
-<h2 id="In_all_cases_the_server_should_respond_with_a_list_of_capabilities.">In all cases, the server should respond with a list of capabilities.</h2>
-<h2 id="SSL_STARTTLS">SSL / STARTTLS</h2>
-<h2 id="There_are_2_SSL_variants_normal_SSL_and_STARTTLS.">There are 2 SSL variants: normal SSL and STARTTLS.</h2>
-<h2 id="Normal_SSL">Normal SSL</h2>
-<h2 id="The_old-style_SSL_(including_TLS_which_is_just_the_new_name_for_SSL)_has_a_special_port">The old-style SSL (including TLS, which is just the new name for SSL) has a special port:</h2>
-<ul>
- <li>
- <h2 id="POP3_via_SSL_port_995">POP3 via SSL: port 995</h2>
- </li>
- <li>
- <h2 id="IMAP_via_SSL_port_993">IMAP via SSL: port 993</h2>
- </li>
- <li>
- <h2 id="SMTP_via_SSL_port_465">SMTP via SSL: port 465</h2>
- </li>
-</ul>
-<h2 id="On_Linux_you_can_contact_the_server_via">On Linux, you can contact the server via</h2>
-<pre></pre>
-<h2 id="openssl_s_client_-connect_hostnameport"><strong>openssl s_client -connect <em>hostname</em>:<em>port</em></strong></h2>
-<h2 id="You_should_see_output_about_the_SSL_handshake_and_the_certificate._Important_is_what_is_listed_as_CN._This_must_be_the_same_as_the_hostname_that_you_contacted_otherwise_the_certificate_is_not_valid_(or_you_need_to_use_another_hostname)._If_you_see_nothing_then_probably_the_server_does_not_support_SSL._After_that_you_can_have_the_same_protocol_exchange_as_with_netcat_on_standard_ports_as_listed_above.">You should see output about the SSL handshake and the certificate. Important is what is listed as "CN=". This must be the same as the hostname that you contacted, otherwise the certificate is not valid (or you need to use another hostname).<br>
- If you see nothing, then probably the server does not support SSL.<br>
- After that, you can have the same protocol exchange as with netcat on standard ports, as listed above.</h2>
-<h2 id="STARTTLS">STARTTLS</h2>
-<h2 id="STARTTLS_is_a_special_new_form_of_SSL_which_works_on_the_standard_ports_(e.g._port_143_for_IMAP)._You_can_contact_the_server_via_netcat_as_mentioned_above._If_you_see_STARTTLS_(for_IMAP_SMTP)_or_STLS_(for_POP)_listed_as_one_of_the_capabilities_the_server_should_support_STARTTLS._To_try_it_out_on_Linux_you_can_contact_the_server_via">STARTTLS is a special, new form of SSL, which works on the standard ports (e.g. port 143 for IMAP). You can contact the server via netcat as mentioned above. If you see "STARTTLS" (for IMAP, SMTP) or "STLS" (for POP) listed as one of the capabilities, the server should support STARTTLS.<br>
- To try it out, on Linux, you can contact the server via</h2>
-<h2 id="sect2"> </h2>
-<h2 id="openssl_s_client_-connect_hostnameport_-starttls_proto">openssl s_client -connect <em>hostname</em>:<em>port</em> -starttls <em>proto</em></h2>
-<h2 id="...where_proto_is_imap_pop3_or_smtp._For_example">...where "proto" is <code>imap</code>, <code>pop3</code> or <code>smtp</code>. For example:</h2>
-<pre></pre>
-<h2 id="openssl_s_client_-connect_imap.example.com143_-starttls_imap"><strong>openssl s_client -connect <em>imap.example.com</em>:<em>143</em> -starttls <em>imap</em></strong></h2>
-<h2 id="You_should_get_the_same_response_as_described_above_for_openssl.">You should get the same response as described above for openssl.</h2>
-<h2 id="Configuration_file_format">Configuration file format</h2>
-<h2 id="Add_the_appropriate_port_and_socket_type_for_each_server_depending_on_protocol_and_SSL_support._For_example_for_IMAP_with_SSL">Add the appropriate port and socket type for each server, depending on protocol and SSL support. For example,<br>
- for IMAP with SSL:</h2>
-<h2 id="sect3"> </h2>
-<h2 id="&lt;port>993&lt;port>">&lt;port&gt;993&lt;port&gt;</h2>
-<h2 id="&lt;socketType>SSL&lt;socketType>">&lt;socketType&gt;SSL&lt;/socketType&gt;</h2>
-<h2 id="for_IMAP_with_STARTTLS">for IMAP with STARTTLS:</h2>
-<h2 id="sect4"> </h2>
-<h2 id="&lt;port>143&lt;port>_&lt;socketType>STARTTLS&lt;socketType>">&lt;port&gt;143&lt;port&gt;<br>
- &lt;socketType&gt;STARTTLS&lt;/socketType&gt;</h2>
-<h2 id="for_IMAP_without_any_SSL_(deprecated!)">for IMAP without any SSL (deprecated!):</h2>
-<h2 id="sect5"> </h2>
-<h2 id="&lt;port>143&lt;port>">&lt;port&gt;143&lt;port&gt;</h2>
-<h2 id="&lt;socketType>plain&lt;socketType>">&lt;socketType&gt;plain&lt;/socketType&gt;</h2>
-<h2 id="Use_SSL">Use SSL</h2>
-<h2 id="Please_do_not_submit_or_serve_any_configurations_without_SSL!_There's_no_reason_in_2010_why_users_still_need_to_read_mail_entirely_unprotected._If_you_are_an_ISP_and_think_the_server_load_is_too_high_try_adding_an_SSL_accelerator._They_are_cheap_and_widely_used._In_fact_even_most_freemail_(!)_providers_these_days_support_SSL_so_if_users_pay_you_money_for_ISP_service_that's_all_the_more_reason_to_give_them_proper_service._But_first_simply_try_to_enable_software_SSL_-_small_servers_may_be_fine_with_SSL_and_without_any_additional_installations.">Please do not submit or serve any configurations without SSL! There's no reason in 2010 why users still need to read mail entirely unprotected.<br>
- If you are an ISP and think the server load is too high, try adding an SSL accelerator. They are cheap and widely used. In fact, even most freemail (!) providers these days support SSL, so if users pay you money for ISP service, that's all the more reason to give them proper service. But first simply try to enable software SSL - small servers may be fine with SSL and without any additional installations.</h2>
-<h2 id="Valid_certificate">Valid certificate</h2>
-<h2 id="Either_way_be_sure_to_use_a_valid_certificate">Either way, be sure to use a valid certificate:</h2>
-<ul>
- <li>
- <h2 id="issued_by_a_CA_recognized_by_Firefox_Thunderbird">issued by a CA recognized by Firefox / Thunderbird</h2>
- </li>
- <li>
- <h2 id="not_expired">not expired</h2>
- </li>
- <li>
- <h2 id="the_CN_in_the_cert_must_match_the_hostname_that_Thunderbird_contacts_and_that_is_listed_as_&lt;hostname>_in_the_configuration_file._If_they_don't_match_Thunderbird_must_assume_that_the_user_may_be_under_attack_otherwise_the_SSL_guarantees_no_longer_hold._Thunderbird_either_warns_the_user_or_ignores_the_server._(Note_that_you_can_get_certificates_for_free_these_days_for_example_from_startssl.com.)">the CN in the cert must match the hostname that Thunderbird contacts and that is listed as &lt;hostname&gt; in the configuration file. If they don't match, Thunderbird must assume that the user may be under attack, otherwise the SSL guarantees no longer hold. Thunderbird either warns the user or ignores the server. (Note that you can get certificates for free these days, for example from startssl.com.)</h2>
- </li>
-</ul>
-<h2 id="Authentication">Authentication</h2>
-<h2 id="Probe_the_mail_server_as_explained_above_for_STARTTLS._If_you_see_CRAM-MD5_or_APOP_in_the_response_the_server_should_support_encrypted_passwords._If_you_only_see_AUTH_LOGIN_andor_PLAIN_or_no_AUTH_at_all_the_server_probably_does_not_support_secure_authentication._In_the_former_case_select_Encrypted_passwords_as_Authentication_method_(in_Thunderbird_Account_Settings_UI_incoming_server_and_SMTP_server)_and_test_whether_you_can_actually_log_in_with_a_real_account_(because_some_servers_are_unfortunately_broken_with_regards_to_authentication_often_due_to_a_wrong_or_misconfigured_SASL_installation)."><span class="external free">Probe the mail server, as explained above for STARTTLS.</span> If you see <code>CRAM-MD5</code> or <code>APOP</code> in the response, the server should support encrypted passwords. If you <em>only</em> see <code>AUTH</code> <code>LOGIN</code> and/or <code>PLAIN</code>, or no <code>AUTH</code> at all, the server probably does not support secure authentication. In the former case, select "Encrypted passwords" as "Authentication method" (in Thunderbird Account Settings UI, incoming server and SMTP server), and test whether you can actually log in with a real account (because some servers are unfortunately broken with regards to authentication, often due to a wrong or misconfigured SASL installation).</h2>
-<h2 id="Configuration_file_format_2">Configuration file format</h2>
-<h2 id="In_the_configuration_file_for_each_IMAP_POP_and_SMTP_server_you_need_to_specify_the_authentication_method._For_plaintext_passwords">In the configuration file, for each IMAP, POP and SMTP server, you need to specify the authentication method.<br>
- <br>
- For plaintext passwords:</h2>
-<h2 id="sect6"> </h2>
-<h2 id="&lt;authentication>password-cleartext&lt;authentication>">&lt;authentication&gt;password-cleartext&lt;/authentication&gt;</h2>
-<h2 id="For_CRAM-MD5">For CRAM-MD5:</h2>
-<h2 id="sect7"> </h2>
-<h2 id="&lt;authentication>password-encrypted&lt;authentication>">&lt;authentication&gt;password-encrypted&lt;/authentication&gt;</h2>
-<h2 id="Discouraged_settings_(SMTP_only)_If_the_SMTP_server_can_only_be_used_after_checking_incoming_mail_please_use"><br>
- Discouraged settings (SMTP only):<br>
- If the SMTP server can only be used after checking incoming mail, please use</h2>
-<h2 id="sect8"> </h2>
-<h2 id="&lt;authentication>smtp-after-pop&lt;authentication>">&lt;authentication&gt;smtp-after-pop&lt;/authentication&gt;</h2>
-<h2 id="Note_that_RFC_4409_disallows_that_and_requires_the_customer-facing_SMTP_server_to_support_proper_authentication_via_AUTH._If_the_SMTP_server_can_only_be_used_within_the_ISP's_network_and_requires_no_authentication_use">Note that RFC 4409 disallows that and requires the customer-facing SMTP server to support proper authentication via AUTH.<br>
- If the SMTP server can only be used within the ISP's network, and requires no authentication, use:</h2>
-<h2 id="sect9"> </h2>
-<h2 id="&lt;authentication>client-IP-address&lt;authentication>">&lt;authentication&gt;client-IP-address&lt;/authentication&gt;</h2>
-<h2 id="or_if_it_requires_authentication_in_addition_to_the_user_being_in_the_ISP_network_use_e.g.">or, if it requires authentication in addition to the user being in the ISP network, use e.g.:</h2>
-<h2 id="sect10"> </h2>
-<h2 id="&lt;authentication>password-cleartext&lt;authentication>_2">&lt;authentication&gt;password-cleartext&lt;/authentication&gt;</h2>
-<h2 id="&lt;restriction>client-IP-address&lt;restriction>">&lt;restriction&gt;client-IP-address&lt;/restriction&gt;</h2>
-<h2 id="However_that_means_that_users_on_the_road_or_in_the_office_are_unable_to_send_mail_which_is_a_real_problem_for_many_of_our_users._This_violates_RFC_4409_as_well_and_is_an_outdated_configuration._Please_try_find_a_configuration_that_works_in_all_cases_for_the_sake_of_the_users.">However, that means that users on the road or in the office are unable to send mail, which is a real problem for many of our users. This violates RFC 4409 as well and is an outdated configuration. Please try find a configuration that works in all cases, for the sake of the users.</h2>
-<h2 id="Please_support_MD5_passwords">Please support MD5 passwords</h2>
-<h2 id="Please_support_authentication_with_CRAM-MD5._It_is_simple_to_implement_and_to_set_up_and_you_can_still_use_RADIUS_or_a_database_that_stores_passwords_in_plaintext_so_you_don't_need_to_make_changes_to_your_mail_server_or_authentication_infrastructure_apart_from_installing_some_software_and_configuring_it_correctly._CRAM-MD5_is_particularly_important_when_no_SSL_is_used_Never_make_users_send_their_passwords_in_plaintext_over_the_network!_(Not_even_in_your_ISP_network.)_We_warn_users_in_the_Mail_Account_Creation_dialog_about_such_insecure_configurations_and_we_reserve_the_right_to_block_them_in_the_future._As_an_ISP_you_should_ideally_store_passwords_in_encrypted_format_which_removes_the_risk_of_mass_password_theft_(and_possibly_reuse_on_other_sites)_if_somebody_hacks_your_servers._You_can_still_support_plaintext_passwords_in_this_case_and_encrypt_passwords_on_the_fly_before_comparing._(Users_who_use_plaintext_passwords_would_still_be_somewhat_exposed_but_at_least_you_don't_have_the_risk_of_the_whole_plaintext_password_database_being_stolen.)_You_can_use_both_plaintext_and_encrypted_authentication_transmission_with_plaintext_or_encrypted_password_databases_-_the_two_issues_are_independent.">Please support authentication with CRAM-MD5. It is simple to implement, and to set up, and you can still use RADIUS or a database that stores passwords in plaintext, so you don't need to make changes to your mail server or authentication infrastructure apart from installing some software and configuring it correctly. CRAM-MD5 is particularly important when no SSL is used: Never make users send their passwords in plaintext over the network! (Not even in your ISP network.) We warn users in the Mail Account Creation dialog about such insecure configurations, and we reserve the right to block them in the future.<br>
- <br>
- <span class="external free">As an ISP, you should ideally store passwords in encrypted format, which removes the risk of mass password theft (and possibly reuse on other sites) if somebody hacks your servers. You can still support plaintext passwords in this case, and encrypt passwords on the fly before comparing. (Users who use plaintext passwords would still be somewhat exposed, but at least you don't have the risk of the whole plaintext password database being stolen.) You can use both plaintext and encrypted authentication transmission with plaintext or encrypted password databases - the two issues are independent.</span></h2>
-<h2 id="Username">Username</h2>
-<h2 id="If_the_user's_IMAP_login_name_is_the_same_as_his_email_address_(for_example_if_fredexample.com_is_the_login_name)_add">If the user's IMAP login name is the same as his email address (for example, if "<a class="link-mailto" href="mailto:fred@example.com" rel="freelink">fred@example.com</a>" is the login name), add:</h2>
-<h2 id="sect11"> </h2>
-<h2 id="&lt;username>EMAILADDRESS&lt;username>">&lt;username&gt;%EMAILADDRESS%&lt;/username&gt;</h2>
-<h2 id="Note_Use_EMAILADDRESS_as_literal._Thunderbird_will_replace_it_with_the_email_address_that_the_user_entered._Same_for_EMAILLOCALPART_and_other_placeholders."><span class="external free">Note: Use</span> %EMAILADDRESS% as literal. Thunderbird will replace it with the email address that the user entered. Same for %EMAILLOCALPART% and other placeholders.</h2>
-<h2 id="If_the_login_name_is_the_same_as_the_first_segment_before_the_of_the_email_address_(for_example_fred_for_fredexample.com)_use"><span class="external free">If the login name is the same as the first segment before the @ of the email address (for example, "fred" for "<a class="link-mailto" href="mailto:fred@example.com" rel="freelink">fred@example.com</a>"), use:</span></h2>
-<h2 id="sect12"> </h2>
-<h2 id="&lt;username>EMAILLOCALPART&lt;username>">&lt;username&gt;%EMAILLOCALPART%&lt;/username&gt;</h2>
-<h2 id="Aliases_or_username_not_part_of_email_address">Aliases, or username not part of email address</h2>
-<h2 id="Note_that_the_above_must_be_true_for_any_email_address_that_the_user_would_set_up_-_even_for_aliases._You_can_ignore_aliases_like_info_if_that's_an_alias_for_fred_(or_both_fred_and_wilma)_and_Fred_would_set_up_fredexample.com_in_Thunderbird_not_info._If_however_Fred_can_set_up_heroexample.com_as_alias_for_fredexample.com_and_neither_hero_nor_heroexample.com_would_work_as_login_name_on_your_IMAP_server_you_need_to_set_up_a_lookup_of_alias_->_username_on_your_autoconfig_server._So_if_you_get_a_request_for_&lt;httpautoconfig.example.commailc...roexample.com>_your_autconfig_server_must_have_a_script_which_responds_to_mailconfig-v1.1.xml_and_returns_the_concrete_username_for_example"><span class="external free">Note that the above must be true for any email address that the user would set up - even for aliases.<br>
- <br>
- You can ignore aliases like info@, if that's an alias for fred@ (or both fred@ and wilma@) and Fred would set up <a class="link-mailto" href="mailto:fred@example.com" rel="freelink">fred@example.com</a> in Thunderbird, not info@.<br>
- <br>
- If, however, Fred can set up <a class="link-mailto" href="mailto:hero@example.com" rel="freelink">hero@example.com</a> as alias for <a class="link-mailto" href="mailto:fred@example.com" rel="freelink">fred@example.com</a>, and neither "hero" nor "<a class="link-mailto" href="mailto:hero@example.com" rel="freelink">hero@example.com</a>" would work as login name on your IMAP server, you need to set up a lookup of alias -&gt; username on your autoconfig server. So, if you get a request for &lt;<a class="external" href="http://autoconfig.example.com/mail/config-v1.1.xml?emailaddress=hero@example.com" rel="freelink">http://autoconfig.example.com/mail/c...ro@example.com</a>&gt;, your autconfig server must have a script which responds to /mail/config-v1.1.xml and returns the concrete username, for example:</span></h2>
-<h2 id="sect13"> </h2>
-<h2 id="&lt;username>fred&lt;username>">&lt;username&gt;fred&lt;/username&gt;</h2>
-<h2 id="..._(or_&lt;username>fredexample.com&lt;username>_as_appropriate)_for_heroexample.com._This_is_the_only_way_to_enable_automatic_configuration_without_users_having_to_remember_what_their_primary_login_name_was_which_is_a_serious_problem_in_practical_experience._Even_if_you_have_told_them_all_the_necessary_information_in_your_welcome_letter_they_usually_cannot_find_the_letter._That's_exactly_where_autoconfiguration_tries_to_help.">... (or &lt;username&gt;<a class="link-mailto" href="mailto:fred@example.com" rel="freelink">fred@example.com</a>&lt;/username&gt;, as appropriate) for <a class="link-mailto" href="mailto:hero@example.com" rel="freelink">hero@example.com</a>. This is the only way to enable automatic configuration without users having to remember what their primary login name was, which is a serious problem in practical experience. Even if you have told them all the necessary information in your welcome letter, they usually cannot find the letter. That's exactly where autoconfiguration tries to help.</h2>
-<h2 id="Enable_visiturl">Enable visiturl</h2>
-<h2 id="Some_providers_do_not_provide_IMAP_or_POP_service_by_default_but_require_it_to_be_enabled_via_a_web_UI._If_that_is_the_case_add_the_URL_that_a_logged-in_user_would_use_into_this_field_and_the_application_can_prompt_the_user_to_visit_it.">Some providers do not provide IMAP or POP service by default, but require it to be enabled via a web UI. If that is the case, add the URL that a logged-in user would use into this field, and the application can prompt the user to visit it.</h2>
-<h2 id="This_is_not_yet_supported_by_Thunderbird_3.1_but_should_be_in_the_future_so_please_add_this_critical_information_where_it_applies.">This is <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=586364" title="https://bugzilla.mozilla.org/show_bug.cgi?id=586364">not yet supported</a> by Thunderbird 3.1, but should be in the future, so please add this critical information where it applies.</h2>
-<h2 id="If_you_are_an_ISP_please_by_all_means_avoid_this._It's_one_of_those_walls_against_which_users_run_the_hard_way.">If you are an ISP, please by all means avoid this. It's one of those "walls" against which users run the hard way.</h2>
-<h2 id="Documentation_URL">Documentation URL</h2>
-<h2 id="If_the_configuration_is_(partially)_based_on_a_help_webpage_of_the_ISP_that_describes_the_configuration_that_end_users_should_use_you_can_record_its_URL_here._You_may_add_several_of_them_as_several_elements._It_is_for_informational_purposes_only_and_mainly_for_the_maintenance_of_the_config_file_the_client_currently_does_not_use_them_at_all.">If the configuration is (partially) based on a help webpage of the ISP that describes the configuration that end users should use, you can record its URL here. You may add several of them, as several elements. It is for informational purposes only and mainly for the maintenance of the config file, the client currently does not use them at all.</h2>
-<h2 class="syntaxbox" id="If_your_URL_contains_ampersands_()_please_remember_to_replace_them_with_HTML_entities_(amp)._For_example">If your URL contains ampersands (<code>&amp;</code>), please remember to replace them with HTML entities (<code>&amp;amp;</code>). For example:</h2>
-<h2 id="sect14"> </h2>
-<h2 id="&lt;documentation_urlhttpexample.comhelp.phpclientthunderbirdamplangen>">&lt;<span class="start-tag">documentation</span><span class="attribute-name"> url</span>="http://example.com/help.php?client=thunderbird<span style="color: #b22222;"><strong>&amp;amp;</strong></span>lang=en"/&gt;</h2>
-<h2 class="syntaxbox" id="Otherwise_your_XML_file_will_be_incorrect_and_Thunderbird_will_neither_be_able_to_parse_it_nor_to_return_any_error_message.">Otherwise your XML file will be incorrect and Thunderbird will neither be able to parse it, nor to return any error message.</h2>
diff --git a/files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/index.html b/files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/index.html
deleted file mode 100644
index 76a90f2777..0000000000
--- a/files/zh-tw/mozilla/thunderbird/autoconfiguration/fileformat/index.html
+++ /dev/null
@@ -1,10 +0,0 @@
----
-title: Autoconfig file format
-slug: Mozilla/Thunderbird/Autoconfiguration/FileFormat
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Thunderbird/Autoconfiguration/FileFormat
----
-<ul> <li><a href="/en/Thunderbird/Autoconfiguration/FileFormat/HowTo" title="en/Thunderbird/Autoconfiguration/FileFormat/HowTo">How to create a config file</a></li> <li><a href="/en/Thunderbird/Autoconfiguration/FileFormat/Definition" title="en/Thunderbird/Autoconfiguration/FileFormat/Definition">File format definition</a></li>
-</ul>
diff --git a/files/zh-tw/mozilla/thunderbird/autoconfiguration/index.html b/files/zh-tw/mozilla/thunderbird/autoconfiguration/index.html
deleted file mode 100644
index 84cc17039c..0000000000
--- a/files/zh-tw/mozilla/thunderbird/autoconfiguration/index.html
+++ /dev/null
@@ -1,113 +0,0 @@
----
-title: Autoconfiguration in Thunderbird
-slug: Mozilla/Thunderbird/Autoconfiguration
-tags:
- - Administration
- - NeedsTranslation
- - TopicStub
- - enterprise
-translation_of: Mozilla/Thunderbird/Autoconfiguration
----
-<p>Author: Ben Bucksch<br>
- Please do not change this document without consulting the author</p>
-<p>Thunderbird 3.1 and later (and 3.0 to some degree) includes mail account autoconfiguration functionality. The goal of autoconfiguration is to make it very easy for users to configure the connection of Thunderbird to their email servers. In many cases, people should be able to download and install Thunderbird, enter their real name, email address and password in the Account Setup Wizard and have a fully functioning mail client and get and send their mail as securely as possible.</p>
-<p>See also:</p>
-<ul>
- <li>the <a class="link-https" href="https://wiki.mozilla.org/Thunderbird:Autoconfiguration" title="https://wiki.mozilla.org/Thunderbird:Autoconfiguration">project page on the Mozilla wiki</a> for background, design, implementation and project details</li>
- <li>for instructions for users, see <a class="external" href="http://support.mozillamessaging.com/en-US/kb/Automatic+Account+Configuration" title="http://support.mozillamessaging.com/en-US/kb/Automatic+Account+Configuration">Automatic Account Configuration</a> on the Thunderbird Knowledge Base.</li>
- <li>the configuration file <a href="/en/Thunderbird/Autoconfiguration/FileFormat/HowTo" title="en/Thunderbird/Autoconfiguration/FileFormat/HowTo">description</a> and <a href="/en/Thunderbird/Autoconfiguration/FileFormat/Definition" title="en/Thunderbird/Autoconfiguration/FileFormat/Definition">definition</a></li>
-</ul>
-<p>This document describes how Autoconfiguration in Thunderbird works, and what to do to allow mail servers to be autoconfigured.</p>
-<h1 id="Mechanisms">Mechanisms</h1>
-<p>Thunderbird gets the server settings via different means, each of which is intended for different cases:</p>
-<ul>
- <li>ISPDB<br>
- The ISPDB is a central database, currently hosted by Mozilla Messaging, but free to use for any client. It contains settings for the world's largest ISPs. We hope that the database will soon have enough information to autoconfigure approximately 50% of our user's email accounts.<br>
- It was added merely because we cannot assume that all big ISPs (including Microsoft) will immediately set up a configuration server for Thunderbird.</li>
- <li>Configuration server at ISP<br>
- ISPs have the option to provide their configuration information themselves directly to users, by setting up a web server at autoconfig.&lt;domain&gt;, which simply returns a static XML file with the configuration, as described below. For more complicated setups, for example when the login name does not appear in the the email address, the XML file can also be generated by the ISP. In such complicated cases, this is the only way to allow an automatic setup.</li>
- <li>Configuration file on harddisk<br>
- Administrators may place a configuration file in the Thunderbird installation folder. This is mainly intended for companies who install Thunderbird on their employees' computers and want to enable easy account setup without having to set up a configuration server. This method is not practical for other use cases, because it is difficult to update the configuration file. Therefore, public ISPs should use a configuration server.</li>
- <li>Guessing<br>
- If all other mechanisms failed, Thunderbird tries to guess the configuration, by trying common server names like imap.&lt;domain&gt;, smtp.&lt;domain&gt;, mail.&lt;domain&gt; etc., and, when a mail server answers, checking whether it supports SSL, STARTTLS and encrypted passwords (CRAM-MD5).</li>
- <li>Manual configuration<br>
- If guessing fails the user must manually enter the configuration information. Users can may also manually modify the account settings even if configuration information is successfully obtained by the methods described above.</li>
-</ul>
-<p>All the lookup mechanisms use the email address domain as base for the lookup. For example, for the email address <a class="moz-txt-link-abbreviated link-mailto" href="mailto:fred@example.com">fred@example.com</a> , the lookup is performed as (in this order):</p>
-<ol>
- <li><em>tb-install-dir</em>/isp/example.com.xml on the harddisk</li>
- <li>check for autoconfig.example.com</li>
- <li>look up of "example.com" in the ISPDB</li>
- <li>look up "MX example.com" in DNS, and for mx1.mail.hoster.com, look up "hoster.com" in the ISPDB</li>
- <li>try to guess (imap.example.com, smtp.example.com etc.)</li>
-</ol>
-<p>We may in the future add DNS SRV records as supported mechanism in the future, but we currently do not.</p>
-<h1 id="How_to_add_support_for_your_domain">How to add support for your domain</h1>
-<h2 id="Classification">Classification</h2>
-<p>If you are a big ISP (&gt; 100,000 users) providing email addresses solely under a few domains like "example.com" and "example.de", you may either submit the configuration to the ISPDB or set up a configuration server.<br>
- <br>
- If you support email aliases and the user's login name is not part of the email address (for example, users may have <a class="moz-txt-link-rfc2396E link-mailto" href="mailto:hero@example.com">"hero@example.com"</a> as email address, but the IMAP/POP/SMTP login name is neither "hero" nor <a class="moz-txt-link-rfc2396E link-mailto" href="mailto:hero@example.com">"hero@example.com"</a>, but "u67578"), you need to set up a configuration server, which does the email address -&gt; login name lookup.<br>
- <br>
- If you host customer domains, i.e. you are "hoster.com", but your customers have <a class="moz-txt-link-rfc2396E link-mailto" href="mailto:fred@flintstone.com">"fred@flintstone.com"</a> and <a class="moz-txt-link-rfc2396E link-mailto" href="mailto:louis@kent.com">"louis@kent.com"</a> as domains, with only a few users per domain, you need to set up a configuration server (or rely on DNS MX).<br>
- <br>
- If you are a small company installing Thunderbird on your employees' desktops, you can place a configuration file in the Thunderbird installation folder.</p>
-<h2 id="ISPDB">ISPDB</h2>
-<p>Database URL is <a class="moz-txt-link-rfc2396E link-https" href="https://live.mozillamessaging.com/autoconfig/v1.1/" title="https://live.mozillamessaging.com/autoconfig/v1.1/">&lt;https://live.mozillamessaging.com/autoconfig/v1.1/&gt;</a>, append domain name, e.g. <a class="moz-txt-link-rfc2396E link-https" href="https://live.mozillamessaging.com/autoconfig/v1.1/freenet.de" title="https://live.mozillamessaging.com/autoconfig/v1.1/freenet.de">&lt;https://live.mozillamessaging.com/autoconfig/v1.1/freenet.de&gt;</a>.<br>
- <br>
- Current process: File a bug in <a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Webtools&amp;component=ISPDB%20Database%20Entries&amp;op_sys=All&amp;rep_platform=All">Bugzilla</a>, Product "Webtools", Component "ISPDB Database Entries", with a configuration file that matches the requirements described below. Request review from bwinton, gozer or ben.bucksch.<br>
- <br>
- Future: add the configuration to the <a class="link-https" href="https://ispdb.mozillamessaging.com">ISPDB server app</a>.</p>
-<h2 id="Configuration_server_at_ISP">Configuration server at ISP</h2>
-<p>Given the email address <a class="moz-txt-link-rfc2396E link-mailto" href="mailto:fred@example.com">"fred@example.com"</a>, Thunderbird first checks &lt;<span class="external free"><a class="moz-txt-link-freetext external" href="http://autoconfig.example.com/mail/config-v1.xml?emailaddress=fred@example.com">http://autoconfig.example.com/mail/config-v1.1.xml?emailaddress=fred@example.com</a></span>&gt; and then <a class="moz-txt-link-rfc2396E external" href="http://example.com/.well-known/autoconfig/mail/config-v1.1.xml" title="http://example.com/.well-known/autoconfig/mail/config-v1.1.xml">&lt;http://example.com/.well-known/autoconfig/mail/config-v1.1.xml&gt;</a>.</p>
-<h3 id="Small_company">Small company</h3>
-<p>If you are a small company, you can put the XML configuration file on your web server, at URL <a class="moz-txt-link-rfc2396E external" href="http://example.com/.well-known/autoconfig/mail/config-v1.1.xml">&lt;http://example.com/.well-known/autoconfig/mail/config-v1.1.xml&gt;</a>. (This is not yet finalized and subject to change.)</p>
-<h3 id="Domain_hoster">Domain hoster</h3>
-<p>If you are an ISP that hosts domains for your customers - for example, you are hoster.com and your customer registers fancy.com or example.com, and your servers accept and serve the mail for example.com -, you should set up an autoconfig server.</p>
-<h4 id="DNS">DNS</h4>
-<p>For each customer domain, you add a DNS record (in addition to the existing MX, A www etc. DNS records):<br>
- <code>autoconfig IN A 10.2.3.4</code><br>
- or<br>
- <code>autoconfig IN CNAME autoconfig.hoster.com</code>.<br>
- ... where 10.2.3.4 and autoconfig.hoster.com are IP addresses / hostnames you own.<br>
- This allows Thunderbird to find you as hoster.</p>
-<p>To make the Version without an autoconfig DNS Entry work you have to make sure that example.com points to the Webserver you will place the config-v1.1.xml on.</p>
-<p>Example: <span style="font-family: 'Courier New', 'Andale Mono', monospace; line-height: normal;">example.com A 10.2.3.4</span></p>
-<h4 id="Web_server">Web server</h4>
-<p>You set up a web server bound to a physical IP address. This may be on the same machine as other web servers, but the web server must be configured to the content to any requested domain.<br>
- <br>
- You must use an virtual host that match all autoconfig.* domains of your customers. In Apache terms, you can use a "ip-based virtual host". In the Apache configuration files, that means something like: Listen 10.2.3.4:80 (of course, you use a public IP address that you own)</p>
-<pre>&lt;VirtualHost 10.2.3.4:80&gt; #Must be the first and only virtual host with this ip!
-    DocumentRoot /var/www/autoconfig/
-    ServerName autoconfig.hoster.com
- &lt;Directory /var/www/autoconfig&gt;
- Order allow,deny
- allow from all
-    &lt;/Directory&gt;
-&lt;/VirtualHost&gt;</pre>
-<p>Place the configuration file at the URL /mail/config-v1.1.xml on that host.</p>
-<p>All config files must be served as <code>Content-Type: text/xml</code> (or <code>application/xml</code>), otherwise the file will be ignored. Also, they must use charset UTF-8 (esp. if there are any non-ASCII-characters).</p>
-<p>If you like to use name-based virtual hosts. You probably don't want to setup the autoconfig subdomain for every domain of your customers.<br>
- You can add a Rewriterule in the default virtual host (on debian /etc/apache2/sites-enabled/000-default)  to match all autoconfig.* subdomains:</p>
-<pre>&lt;VirtualHost *:80&gt; #Must be the first Virtual host
- ServerAdmin webmaster@hoster.com
- ServerName www
- DocumentRoot /var/www
- RewriteEngine On
- RewriteCond %{HTTP_HOST} ^autoconfig\. [NC]
- RewriteRule ^/(.*) http://autoconfig.hoster.com/$1 [L,R=301,NE]
- #...
-&lt;/VirtualHost&gt;
-&lt;VirtualHost *:80&gt;
-    DocumentRoot /var/www/autoconfig/
-    ServerName autoconfig.hoster.com
- &lt;Directory /var/www/autoconfig&gt;
-  Order allow,deny
- allow from all
-    &lt;/Directory&gt;
-&lt;/VirtualHost&gt;
-</pre>
-<p> </p>
-<p> </p>
-<h2 id="Configuration_file">Configuration file</h2>
-<p>This is described at <a href="/en/Thunderbird/Autoconfiguration/FileFormat/HowTo" title="en/Thunderbird/Autoconfiguration/FileFormat/HowTo">How to create a configuration file</a> and <a href="/en/Thunderbird/Autoconfiguration/FileFormat/Definition" title="en/Thunderbird/Autoconfiguration/FileFormat/Definition">defined</a> on the sub-pages.</p>
-<p>{{ languages( { "ja": "ja/Thunderbird/Autoconfiguration" } ) }}</p>
diff --git a/files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/index.html b/files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/index.html
deleted file mode 100644
index 0873a7d1f2..0000000000
--- a/files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/index.html
+++ /dev/null
@@ -1,26 +0,0 @@
----
-title: Deploying Thunderbird in the Enterprise
-slug: Mozilla/Thunderbird/Deploying_Thunderbird_in_the_Enterprise
-tags:
- - Corporate
- - Corporation
- - NeedsTranslation
- - Thunderbird 3
- - TopicStub
- - enterprise
- - thunderbird
-translation_of: Mozilla/Thunderbird/Deploying_Thunderbird_in_the_Enterprise
----
-<p>These documents and references are provided to help those involved in deploying Thunderbird in large institutions. </p>
-<p>The documents are maintained primarily by volunteers and are a work in progress.  In other words, there are improvements and additions still be made, <strong>and you can help make those changes</strong>.  If you have skills, experience or information that will make these items better in small ways or large, please edit the documents directly, after <a href="/en-US/docs/Project:MDN/Contributing/Join_the_community#Create_an_MDN_account">creating an MDN account</a> or registering with <a class="link-https" href="https://wiki.mozilla.org/Thunderbird/Enterprise" title="https://wiki.mozilla.org/Thunderbird/Enterprise">mozilla wiki</a> if you don't already have an account.  You may also comment on the Talk page to note items that may be missing or inaccurate.</p>
-<p><strong>References</strong></p>
-<ul>
- <li><a href="/en/Thunderbird/Deploying_Thunderbird_in_the_Enterprise/Upgrading_Thunderbird_in_the_Enterprise" title="en/Thunderbird/Deploying Thunderbird in the Enterprise/Upgrading Thunderbird in the Enterprise">Upgrading Thunderbird in the Enterprise</a></li>
- <li><a href="/en/Thunderbird/Deploying_Thunderbird_in_the_Enterprise/Thunderbird_Preferences_Relevant_to_Enterprises" title="en/Thunderbird/Deploying Thunderbird in the Enterprise/Thunderbird Preferences Relevant to Enterprises">Thunderbird Preferences Relevant to Enterprises</a></li>
- <li><a href="/en/Thunderbird/Thunderbird_Enterprise_Tips" title="en/Thunderbird/Thunderbird_Enterprise_Tips">Thunderbird Enterprise Tips</a></li>
-</ul>
-<p><strong>Related information</strong></p>
-<ul>
- <li><a class="link-https" href="https://wiki.mozilla.org/Thunderbird/Enterprise" title="https://wiki.mozilla.org/Thunderbird/Enterprise">Enterprise community, deployment, articles and help documents, and news wiki</a></li>
-</ul>
-<p>{{ languages( { "ja": "ja/Thunderbird/Deploying_Thunderbird_in_the_Enterprise" } ) }}</p>
diff --git a/files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/upgrading_thunderbird_in_the_enterprise/index.html b/files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/upgrading_thunderbird_in_the_enterprise/index.html
deleted file mode 100644
index b067ae50fd..0000000000
--- a/files/zh-tw/mozilla/thunderbird/deploying_thunderbird_in_the_enterprise/upgrading_thunderbird_in_the_enterprise/index.html
+++ /dev/null
@@ -1,260 +0,0 @@
----
-title: 於企業內升級 Thunderbird
-slug: >-
- Mozilla/Thunderbird/Deploying_Thunderbird_in_the_Enterprise/Upgrading_Thunderbird_in_the_Enterprise
-translation_of: >-
- Mozilla/Thunderbird/Deploying_Thunderbird_in_the_Enterprise/Upgrading_Thunderbird_in_the_Enterprise
----
-<div>{{ draft }}</div>
-
-<p>這是一篇關於幫助大型組織使用 Thunderbird 升級到 3 版的升級手冊 (也可稱之為 "企業")。 這份初步草稿是從草稿作者知識庫摘要 auto-sync / offline settings (<a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=562589" rel="nofollow" title="Bug 562589 -- RESOLVED FIXED -- Thunderbird/Migration -- If I disable migration wizard I'm in situation where all IMAP -folders are set to download no matter what I do to account in question (Needs a way to keep offline-use setting upon migration to Tb 3, even if Migration Assistant is disabled on purpose)">bug 562589</a>) 與 Thunderbird 3 與管理者相關的搬遷問題 (<a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=562589#c7" rel="nofollow" title="timo.pietila@helsinki.fi -- I have to say that IMO you are breaking one of the very fundamental features of IMAP by forcing offline download to get benefit of _VERY MINOR_ email client function. Gloda is mino ...">bug 562589#c7</a>) (如同 2010/05/06).</p>
-
-<h2 id="背景">背景</h2>
-
-<p>此份搬遷手冊針對典型的企業環境做出一些假設:</p>
-
-<ul>
- <li>IMAP 帳戶與目錄。</li>
- <li>大型郵件檔。</li>
- <li>"漫遊配置檔" 或某些接近於共用 (以支援備份/復原與行動用戶)。</li>
-</ul>
-
-<p>(The above requirements may not be compatible with the fact that the new global search (Gloda) is enabled by default on upgrade and IMAP folder automatic synchronization is enabled by default on upgrade. This is discussed further below.)</p>
-
-<p>企業環境通常需要執行大規模軟件升級,而不是為個人用戶升級軟件,此升級目標也許會是:</p>
-
-<ul>
- <li>解決早期版本已存在的錯誤。</li>
- <li>為了改善穩定性與可靠性。</li>
- <li>為了改善效能。</li>
- <li>為了改善可用性。</li>
- <li>盡可能減少或者使用戶用戶培訓簡易。</li>
- <li>盡可能減少對於新軟體與更新後的軟體,人員所需要的人力支援。</li>
-</ul>
-
-<p>相關資訊:</p>
-
-<ul>
- <li><a href="/en-US/docs/Thunderbird/Deploying_Thunderbird_in_the_Enterprise/Thunderbird_Preferences_Relevant_to_Enterprises">Thunderbird Preferences Relevant to Enterprises</a></li>
- <li><a href="/en-US/docs/Thunderbird/Deploying_Thunderbird_in_the_Enterprise" title="Thunderbird/Deploying Thunderbird in the Enterprise">Other resources: Forums, How Tos, ....</a></li>
-</ul>
-
-<h2 id="遷移指南_(Thunderbird_2_升級到_Thunderbird_3.0)"><span class="mw-headline">遷移指南 (Thunderbird 2 升級到 Thunderbird 3.0) </span></h2>
-
-<p>The major changes in Thunderbird 3.0 that are relevant to enterprise administrators include:</p>
-
-<ul>
- <li>Gloda (Global Search and Indexer). Enabled by default.</li>
- <li>Auto-sync of IMAP folders. Enabled by default.</li>
- <li>Per-folder "offline use" setting of all IMAP folders is changed to "offline use=On" by default upon migration.</li>
- <li>"Smart Folders" is default folder pane view, even if "All Folders" is user's choice in Thunderbird 2.</li>
-</ul>
-
-<p>For more detailed information about the changes between Thunderbird 2 and Thunderbird 3, see:</p>
-
-<ul>
- <li><a class="external text" href="http://www.mozillamessaging.com/en-US/thunderbird/3.0/releasenotes/" rel="nofollow" title="http://www.mozillamessaging.com/en-US/thunderbird/3.0/releasenotes/">Thunderbird Release Notes</a></li>
- <li><a class="external text" href="/en-US/docs/Thunderbird_3_for_users" rel="nofollow" title="https://developer.mozilla.org/en/Thunderbird_3_for_users">Thunderbird 3 for users</a></li>
- <li><a class="external text" href="/en-US/docs/Thunderbird_3_for_developers" rel="nofollow" title="https://developer.mozilla.org/En/Thunderbird_3_for_developers">Thunderbird 3 for developers</a></li>
-</ul>
-
-<p>As a general rule, administrators should deal with the process of upgrading Thunderbird and enabling new features separately. That is, they should try to keep the user setup as similar as possible between Thunderbird 2 and 3 and wait until the Thunderbird 3 upgrade is complete and stable before enabling Thunderbird 3 features.</p>
-
-<h3 id="在遷移前,停用附加元件以進行安全升級"><span class="mw-headline">在遷移前,停用附加元件以進行安全升級</span></h3>
-
-<p>Problems due to add-on are known. For example;</p>
-
-<ul>
- <li><a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=533692" rel="nofollow" title="Bug 533692 -- RESOLVED FIXED -- Thunderbird/General -- Kaspersky Anti-Spam Extension causes blank main window on 2.0.0.23 to 3.0 upgrade">Bug 562589</a> Kaspersky Anti-Spam Extension causes blank main window on 2.0.0.23 to 3.0 upgrade</li>
- <li><a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=543076" rel="nofollow" title='Bug 543076 -- RESOLVED INVALID -- MailNews Core/Networking: IMAP -- TB 3.0.1 does not handle IMAP Attachments correctly (bug of "Attachment size" add-on or some others)'>Bug 543076</a> TB 3.0.1 does not handle IMAP Attachments correctly (bug of "Attachment size" add-on or some others)</li>
-</ul>
-
-<p>To avoid such unwanted problems due to add-ons, next upgrade procedure is recommended for safe migration.</p>
-
-<ol>
- <li>Start Tb 2 with -safe-mode to make all add-ons disabled before upgrade.</li>
- <li>Keep backup of profile directory before upgrade.</li>
- <li>If possible, do uninstall of Thunderbird 2 and clean install of Thunderbird 3, instead of upgrade by software update by Thunderbird 2, for both safe migration and reducing of network traffic.</li>
-</ol>
-
-<h3 id="停用遷移幫手"><span class="mw-headline">停用遷移幫手</span></h3>
-
-<p>Enterprise sites that perform mass upgrades generally want to prevent users from performing Thunderbird upgrades on their own. An upgrade dialogue in the Thunderbird Migration Assistant should be disabled.</p>
-
-<pre>lockPref("mail.ui.show.migration.on.upgrade",false);</pre>
-
-<h3 id="停用全域_(全域搜索與索引)_以避免遷移後的索引"><span class="mw-headline">停用全域 (全域搜索與索引) 以避免遷移後的索引</span></h3>
-
-<p>Initail purpose of Gloda was solution of of problem like <a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=383895" rel="nofollow" title='Bug 383895 -- NEW -- Thunderbird/Search -- Thunderbird Message Body/fulltext search or filter is painfully slow compared to Outlook on folders with lots of messages (both "quick search" and "search messages")'>Bug 383895</a> (slowness in body text search of local mail data). With enhancements and many improvements by Thuderbird 3 on auto-sync of IMAP folder, Gloda can be used also for IMAP folders very easily. So, gloda is very useful for everyday usage even for IMAP users: It can search messages very fast, much faster than an IMAP server can, and so notably increase productivity. Also, it will in the future have increased functionality in other areas.</p>
-
-<p>However, the new Thunderbird 3 search and index functionality initially impacts performance. (The indexer runs when Thunderbird 3 is first started and will continue to work until all the user's email is indexed. The more messages a user has, the longer the indexer will run.) Also, it uses diskspace on the client (about 1/2 (?) of mailbox size), which is a problem for roaming profiles.</p>
-
-<p>Gloda can be enabled by only single action after upgrade - check an option at Tools/Options/Advanced/General tab. So, to minimize user support workload after migration, we  recommend you to disable automatic enabling of Gloda durng migration by Thunderbird 3.</p>
-
-<blockquote>怎麼會? 可能嗎? 需要加強?</blockquote>
-
-<h3 id="停用自動同步,保持每個資料夾_離線使用_設定,以避免遷移後每個巨大的_IMAP_資料夾下載所有郵件"><span class="mw-headline">停用自動同步,保持每個資料夾 "離線使用" 設定,以避免遷移後每個巨大的 IMAP 資料夾下載所有郵件</span></h3>
-
-<p>Auto-sync of IMAP folders is enabled by default for all IMAP accounts. The per folder "offline use" setting of all IMAP folders is changed to "offline use=On" when Thunderbird 3 is launched the first time. To keep same settings as Thunderbird 2, disable the auto-sync and offline-use settings upon upgrade.</p>
-
-<p>完全停用自動同步 (auto-sync):</p>
-
-<pre>lockPref("mail.server.default.autosync_offline_stores", false);
-lockPref("mail.server." + serverFromAccount + ".autosync_offline_stores", false);
-</pre>
-
-<p>停用每個資料夾 "離線使用 (offline use)" 設定在遷移時設定變更 (Tb 3.0.5 到 Tb 3.1rc1):</p>
-
-<pre>lockPref("mail.server." + serverFromAccount + ".offline_download", false);
-</pre>
-
-<p>To disable per folder "offline use" setting change upon migration (Tb 3.1rc2 or later):</p>
-
-<pre>lockPref("mailnews.ui.show.migration.on.upgrade",false);
-</pre>
-
-<p>注意:</p>
-
-<ul>
- <li>mail.server.serverX.offline_download (default=true) of Tb 3.
- <ul>
- <li>When an IMAP folder is created or subscribed, set offline use=off if false, set offline use=on if true.<br>
- i.e. This setting is for default of offline use=on/off of an IMAP folder.</li>
- </ul>
- </li>
- <li>Enhancement of mail.server.serverX.offline_download=flase prior to upgrade to Tb 3(from Tb 3.0.5 to Tb 3.1rc1).
- <ul>
- <li>Upon first use of Tb 3, if mail.server.serverX.offline_download=false is set before upgrade, IMAP folder's "offline use" is not touched by Migration code of Tb 3 .</li>
- <li>It's enhanced by <a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=562589" rel="nofollow" title="Bug 562589 -- RESOLVED FIXED -- Thunderbird/Migration -- If I disable migration wizard I'm in situation where all IMAP -folders are set to download no matter what I do to account in question (Needs a way to keep offline-use setting upon migration to Tb 3, even if Migration Assistant is disabled on purpose)">bug 562589</a>. This enhancement is already landed on Tb3.1pre and Tb3.2pre, and the enhancement has been landed on Tb 3.0.5pre(As of 2010/5/10).</li>
- </ul>
- </li>
- <li>Above enhancement of mail.server.serverX.offline_download=false prior to migration of bug 562589 has been removed by Bug 569161.
- <ul>
- <li>Code which changes offline-use=on/off of IMAP folders upon migration is moved to Migration Assistant by <a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=569161" rel="nofollow" title="Bug 569161 -- VERIFIED FIXED -- Thunderbird/Migration -- New Migration Assistant does not honor Advanced IMAP Synchronization settings">bug 569161</a>. So, if Migration Assistant is disabled, offline-use setting of any IMAP folder is never touched upon migration to Tb 3.1 and Tb 3.2.</li>
- <li>Patch of bug 569161 is landed on Tb3.1rc2 and Tb3.2a1(As of 2010/06/07).</li>
- </ul>
- </li>
-</ul>
-
-<h4 id="在遷移後,如何啟用自動同步">在遷移後,如何啟用自動同步</h4>
-
-<p>Account Settings/Synchronization &amp; Disk Space</p>
-
-<ul>
- <li>[ ? ] Keep messages of this account on this computer</li>
-</ul>
-
-<p>Current behavior of UI for auto-sync setting.</p>
-
-<ul>
- <li>Unchecked-&gt;Checked
- <ol>
- <li>Set mail.server.serverX.offline_download=true</li>
- <li>Set offline use=on of all folders of the IMAP account</li>
- <li>Enable "Advanced" button to change offline-use setting of IMAP folders</li>
- </ol>
- </li>
- <li>Checked-&gt;Unchecked
- <ol>
- <li>Set mail.server.serverX.offline_download=false</li>
- <li>Set offline use=off of all folders of the IMAP account</li>
- <li>Disable "Advanced" button to change offline-use setting of IMAP folders</li>
- </ol>
- </li>
-</ul>
-
-<p>Note: There is a request for a design change in <a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=537943" rel="nofollow" title='Bug 537943 -- NEW -- Thunderbird/Folder and Message Lists -- "Advanced" button at Synchronization&amp;amp;Disk Space should be enabled even if mail.server.serverX.offline_download=false is set, and is better to be called "Folder Property Manager".'>bug 537943</a>.</p>
-
-<p>Gloda and auto-sync/offline-use are possibly independent, although relevant.</p>
-
-<ul>
- <li>"Download Now" button downloads mail to offline-use regardless of offline-use=On/Off.</li>
- <li>"Download Now" button seems to be intercepted and discarded if auto-sync is enabled and offline-use=On. It looks due to already started schedule based automatic downloading.</li>
- <li>Auto-sync automatically downloads mail data to offline-store if auto-sync is enabled and if offline-use=On is set in an IMAP folder.</li>
- <li>"Work Offline" automatcally downloads mail data to offline-store automatically, if per folder offline-use=On is set in an IMAP folder.</li>
- <li>Gloda indexes mail data in offline-store, if mail data is saved in offline-store, perhaps regardless of auto-sync is enabled/disabled and offline-use=On/Off and Working Online/Working Offline.</li>
-</ul>
-
-<h3 id="修改資料夾面板檢視從_聰明資料夾_為_所有資料夾"><span class="mw-headline">修改資料夾面板檢視從 "聰明資料夾 " 為 "所有資料夾" </span></h3>
-
-<p>By default, Thunderbird 3 displays "Smart Folders" in the folder pane. (Smart Folders combine the messages in similarly named folders in multiple accounts, for example grouping Inbox messages from all accounts into a single Inbox on the Smart Folder pane.) If you want to preserve the default Thunderbird 2 behavior of showing "All Folders", advice users to select <strong>View | Folders | All</strong> from the menu.</p>
-
-<p>Can "forcing Smart Folders view" upon migration be stopped? How? Is it possible? Enhancement is needed?</p>
-
-<p>Note: "Smart Folders" is renamed to "Unified Folders" by Tb 3.1, and Tb 3.1 won't force it upon migration from Tb2 any more.</p>
-
-<h2 id="注意事項">注意事項</h2>
-
-<h3 id="由自動配置_(autoconfig)_帳戶定義"><span class="mw-headline">由自動配置 (autoconfig) 帳戶定義</span></h3>
-
-<p>When new accounts are created, the new "autoconfig" functionality is automatically invoked. Unless users have the correct account definition parameters, it may be confusing for them to configure their own accounts (if this is permitted).</p>
-
-<h3 id="IMAP_資料夾檔案的位置"><span class="mw-headline">IMAP 資料夾檔案的位置</span></h3>
-
-<p>By default, the IMAP folder file is located in each user's profile directory. If the user is storing a lot of messages for off-line access, this can result in too much data for a roaming profile. Regardless of whether or not there is a roaming profile, there may be if the profile is located on a network resource or if Microsoft Window's Offline File (CSC) is used for the offline storage file.</p>
-
-<p>If that is the case, you have two options:</p>
-
-<p>If the Gloda search and index is mandatory for IMAP mail data:</p>
-
-<ol>
- <li>Locate mail directory for IMAP account at location with which remote/network access won't happen(e.g. "Local Settings" of MS Win)</li>
- <li>Enable auto-sync, and set offline use=on of IMAP folders.</li>
- <li>Accept download of all mails to any PC which uses the IMAP account.</li>
- <li>Accept per PC thread pane column setting of the IMAP accout.
- <ul>
- <li>
- <dl>
- <dt> </dt>
- </dl>
-
- <dl>
- <dd>As thread pane column setting is currently saved in .msf file, and as you selected folder location other than profile directory, data in .msf can not be shared among PCs, even when you use Roaming Profile.</dd>
- </dl>
- </li>
- </ul>
- </li>
-</ol>
-
-<p>When Gloda is not needed for IMAP mail data:</p>
-
-<ol>
- <li>Locate IMAP folder file at any place you want.</li>
- <li>Disable auto-sync, and/or set offline use=off of all IMAP folders.
- <ul>
- <li>
- <dl>
- <dt> </dt>
- </dl>
-
- <dl>
- <dd>As new feature of "Disk Cache for mail in IMAP folder of offline-use=off" is added to Tb 3, mail data of viewed mail is held in far larger Disk Cache than very small memory cache of Thunderbird 2. So, frequency of problem like "repeatedly downloaded big attachment data" is reduced very much compared to Thunderbird 2.</dd>
- </dl>
- </li>
- </ul>
- </li>
-</ol>
-
-<p>As Gloda is first solution of problem of <a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=383895" rel="nofollow" title='Bug 383895 -- NEW -- Thunderbird/Search -- Thunderbird Message Body/fulltext search or filter is painfully slow compared to Outlook on folders with lots of messages (both "quick search" and "search messages")'>Bug 383895</a> (slowness in body text search of local mail data), and as many IMAP servers have excellent body text search functionality, consider utilizing of online search first for IMAP mail data. If online search is usable, enabling of auto-sync/offline-use merely for Gloda can be avoided.</p>
-
-<h3 id="線上搜尋_IMAP_資料夾"><span class="mw-headline">線上搜尋 IMAP 資料夾</span></h3>
-
-<p>There is known with regards to online search (documented in <a class="external text" href="https://bugzilla.mozilla.org/show_bug.cgi?id=546925" rel="nofollow" title="Bug 546925 -- NEW -- Thunderbird/Search -- custom header search is non-functional ('Run search on server' of Edit/Find/Search Messages doesn't work any more)">Bug 546925</a> "Run search on server" of Edit/Find/Search Messages doesn't work). For now, users must use Quick Search or Virtual Folder (Saved Search folder) for online searches.</p>
-
-<h3 id="搜尋、自動同步、離線使用與_聰明資料夾"><span class="mw-headline">搜尋、自動同步、離線使用與 "聰明資料夾" </span></h3>
-
-<p>If IMAP folder of offline-use=off, full text search by Gloda won't work because of offline-use=off.</p>
-
-<p>And, if not all mails of IMAP folder of offline-use=on is downloaded into local offline-store file because of your setting for offline-store file size limitation, Gloda can't find not-downloaded mails of the IMAP folder.</p>
-
-<p>And, as "Smart Folder" is internally Virtual Folder(Saved Search Folder), a "Smart Folder" can be Virtual Folder with multiple search target folders in mixture of local mail folders, IMAP folders of offline-use=on(all mails are sync'ed), IMAP folders of offline-use=on(not all mails are sync'ed), and IMAP folders of offline-use=off.</p>
-
-<p>Never open bug at bugzilla.mozilla.org for "Search can't find my mail!" without sufficient checking of "what mail at what kind of folder is not hit by what kind of search at where", please.</p>
-
-<h2 id="遷移手冊_(Thunderbird_2_到_Thunderbird_3.1)"><span class="mw-headline">遷移手冊 (Thunderbird 2 到 Thunderbird 3.1) </span></h2>
-
-<p>(content needed)</p>
-
-<h2 id="遷移手冊_(Thunderbird_3.0_到_Thunderbird_3.1)"><span class="mw-headline">遷移手冊 (Thunderbird 3.0 到 Thunderbird 3.1) </span></h2>
-
-<p>(content needed)</p>
diff --git a/files/zh-tw/mozilla/thunderbird/index.html b/files/zh-tw/mozilla/thunderbird/index.html
deleted file mode 100644
index f0a48a2be0..0000000000
--- a/files/zh-tw/mozilla/thunderbird/index.html
+++ /dev/null
@@ -1,79 +0,0 @@
----
-title: Thunderbird
-slug: Mozilla/Thunderbird
-tags:
- - NeedsTranslation
- - TopicStub
- - thunderbird
-translation_of: Mozilla/Thunderbird
----
-<p><strong>Thunderbird</strong> is Mozilla's mail/messaging application. These pages document Thunderbird and also provide links to documentation about the <a href="/en-US/docs/tag/MailNews" title="tag/MailNews">MailNews</a> backend which is also used in other projects such as <a href="http://wiki.mozilla.org/Penelope">Eudora/Penelope</a>, <a href="http://www.seamonkey-project.org/">Seamonkey</a>, <a href="http://nkreeger.com/correo/">Correo</a>, etc.</p>
-<p>Thunderbird is Firefox's kid sibling, and is built on the same technical platform as the web browser. In development for many years, and currently one of the most popular open source email clients, it is used by millions of people around the world to bring together all their email accounts, newsgroup and feed reading in a familiar high-productivity environment.  (From early 2007 to early 2011 Thunderbird was developed by <a class="link-https" href="https://en.wikipedia.org/wiki/Mozilla_Messaging" title="https://en.wikipedia.org/wiki/Mozilla_Messaging">Mozilla Messaging</a>, a subsidiary that was owned by Mozilla.)</p>
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 class="Documentation" id="Documentation" name="Documentation">Documentation</h2>
- <dl>
- <dt>
- <a href="https://developer.mozilla.org/en-US/docs/Simple_Thunderbird_build" title="Simple Thunderbird build">Building Thunderbird</a></dt>
- <dd>
- Information about building Thunderbird with the <a href="/en-US/docs/comm-central" title="comm-central">comm-central</a> repository. There's also information about <a href="/en-US/docs/How_comm-central%27s_build_system_works" title="How_comm-central's_build_system_works">how comm-central works</a>, how the <a href="/en-US/docs/Mailnews_and_Mail_code_review_requirements" title="Mailnews and Mail code review requirements">review process works</a> and how to use the <a href="/en-US/docs/Using_the_Mozilla_symbol_server" title="Using the Mozilla symbol server">Mozilla symbol server</a> to help with debugging.</dd>
- <dt>
- <a href="/en-US/docs/MailNews_Protocols" title="MailNews_Protocols">MailNews Protocols</a></dt>
- <dd>
- Rough documentation about mail protocols..</dd>
- <dt>
- <a href="/en-US/docs/DB_Views_%28message_lists%29" title="DB_Views_(message_lists)">Database views</a></dt>
- <dd>
- Backend information about {{ Interface("nsIMsgDBView") }} and related interfaces..</dd>
- <dt>
- <a href="/en-US/docs/Thunderbird/Thunderbird_API_documentation" title="Thunderbird API documentation">Thunderbird API documentation</a></dt>
- <dd>
- Thunderbird API documentation</dd>
- <dt>
- <a href="/en-US/docs/Extensions/Thunderbird" title="Extensions/Thunderbird/">Extension documentation</a></dt>
- <dd>
- Tutorials and tips for building Thunderbird extensions</dd>
- <dt>
- <a href="/en-US/docs/Thunderbird/Thunderbird_Automated_Testing" title="Thunderbird Automated Testing">Automated Testing</a></dt>
- <dd>
- Details of Thunderbird's automated testing facilities</dd>
- <dt>
- <a href="/en-US/docs/Thunderbird/Thunderbird_in_the_Enterprise" title="Thunderbird in the Enterprise">Thunderbird in the Enterprise</a></dt>
- <dd>
- Help with deploying Thunderbird in large organizations</dd>
- </dl>
- <p><span class="alllinks"><a href="/en-US/docs/tag/Thunderbird" title="tag/Thunderbird">View All...</a></span></p>
- </td>
- <td>
- <h2 class="Community" id="Community" name="Community">Community</h2>
- <ul>
- <li>Support is handled at <a href="http://getsatisfaction.com/mozilla_messaging" title="http://getsatisfaction.com/mozilla_messaging">getsatisfaction</a>.</li>
- <li>Extensions questions are frequently discussed on the dev-apps-thunderbird group: {{ DiscussionList("dev-apps-thunderbird", "mozilla.dev.apps.thunderbird") }}</li>
- <li>Development discussion happens on the tb-planning mailing list:
- <ul>
- <li><a class="link-https" href="https://mail.mozilla.org/listinfo/tb-planning" title="https://mail.mozilla.org/listinfo/tb-planning">subscribe</a></li>
- <li><a class="link-https" href="https://mail.mozilla.org/pipermail/tb-planning/" title="https://mail.mozilla.org/pipermail/tb-planning/">archives</a></li>
- </ul>
- </li>
- <li><a href="http://forums.mozillazine.org/viewforum.php?f=50">Mozillazine forums</a></li>
- <li><a href="http://www.mozillamessaging.com/">Mozilla Messaging web page</a></li>
- <li><a class="link-irc" href="irc://irc.mozilla.org/thunderbird">#thunderbird on irc.mozilla.org</a> (for Users)</li>
- <li><a class="link-irc" href="irc://irc.mozilla.org/maildev">#maildev on irc.mozilla.org</a> (for Developers)</li>
- <li>a list of all <a href="http://wiki.mozilla.org/Thunderbird/CommunicationChannels" title="Thunderbird communication channels">Thunderbird communication channels</a></li>
- </ul>
- <h2 class="Tools" id="Tools" name="Tools">Tools</h2>
- <ul>
- <li><a href="http://ted.mielczarek.org/code/mozilla/extensiondev/">Extension developer's extension</a></li>
- <li><a href="/en-US/docs/DOM_Inspector" title="DOM_Inspector">DOM Inspector</a></li>
- </ul>
- <h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">Related Topics</h2>
- <ul>
- <li><a href="/en-US/docs/Extensions" title="Extensions">Extensions</a></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-<p> </p>
diff --git a/files/zh-tw/mozilla/thunderbird/thunderbird_extensions/index.html b/files/zh-tw/mozilla/thunderbird/thunderbird_extensions/index.html
deleted file mode 100644
index 4ce42f41a7..0000000000
--- a/files/zh-tw/mozilla/thunderbird/thunderbird_extensions/index.html
+++ /dev/null
@@ -1,135 +0,0 @@
----
-title: Thunderbird extensions
-slug: Mozilla/Thunderbird/Thunderbird_extensions
-tags:
- - Add-ons
- - Extensions
- - NeedsTranslation
- - TopicStub
- - thunderbird
-translation_of: Mozilla/Thunderbird/Thunderbird_extensions
----
-<div class="callout-box"><strong><a href="/en/Extensions/Thunderbird/Building_a_Thunderbird_extension" title="en/Building_a_Thunderbird_extension">Building a Thunderbird extension</a></strong><br>
-Step-by-step explanation on how to build an extension for Thunderbird.</div>
-
-<div>
-<p>{{AddonSidebar}}</p>
-The following documentation provides help for creating extensions for Mozilla's <a class="internal" href="/en/Thunderbird" title="En/Thunderbird">Thunderbird</a> email client. Although there are many similarities with <a href="/en/Extensions" title="en/Extensions">Firefox extensions</a> there are also some differences that may confound the starting developer.</div>
-
-<div><br>
-<strong>Please help!</strong> You can <a class="internal" href="/en/Extensions/Thunderbird/HowTos" title="en/Extensions/Thunderbird/HowTos">add a how-to</a> (a question or an answer or a code snippet), <a class="internal" href="/en/Extensions/Thunderbird/Useful_newsgroups_discussions" title="En/Extensions/Thunderbird/Useful newsgroups discussions">summarize and link to a relevant newsgroup discussion</a>, or create a tutorial. Need help? Contact <a class="internal" href="/User:jenzed" title="User:jenzed">jenzed</a>.</div>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 id="Documentation" name="Documentation"><a href="/Special:Tags?tag=Extensions&amp;language=en" title="Special:Tags?tag=Extensions&amp;language=en">Documentation</a></h2>
-
- <h3 id="Getting_started_with_Thunderbird">Getting started with Thunderbird</h3>
-
- <p>A brave, young developer wants to develop an add-on for Thunderbird. Here's a few links to help them through this journey.</p>
-
- <ul>
- <li>Start by reading the tutorial and learn how to<a class="internal" href="/en/Extensions/Thunderbird/Building_a_Thunderbird_extension" title="En/Building a Thunderbird extension"> build a Thunderbird extension</a> (Outdated, still talks about overlays and the add-on builder is no longer available but the tutorial has not been updated.)</li>
- <li>Read about the <a href="/en/Thunderbird/Main_Windows" title="Main Windows">main windows</a> so that you know what one means when they say « thread pane », « preview pane », and « folder pane ».</li>
-
- <li>Want to do some real stuff? See <a class="external" href="http://blog.xulforum.org/index.php?post/2011/03/14/Basic-MimeMessage-demo" title="http://blog.xulforum.org/index.php?post/2011/03/14/Basic-MimeMessage-demo">how to inspect a message</a> (demo add-on included!)</li>
- <li>Play with our other <a href="/en/Extensions/Thunderbird/Demo_Addon" title="Demo Addon">demo add-on</a> that exercises some more advanced Thunderbird-specific features</li>
- <li>Want to do even more stuff? Don't reinvent the wheel: steal functions from the <a class="link-https" href="https://github.com/protz/thunderbird-stdlib" title="https://github.com/protz/thunderbird-stdlib">thunderbird-stdlib</a> project (doc <a class="external" href="http://protz.github.com/thunderbird-stdlib/doc/symbols/_global_.html" title="http://protz.github.com/thunderbird-stdlib/doc/symbols/_global_.html">here</a>). Functions for dealing with messages (delete them, archive them, change their tags, etc.) are included.</li>
- <li>Haven't found what you're looking for? Read the <a class="internal" href="/en/Extensions/Thunderbird/HowTos" rel="internal" title="en/Extensions/Thunderbird/HowTos">Thunderbird how-tos</a>; they contain a lot of recipes for things extensions want to do.</li>
- <li>Still haven't managed to do what you wanted? See the list of all <a class="external" href="http://wiki.mozilla.org/Thunderbird/CommunicationChannels" title="http://wiki.mozilla.org/Thunderbird/CommunicationChannels">Thunderbird communication channels </a>so that you know where to ask when you get stuck :-).</li>
- <li>Feeling really brave? Read the source using a <a class="external" href="http://doxygen.db48x.net/comm-central/html/" title="http://doxygen.db48x.net/comm-central/html/">fancy interface</a>; you can often find tests that demonstrate how to do what you're trying to achieve.</li>
- </ul>
-
- <h3 id="The_Gloda_database">The Gloda database</h3>
-
- <p>Thunderbird has a subsystem called Gloda. Gloda stands for « Global Database », and creates Thunderbird-wide relations between objects. Gloda provides concepts such as Conversations, Messages, Identities, Contacts. All these concepts are related together: a Conversation contains Messages which are linked to Identities (<strong>from</strong> field, <strong>to</strong> field) which are themselves part of a Contact: indeed, a contact has multiple identities.</p>
-
- <p>Typical use cases for Gloda: find all messages whose subject matches [search term], find all messages from [person], find all messages in the same thread as [a given message], find all messages involving [person], etc. etc.</p>
-
- <p>Gloda is extremely powerful and is used heavily by add-ons such as <a class="link-https" href="https://addons.mozilla.org/en-US/thunderbird/addon/gmail-conversation-view/" title="https://addons.mozilla.org/en-US/thunderbird/addon/gmail-conversation-view/">Thunderbird Conversations</a>. Learn more about Gloda:</p>
-
- <ul>
- <li>an overview of <a href="/en/Thunderbird/gloda" title="Gloda">Gloda</a></li>
- <li>learn how to create <a href="/en/Thunderbird/Creating_a_Gloda_message_query" title="Creating a gloda message query">your first message query</a> and read the <a href="/en/Thunderbird/Gloda_examples" title="Gloda examples">gloda examples</a></li>
- <li>learn about the Gloda internals: <a href="/en/Thunderbird/Gloda_debugging" title="Gloda debugging">Gloda debugging</a>, <a href="/en/Thunderbird/Gloda_indexing" title="Gloda indexing">Gloda indexing</a></li>
- </ul>
-
- <h3 id="More_Thunderbird-specific_links">More Thunderbird-specific links</h3>
-
- <p>Some of these links may be wildly out of date, but they still provide valuable information on the codebase.</p>
-
- <ul>
- <li><a class="internal" href="/en/Extensions/Thunderbird/An_overview_of_the_Thunderbird_interface" title="En/Extensions/Thunderbird/An overview of the Thunderbird interface">An overview of Thunderbird components</a></li>
- <li><a class="internal" href="/en/Extensions/Thunderbird/Thunderbird_developer_reference_docs" title="en/Extensions/Thunderbird/Thunderbird developer reference docs">Developer reference docs</a>:
- <ul>
- <li><a class="internal" href="/en/Folders" title="En/Folders">Folder classes</a></li>
- <li><a class="internal" href="/en/DB_Views_(message_lists)" title="En/DB Views (message lists)">DB views (message list)</a></li>
- <li><a class="internal" href="/en/Message_Summary_Database" title="En/Message Summary Database">Message summary database</a></li>
- <li><a class="internal" href="/en/MailNews_Protocols" title="En/MailNews Protocols">MailNews protocols</a></li>
- <li><a class="internal" href="/En/MailNews_Filters" rel="internal" title="En/MailNews Filters">MailNews filters</a></li>
- <li><a class="internal" href="/en/Extensions/Thunderbird/Error_reporting_tools" title="en/Extension Library/Extensions/Thunderbird/Error reporting tools">Error reporting tools</a></li>
- <li><a href="/en/Toolkit_API/STEEL" title="en/Toolkit API/STEEL">STEEL library</a> (obsolete as of Thunderbird 52, use <a class="link-https" href="https://github.com/protz/thunderbird-stdlib" title="https://github.com/protz/thunderbird-stdlib">https://github.com/protz/thunderbird-stdlib</a>)</li>
- <li><a class="external" href="http://quetzalcoatal.blogspot.com/2010/01/developing-new-account-types-part-0.html" title="http://quetzalcoatal.blogspot.com/2010/01/developing-new-account-types-part-0.html">Developing new account types</a> <strong>NEW!</strong></li>
- </ul>
- </li>
- <li><a class="internal" href="/en/Extensions/Thunderbird/Useful_newsgroups_discussions" title="En/Extensions/Thunderbird/Useful newsgroups discussions">Useful newsgroup discussions</a> (watch out, anything that's too old should be regarded suspiciously; there's been significant API rewrite over the past years, and most of these techniques are considerably easier now) </li>
- <li><a href="/en/Thunderbird/Thunderbird_API_documentation" title="en/Thunderbird/Thunderbird API documentation">Thunderbird API docs</a> (mostly a collection of out-of-date pages, relevance is rather dubious) </li>
- <li><a href="/en/Mozilla/Thunderbird/Releases" title="Thunderbird developer release notes">Thunderbird developer release notes</a> - changes in the recent Thunderbird updates affecting add-on developers. <a href="/Thunderbird_5_for_developers" title="Thunderbird 5 for developers">Thunderbird 5 for developers</a> has important information on MsgHdrToMimeMessage which is a central piece of code.</li>
- </ul>
-
- <h3 id="General_links">General links</h3>
-
- <ul>
- <li><a href="/en/Extensions/Thunderbird/Finding_the_code_for_a_feature" title="en/Extensions/Thunderbird/Finding the code for a feature">Finding the code for a feature</a></li>
- <li><a class="external" href="http://kb.mozillazine.org/Category:Thunderbird" title="http://kb.mozillazine.org/Category:Thunderbird">Mozillazine articles on Thunderbird</a></li>
- <li><a href="/Special:Tags?tag=Thunderbird" title="https://developer.mozilla.org/Special:Tags?tag=Thunderbird">All pages tagged with Thunderbird</a></li>
- <li><a href="/Special:Tags?tag=MailNews" title="https://developer.mozilla.org/Special:Tags?tag=MailNews">All pages tagged with MailNews</a></li>
- </ul>
- </td>
- <td>
- <h2 id="Community" name="Community">Community</h2>
-
- <ul>
- <li>See the list of all <a class="external" href="http://wiki.mozilla.org/Thunderbird/CommunicationChannels" title="http://wiki.mozilla.org/Thunderbird/CommunicationChannels">Thunderbird communication channels </a>first</li>
- <li>Among these are:</li>
- </ul>
-
- <p>{{ DiscussionList("dev-extensions", "mozilla.dev.extensions") }}</p>
-
- <ul>
- <li><a class="link-irc" href="irc://moznet/#extdev">#extdev IRC channel</a> / <a class="link-irc" href="irc://moznet/#maildev">#maildev IRC channel</a></li>
- <li><a class="external" href="http://forums.mozillazine.org/viewforum.php?f=19">MozillaZine forum</a></li>
- <li><a class="external" href="http://mozdev.org/mailman/listinfo/project_owners">mozdev project owners</a></li>
- <li><a href="/en/Extensions/Community" title="en/Extensions/Community">Other community links...</a></li>
- </ul>
-
- <h2 id="Tools" name="Tools">Tools</h2>
-
- <ul>
- <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/6622" rel="external nofollow" title="https://addons.mozilla.org/en-US/firefox/addon/6622">DOM Inspector</a> edit the live DOM (Firefox and Thunderbird)</li>
- <li><a class="link-https" href="https://addons.mozilla.org/thunderbird/addon/workspace-for-thunderbird/" title="https://addons.mozilla.org/thunderbird/addon/workspace-for-thunderbird/">Workspace for Thunderbird</a>, allows running code snippets in Thunderbird and inspecting variable structure and content</li>
- <li><a class="external" href="http://www.hacksrus.com/~ginda/venkman/" rel="external nofollow" title="http://www.hacksrus.com/~ginda/venkman/">Venkman</a>, a JavaScript debugger (<a class="external" href="http://addons.mozilla.org/en-US/firefox/addon/216" rel="external nofollow" title="http://addons.mozilla.org/en-US/firefox/addon/216">Firefox</a>, <a class="external" href="http://addons.mozilla.org/en-US/thunderbird/addon/216" rel="external nofollow" title="http://addons.mozilla.org/en-US/thunderbird/addon/216">Thunderbird</a>)</li>
- <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/7434/" rel="external nofollow" title="https://addons.mozilla.org/en-US/firefox/addon/7434/">Extension Developer's Extension</a> a suite of development tools</li>
- <li><a class="external" href="http://www.gijsk.com/" rel="external nofollow" title="http://www.gijsk.com/">Chrome List</a> view files in chrome:// (<a class="external" href="http://addons.mozilla.org/en-US/firefox/addon/4453" rel="external nofollow" title="http://addons.mozilla.org/en-US/firefox/addon/4453">Firefox</a>, <a class="external" href="http://addons.mozilla.org/en-US/thunderbird/addon/4453" rel="external nofollow" title="http://addons.mozilla.org/en-US/thunderbird/addon/4453">Thunderbird</a>)</li>
- <li><a href="/en/Mozmill" title="en/Mozmill">Mozmill</a> test tool and framework</li>
- <li><a class="external" href="http://xpcomviewer.mozdev.org/" rel="external nofollow" title="http://xpcomviewer.mozdev.org">XPCOMViewer</a> an XPCOM inspector (Firefox and Thunderbird)</li>
- </ul>
-
- <p>... <a class="internal" href="/en/Setting_up_extension_development_environment#Development_extensions" title="en/Setting up extension development environment#Development extensions">more tools</a> ...</p>
-
- <p><span class="alllinks"><a href="/Special:Tags?tag=Extensions:Tools&amp;language=en" title="Special:Tags?tag=Extensions:Tools&amp;language=en">View All...</a></span></p>
-
- <h2 id="Related_Topics" name="Related_Topics">Related Topics</h2>
-
- <dl>
- <dd><a href="/en/XUL" title="en/XUL">XUL</a>, <a href="/en/JavaScript" title="en/JavaScript">JavaScript</a>, <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a>, <a href="/en/Themes" title="en/Themes">Themes</a>, <a href="/En/Developer_Guide" title="en/Developing_Mozilla">Developing Mozilla</a></dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p><span class="comment">Categories</span></p>
-
-<p>{{ languages( { "ja": "ja/Extensions/Thunderbird" } ) }}</p>
diff --git a/files/zh-tw/mozilla/thunderbird/thunderbird_extensions/theme_packaging/index.html b/files/zh-tw/mozilla/thunderbird/thunderbird_extensions/theme_packaging/index.html
deleted file mode 100644
index 9aeb61d94f..0000000000
--- a/files/zh-tw/mozilla/thunderbird/thunderbird_extensions/theme_packaging/index.html
+++ /dev/null
@@ -1,105 +0,0 @@
----
-title: 包裝佈景主題
-slug: Mozilla/Thunderbird/Thunderbird_extensions/Theme_Packaging
-tags:
- - Toolkit API
- - 佈景主題
-translation_of: Mozilla/Thunderbird/Thunderbird_extensions/Theme_Packaging
----
-<p>本文描述包裝 Firefox 及 Thunderbird 之<a href="zh_tw/%e4%bd%88%e6%99%af%e4%b8%bb%e9%a1%8c">佈景主題</a>的方法。</p>
-<h3 id=".E9.9C.80.E6.B1.82" name=".E9.9C.80.E6.B1.82">需求</h3>
-<p>製作 Firefox 或 Thunderbird 的佈景主題需要懂層疊樣式表(<a href="zh_tw/CSS">CSS</a>)、會一點 <a href="zh_tw/XBL">XBL</a>、還要有美術繪圖設計等能力(不過也不見得一定要)。本文只說明包裝佈景主題以便顯示於 Firefox 佈景主題視窗的方法。</p>
-<h3 id=".E4.BD.88.E6.99.AF.E4.B8.BB.E9.A1.8C.E6.AA.94.E6.A1.88.E6.9E.B6.E6.A7.8B" name=".E4.BD.88.E6.99.AF.E4.B8.BB.E9.A1.8C.E6.AA.94.E6.A1.88.E6.9E.B6.E6.A7.8B">佈景主題檔案架構</h3>
-<p>Firefox 及 Thunderbird 的佈景主題是一個將資料以下列結構包裝的 JAR 檔案:</p>
-<pre class="eval">theme.jar:
- install.rdf
- contents.rdf
- preview.png
- icon.png
- browser/<i>一堆檔案</i>
- global/<i>一堆檔案</i>
- mozapps/<i>一堆檔案</i>
- communicator/<i>一堆檔案</i>
- ...
-
-</pre>
-<ul>
- <li>最頂層必須有個 <a href="zh_tw/Chrome.manifest">chrome.manifest</a> 檔(適用於 Firefox 或 Thunderbird 1.5 以上)或 contents.rdf 來將佈景主題註冊到 chrome 中,另外還需要一個 <a href="zh_tw/Install.rdf">install.rdf</a> 清單記載佈景主題視窗中需要用到的資訊。</li>
- <li>preview.png 是佈景主題視窗中會出現的預覽圖,尺寸大小不限。</li>
- <li>icon.png 是 32x32 的 PNG 檔(可以有 alpha 半透明資訊),會出現於佈景主題視窗的佈景列表中。</li>
-</ul>
-<h3 id="install.rdf" name="install.rdf">install.rdf</h3>
-<p><a href="zh_tw/Install.rdf">install.rdf</a> 清單長得像這樣:</p>
-<pre class="eval"><span class="nowiki">&lt;?xml version="1.0"?&gt;
-
- &lt;RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:em="http://www.mozilla.org/2004/em-rdf#"&gt;
-
- &lt;Description about="urn:mozilla:install-manifest"&gt;
- &lt;em:type&gt;4&lt;/em:type&gt;
- ''其他特性''
- &lt;/Description&gt;
- &lt;/RDF&gt;</span>
-</pre>
-<h4 id=".E5.BF.85.E5.82.99.E7.89.B9.E6.80.A7" name=".E5.BF.85.E5.82.99.E7.89.B9.E6.80.A7">必備特性</h4>
-<p>install.rdf 檔中必須含有下列特性:</p>
-<ul>
- <li>em:id</li>
- <li>em:version</li>
- <li>em:type</li>
- <li>em:targetApplication</li>
- <li>em:name</li>
- <li>em:internalName</li>
-</ul>
-<p>詳細資訊請見 <a href="zh_tw/Install.rdf">install.rdf 參考</a>。</p>
-<h4 id=".E9.81.B8.E7.94.A8.E7.89.B9.E6.80.A7" name=".E9.81.B8.E7.94.A8.E7.89.B9.E6.80.A7">選用特性</h4>
-<ul>
- <li>em:description</li>
- <li>em:creator</li>
- <li>em:contributor</li>
- <li>em:homepageURL</li>
- <li>em:updateURL</li>
-</ul>
-<p>如果你想將佈景主題送上 <a class="external" href="http://addons.mozilla.org">addons.mozilla.org</a>,則 updateURL 就是必備的特性。</p>
-<h4 id=".E7.AF.84.E4.BE.8B" name=".E7.AF.84.E4.BE.8B">範例</h4>
-<pre class="eval"><span class="nowiki">&lt;?xml version="1.0"?&gt;
-
- &lt;RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:em="http://www.mozilla.org/2004/em-rdf#"&gt;
-
- &lt;Description about="urn:mozilla:install-manifest"&gt;
- &lt;em:id&gt;{18b64b56-d42f-428d-a88c-baa413bc413f}&lt;/em:id&gt;
- &lt;em:version&gt;1.0&lt;/em:version&gt;
- &lt;em:type&gt;4&lt;/em:type&gt;
-
- &lt;!-- 擴充套件的適用軟體,含最低需求及上限版本資訊。 --&gt;
- &lt;em:targetApplication&gt;
- &lt;Description&gt;
- &lt;em:id&gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&lt;/em:id&gt;
- &lt;em:minVersion&gt;0.8&lt;/em:minVersion&gt;
- &lt;em:maxVersion&gt;0.9&lt;/em:maxVersion&gt;
- &lt;/Description&gt;
- &lt;/em:targetApplication&gt;
-
- &lt;!-- 使用者會看到的資訊 --&gt;
- &lt;em:name&gt;New Theme 1&lt;/em:name&gt;
- &lt;em:description&gt;A test theme for Firefox&lt;/em:description&gt;
- &lt;em:creator&gt;Ben Goodger&lt;/em:creator&gt;
- &lt;em:contributor&gt;John Doe&lt;/em:contributor&gt;
- &lt;em:homepageURL&gt;http://www.bengoodger.com/&lt;/em:homepageURL&gt;
-
- &lt;!-- 佈景主題管理員內部所用的識別名稱 --&gt;
- &lt;em:internalName&gt;newtheme1&lt;/em:internalName&gt;
- &lt;/Description&gt;
- &lt;/RDF&gt;</span>
-</pre>
-<p>以下是幾個 targetApplication 特性常用的應用程式 GUID:</p>
-<pre class="eval">Firefox {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
-Thunderbird {3550f703-e582-4d05-9a08-453d09bdfdc6}
-Sunbird {718e30fb-e89b-41dd-9da7-e25a45638b28}
-</pre>
-<h3 id="Toolkit_API_.E5.AE.98.E6.96.B9.E5.8F.83.E8.80.83.E6.96.87.E4.BB.B6" name="Toolkit_API_.E5.AE.98.E6.96.B9.E5.8F.83.E8.80.83.E6.96.87.E4.BB.B6"><a href="zh_tw/Toolkit_API">Toolkit API</a> 官方參考文件</h3>
-<div>
- {{page("/zh-TW/docs/Toolkit_API/Official_References")}}</div>
-<div class="noinclude">
-  </div>